CLI `fire` prep updates (#7229)

* CLI fire prep updates

* revert unintentional TF export change
pull/7230/head
Glenn Jocher 2022-03-31 17:11:43 +02:00 committed by GitHub
parent c3d5ac151e
commit 2c3221844b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 19 additions and 10 deletions

View File

@ -238,7 +238,7 @@ def parse_opt():
parser.add_argument('--dnn', action='store_true', help='use OpenCV DNN for ONNX inference')
opt = parser.parse_args()
opt.imgsz *= 2 if len(opt.imgsz) == 1 else 1 # expand
print_args(FILE.stem, opt)
print_args(vars(opt))
return opt

View File

@ -566,7 +566,7 @@ def parse_opt():
default=['torchscript', 'onnx'],
help='torchscript, onnx, openvino, engine, coreml, saved_model, pb, tflite, edgetpu, tfjs')
opt = parser.parse_args()
print_args(FILE.stem, opt)
print_args(vars(opt))
return opt

View File

@ -480,7 +480,7 @@ def parse_opt():
parser.add_argument('--dynamic', action='store_true', help='dynamic batch size')
opt = parser.parse_args()
opt.imgsz *= 2 if len(opt.imgsz) == 1 else 1 # expand
print_args(FILE.stem, opt)
print_args(vars(opt))
return opt

View File

@ -308,7 +308,7 @@ if __name__ == '__main__':
parser.add_argument('--test', action='store_true', help='test all yolo*.yaml')
opt = parser.parse_args()
opt.cfg = check_yaml(opt.cfg) # check YAML
print_args(FILE.stem, opt)
print_args(vars(opt))
device = select_device(opt.device)
# Create model

View File

@ -515,7 +515,7 @@ def parse_opt(known=False):
def main(opt, callbacks=Callbacks()):
# Checks
if RANK in [-1, 0]:
print_args(FILE.stem, opt)
print_args(vars(opt))
check_git_status()
check_requirements(exclude=['thop'])

View File

@ -92,7 +92,7 @@ def parse_opt():
parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu')
parser.add_argument('--half', action='store_true', help='use FP16 half-precision inference')
opt = parser.parse_args()
print_args(FILE.stem, opt)
print_args(vars(opt))
return opt

View File

@ -5,6 +5,7 @@ General utils
import contextlib
import glob
import inspect
import logging
import math
import os
@ -20,6 +21,7 @@ from itertools import repeat
from multiprocessing.pool import ThreadPool
from pathlib import Path
from subprocess import check_output
from typing import Optional
from zipfile import ZipFile
import cv2
@ -163,9 +165,15 @@ def methods(instance):
return [f for f in dir(instance) if callable(getattr(instance, f)) and not f.startswith("__")]
def print_args(name, opt):
# Print argparser arguments
LOGGER.info(colorstr(f'{name}: ') + ', '.join(f'{k}={v}' for k, v in vars(opt).items()))
def print_args(args: Optional[dict] = None, show_file=True, show_fcn=False):
# Print function arguments (optional args dict)
x = inspect.currentframe().f_back # previous frame
file, _, fcn, _, _ = inspect.getframeinfo(x)
if args is None: # get args automatically
args, _, _, frm = inspect.getargvalues(x)
args = {k: v for k, v in frm.items() if k in args}
s = (f'{Path(file).stem}: ' if show_file else '') + (f'{fcn}: ' if show_fcn else '')
LOGGER.info(colorstr(s) + ', '.join(f'{k}={v}' for k, v in args.items()))
def init_seeds(seed=0):
@ -346,6 +354,7 @@ def check_img_size(imgsz, s=32, floor=0):
if isinstance(imgsz, int): # integer i.e. img_size=640
new_size = max(make_divisible(imgsz, int(s)), floor)
else: # list i.e. img_size=[640, 480]
imgsz = list(imgsz) # convert to list if tuple
new_size = [max(make_divisible(x, int(s)), floor) for x in imgsz]
if new_size != imgsz:
LOGGER.warning(f'WARNING: --img-size {imgsz} must be multiple of max stride {s}, updating to {new_size}')

2
val.py
View File

@ -350,7 +350,7 @@ def parse_opt():
opt.data = check_yaml(opt.data) # check YAML
opt.save_json |= opt.data.endswith('coco.yaml')
opt.save_txt |= opt.save_hybrid
print_args(FILE.stem, opt)
print_args(vars(opt))
return opt