guoqing bakeup

This commit is contained in:
王庆刚
2024-10-04 12:12:44 +08:00
parent 09e92d63b3
commit 390c5d2d94
37 changed files with 1409 additions and 219 deletions

View File

@ -98,13 +98,10 @@ def read_imgs(imgspath, CamerType):
flist = file.split('_')
if len(flist)==4 and ext in ImgFormat:
camID, frmID = flist[0], int(flist[-1])
imgpath = os.path.join(imgspath, filename)
img = cv2.imread(imgpath)
if camID==CamerType:
img = cv2.imread(os.path.join(imgspath, filename))
imgs.append(img)
frmIDs.append(frmID)
if len(frmIDs):
indice = np.argsort(np.array(frmIDs))
imgs = [imgs[i] for i in indice]
@ -227,7 +224,7 @@ def do_tracking(fpath, savedir, event_name='images'):
'''4.2 在 imgs 上画框并保存'''
imgs_dw = draw_tracking_boxes(imgs, trackerboxes)
for fid, img in imgs_dw:
img_savepath = os.path.join(save_dir, CamerType + "_fid_" + f"{fid}.png")
img_savepath = os.path.join(save_dir, CamerType + "_fid_" + f"{int(fid)}.png")
cv2.imwrite(img_savepath, img)
'''4.3.2 保存轨迹选择对应的子图'''
@ -238,7 +235,7 @@ def do_tracking(fpath, savedir, event_name='images'):
x1, y1, x2, y2 = int(xyxy[0]/2), int(xyxy[1]/2), int(xyxy[2]/2), int(xyxy[3]/2)
subimg = img[y1:y2, x1:x2]
subimg_path = os.path.join(subimg_dir, f'{CamerType}_tid{int(tid)}_{int(fid-1)}_{int(bid)}.png' )
subimg_path = os.path.join(subimg_dir, f'{CamerType}_tid{int(tid)}_{int(fid)}_{int(bid)}.png' )
cv2.imwrite(subimg_path, subimg)
# for track in tracking_output_boxes:
# for *xyxy, tid, conf, cls, fid, bid in track:
@ -270,8 +267,9 @@ def tracking_simulate(eventpath, savepath):
# else:
# return
# =============================================================================
enent_name = os.path.basename(eventpath)[:15]
bname = os.path.basename(eventpath)
idx = bname.find('2024')
enent_name = bname[idx:(idx+15)]
'''2. 依次读取 0/1_track.data 中数据,进行仿真'''
illu_tracking, illu_select = [], []
@ -289,7 +287,9 @@ def tracking_simulate(eventpath, savepath):
if img_tracking is not None:
illu_tracking.append(img_tracking)
'''3. 前、后摄原始轨迹、本地tracking输出、现场算法轨迹选择前、后共幅8图'''
'''3. 共幅8图上下子图显示的是前后摄每一行4个子图分别为
(1) tracker输出原始轨迹; (2)本地tracking输出; (3)现场算法轨迹选择前轨迹; (4)现场算法轨迹选择后的轨迹
'''
if len(illu_select)==2:
Img_s = np.concatenate((illu_select[0], illu_select[1]), axis = 0)
H, W = Img_s.shape[:2]
@ -307,15 +307,15 @@ def tracking_simulate(eventpath, savepath):
Img_t = illu_tracking[0]
else:
Img_t = None
'''3.1 单独另存保存完好的 8 轨迹图'''
basepath, _ = os.path.split(savepath)
trajpath = os.path.join(basepath, 'trajs')
if not os.path.exists(trajpath):
os.makedirs(trajpath)
traj_path = os.path.join(trajpath, enent_name+'.png')
imgpath_tracking = os.path.join(savepath, enent_name + '_ing.png')
imgpath_select = os.path.join(savepath, enent_name + '_slt.png')
imgpath_ts = os.path.join(savepath, enent_name + '_ts.png')
@ -327,9 +327,9 @@ def tracking_simulate(eventpath, savepath):
cv2.imwrite(imgpath_ts, Img_ts)
cv2.imwrite(traj_path, Img_ts)
else:
if Img_s: cv2.imwrite(imgpath_select, Img_s)
if Img_t: cv2.imwrite(imgpath_tracking, Img_t)
if Img_s: cv2.imwrite(imgpath_select, Img_s) # 不会执行到该处
if Img_t: cv2.imwrite(imgpath_tracking, Img_t) # 不会执行到该处
@ -382,11 +382,13 @@ def main():
eventPaths: data文件地址该 data 文件包括 Pipeline 各模块输出
SavePath: 包含二级目录,一级目录为轨迹图像;二级目录为与data文件对应的序列图像存储地址。
'''
eventPaths = r'\\192.168.1.28\share\测试_202406\0723\0723_3'
# eventPaths = r'\\192.168.1.28\share\测试_202406\0723\0723_3'
eventPaths = r"D:\DetectTracking\tracking\images"
savePath = r'D:\contrast\dataset\result'
k=0
for pathname in os.listdir(eventPaths):
pathname = "20240723-163121_6925282237668"
pathname = "20240925-142635-3e3cb61a-8bbe-45f2-aed7-a40de7f2d624_6924743924161"
eventpath = os.path.join(eventPaths, pathname)
savepath = os.path.join(savePath, pathname)