def demo(opt): result_root = opt.output_root if opt.output_root != '' else '.' mkdir_if_missing(result_root) logger.info('Starting tracking...') assert osp.exists(opt.input_video), f'{opt.input_video} does NOT exist !' file_name, file_ext = osp.splitext(opt.input_video) if file_ext in ['.mp4', 'avi']: dataloader = datasets.LoadVideo(opt.input_video, opt.img_size) else: dataloader = datasets.LoadImages(opt.input_video, opt.img_size) dataloader.frame_rate = int(round(opt.frame_rate)) result_filename = os.path.join(result_root, 'results.txt') frame_rate = dataloader.frame_rate frame_dir = None if opt.output_format == 'text' else osp.join( result_root, 'frame') eval_seq(opt, dataloader, 'mot', result_filename, save_dir=frame_dir, show_image=False, frame_rate=frame_rate, use_cuda=opt.gpus != [-1]) if opt.output_format == 'video': output_video_path = osp.join(result_root, 'MOT16-03-results.mp4') frame_path = osp.join(result_root, 'frame') cmd_str = f'ffmpeg -framerate {opt.frame_rate} -f image2 -i {frame_path}/%05d.jpg -b 5000k -c:v mpeg4 {output_video_path}' os.system(cmd_str)
def demo(opt): result_root = opt.output_root if opt.output_root != '' else '.' mkdir_if_missing(result_root) logger.info('Starting tracking...') dataloader = datasets.LoadVideo(opt.input_video, opt.img_size) result_filename = os.path.join(result_root, 'results.txt') frame_rate = dataloader.frame_rate frame_dir = None if opt.output_format == 'text' else osp.join( result_root, 'frame') eval_seq(opt, dataloader, 'mot', result_filename, save_dir=frame_dir, show_image=False, frame_rate=frame_rate, use_cuda=opt.gpus != [-1]) if opt.output_format == 'video': output_video_path = osp.join(result_root, 'MOT16-03-results.mp4') cmd_str = 'ffmpeg -f image2 -i {}/%05d.jpg -b 5000k -c:v mpeg4 {}'.format( osp.join(result_root, 'frame'), output_video_path) os.system(cmd_str)
def demo(opt): result_root = opt.output_root if opt.output_root != "" else "." mkdir_if_missing(result_root) logger.info("Starting tracking...") dataloader = datasets.LoadVideo(opt.input_video, opt.img_size) result_filename = os.path.join(result_root, "results.txt") frame_rate = dataloader.frame_rate frame_dir = None if opt.output_format == "text" else osp.join( result_root, "frame") eval_seq( opt, dataloader, "mot", result_filename, save_dir=frame_dir, show_image=False, frame_rate=frame_rate, ) if opt.output_format == "video": output_video_path = osp.join(result_root, "result.mp4") cmd_str = "ffmpeg -f image2 -i {}/%05d.jpg -b 5000k -c:v mpeg4 {}".format( osp.join(result_root, "frame"), output_video_path) os.system(cmd_str)
def demo(opt): result_root = opt.output_root if opt.output_root != '' else '.' print('OPT: {}'.format(opt.input_video)) mkdir_if_missing(result_root) logger.info('Starting tracking...') dataloader = datasets.LoadVideo(opt.input_video, opt.img_size) result_filename = os.path.join(result_root, 'results.txt') frame_rate = dataloader.frame_rate frame_dir = None if opt.output_format == 'text' else osp.join( result_root, 'frame') try: eval_seq(opt, dataloader, 'mot', result_filename, save_dir=frame_dir, show_image=True, frame_rate=frame_rate) except Exception as e: logger.info(e) if opt.output_format == 'video': output_video_path = osp.join(result_root, 'result.mp4') cmd_str = 'ffmpeg -f image2 -i {}/%05d.jpg -b 5000k -c:v mpeg4 {}'.format( osp.join(result_root, 'frame'), output_video_path) os.system(cmd_str)
def demo(opt): result_root = opt.output_root if opt.output_root != '' else '.' mkdir_if_missing(result_root) file_name = osp.basename(opt.input_video).split('.')[0].replace(' ', '_') model_name = osp.basename(opt.load_model).split('.')[0] base_name = f'{file_name}_{model_name}_{opt.conf_thres}' logger.info('Starting tracking...') logger.info(f'Working on: {opt.input_video}') dataloader = datasets.LoadVideo(opt.input_video, opt.img_size) result_filename = os.path.join(result_root, f'{base_name}_results.txt') frame_rate = dataloader.frame_rate frame_dir = None if opt.output_format == 'text' else osp.join( result_root, f'{file_name}-frames') eval_seq(opt, dataloader, 'kitti', result_filename, save_dir=frame_dir, show_image=False, frame_rate=frame_rate) if opt.output_format == 'video': output_video_path = osp.join(result_root, f'{base_name}_result.mp4') cmd_str = 'ffmpeg -f image2 -i {}/%05d.jpg -b 5000k -c:v mpeg4 {}'.format( osp.join(result_root, f'{file_name}-frames'), output_video_path) os.system(cmd_str)
def recogniton(opt): print("start tracking") if opt.input_stream == '': dataloader = datasets.LoadVideo(opt.input_camera, opt.img_size) else: dataloader = datasets.LoadVideo(opt.input_stream, opt.img_size) frame_rate = dataloader.frame_rate if opt.save: result_root = opt.output_root if opt.output_root != '' else '.' mkdir_if_missing(result_root) result_filename = os.path.join(result_root, 'results.txt') frame_dir = None if opt.output_format == 'text' else os.path.join( result_root, 'frame') eval_seq(opt, dataloader, 'mot', result_filename, save_dir=frame_dir, show_image=opt.show, frame_rate=frame_rate, use_cuda=opt.gpus != [-1]) else: eval_seq(opt, dataloader, 'mot', show_image=opt.show, frame_rate=frame_rate, use_cuda=opt.gpus != [-1])
def demo(opt): paths = pickle.load(open(opt.paths_pkl, 'rb')) gpu_list = opt.custom_gpus.split(',') if opt.range[1] == -1: opt.range[1] = len(paths) tasks = paths[opt.range[0]:opt.range[1]] to_del_list = [] for idx, path in enumerate(tasks): video_name = osp.splitext(osp.split(path)[1])[0] result_root = opt.output_root if opt.output_root != '' else '.' result_filename = os.path.join(result_root, '%s.txt' % video_name) if os.path.exists(result_filename): to_del_list.append(idx) deleted_tasks = [ tasks[idx] for idx in range(len(tasks)) if idx not in to_del_list ] opt.range[0] = 0 opt.range[1] = len(deleted_tasks) if len(gpu_list) > 1: pickle.dump(deleted_tasks, open('cache.pkl', 'wb')) opt.paths_pkl = 'cache.pkl' multiproc(opt, gpu_list, len(deleted_tasks)) else: for idx, path in enumerate(deleted_tasks): video_name = osp.splitext(osp.split(path)[1])[0] result_root = opt.output_root if opt.output_root != '' else '.' mkdir_if_missing(result_root) result_filename = os.path.join(result_root, '%s.txt' % video_name) if os.path.exists(result_filename): continue # logger.info('Starting tracking...') # dataloader = datasets.LoadVideo(opt.input_video, opt.img_size) dataloader = datasets.LoadVideo(path, opt.img_size) frame_rate = dataloader.frame_rate frame_dir = None if opt.output_format == 'text' else osp.join( result_root, 'frame') eval_seq(opt, dataloader, 'mot', result_filename, save_dir=frame_dir, show_image=False, frame_rate=frame_rate, tasks_num=len(deleted_tasks), idx=idx)
def recogniton(): result_root = opt.output_root if opt.output_root != '' else '.' mkdir_if_missing(result_root) print("start tracking") dataloader = datasets.LoadVideo(0, opt.img_size) result_filename = os.path.join(result_root, 'results.txt') frame_rate = dataloader.frame_rate frame_dir = None if opt.output_format == 'text' else os.path.join( result_root, 'frame') eval_seq(opt, dataloader, 'mot', result_filename, save_dir=frame_dir, show_image=True, frame_rate=frame_rate)
def demo(opt): result_root = opt.output_root if opt.output_root != '' else '.' mkdir_if_missing(result_root) logger.info('Starting tracking...') dataloader = datasets.LoadVideo(opt.input_video, opt.img_size) result_filename = os.path.join(result_root, 'results.txt') frame_rate = dataloader.frame_rate frame_dir = None if opt.output_format == 'text' else osp.join( result_root, 'frame') eval_seq(opt, dataloader, 'mot', result_filename, save_dir=frame_dir, show_image=False, frame_rate=frame_rate)