安徽网站优化好不好,怎么用手机免费下载1688视频,上传的网站打不开 index.asp,论坛企业推广这些天我忽然有个需求#xff0c;要更新迭代一个场景的检测模型#xff0c;甲方爸爸提供的新数据集是监控视频形式的(因为拍视频确实更加的方便)#xff0c;而我训练模型确实要标注好的图片形式。 根据这些条件的话#xff0c;思路应该是要这样的#xff1a;首先使用现有的… 这些天我忽然有个需求要更新迭代一个场景的检测模型甲方爸爸提供的新数据集是监控视频形式的(因为拍视频确实更加的方便)而我训练模型确实要标注好的图片形式。 根据这些条件的话思路应该是要这样的首先使用现有的最新一个模型输入视频进行检测检测结果以每帧图片的形式进行保存以及每帧图片对应的label。将图片和label用标注工具打开如labelme等进行可视化调整模型标注好的数据(这样比每张图片直接从0开始标注要快)再将这些标注好的数据加入之前的数据中进行训练。 保存图片形式
这个流程可能会有几处有些障碍一个是模型检测生成的label的yolo格式数据转化成labelme格式的数据以及调整好之后labelme格式的数据再转回yolo训练格式的数据这个问题的解决及对应的代码写在我之前的文章中另一个就是yolov5输入的是视频时输出的也同样是个视频且是带有检测结果的视频(带有实时检测框的视频)如图
而我们想要的是原图进行训练保存的是原图及对应的label。解决方法如下 在detect.py代码里的Process predictions中添加如下两行的代码
e_save os.path.splitext(save_path)[0] f_{frame} .jpg
cv2.imwrite(e_save, im0)运行结果如图 图片命名格式输入视频的名称后面加上帧数。
设置帧率 看了一下保存的图片会发现一个问题基本上每张图片会重复几十次。所以如果不是高速移动的目标的话每帧都保存会有大量几乎重复的图片每张都拿来训练是没必要的且浪费修改label的时间所以下面设置每隔几帧保存一次。 detect.py中前向推理部分的代码结构大概是这样的
for path, img, im0s, vid_cap in dataset:# ... 一些前期的代码 ...# 运行检测img torch.from_numpy(img).to(device)img img.float() # uint8 to fp16/32img / 255.0 # 0 - 255 to 0.0 - 1.0if img.ndimension() 3:img img.unsqueeze(0)# ... 一些中间的代码可能有模型推理的部分 ...# 后处理# ...# 在这里添加代码确保只在每25帧执行检测if vid_path:current_frame 1if current_frame % 25 0:# 执行你的检测代码# ...# ... 一些后期的代码 ...运行结果如图 这样就减少了很多重复图片。 写在最后 我觉得csdn是一个能学到技术的地方那是因为很多大佬的无私奉献。我的每一条博文都是粉丝才可见若是你们看了觉得我不值得你们关注取关无可厚非。但是为什么就是有很多人收藏了我的博文然而又取消关注呢我觉得让我很不舒服我希望各位看管都是高素质人群尊重一下创作者辣不然越来越多这样的行为会打击分享技术的积极性谢谢