💪 专业从事且热爱图像处理,图像处理专栏更新如下👇:
📝《图像去噪》
📝《超分辨率重建》
📝《语义分割》
📝《风格迁移》
📝《目标检测》
📝《图像增强》
📝《模型优化》
📝《模型实战部署》
📝《图像配准融合》
📝《数据集》
📝《高效助手》
一、需求
在做深度学习训练的时候,自己用视频采集了数据集,后期一帧一帧提取出来,很多帧是重复的,这时候可以只选取某一部分作为训练用的数据集,比如我原始数据集中有80625张图片,如果不借助代码提取,太费人了,这里我总结两种方法快速提取。
二、实现
2.1 脚本批量快速提取
2.1.1 代码
直接用脚本大批量快速提取,比如我的是每隔30帧提取一张图像,代码见下:
import os
import shutil
## 新建目标文件夹
IsExists = os.path.exists('Images\Image_New_INF') ##在目录中新建一个文件夹
if not IsExists:
os.makedirs("Images\Image_New_INF")
else:
print("目录已存在")
new_img_folder = "Images\Image_New_INF"
## 遍历读取文件夹筛选符合标准的图片
dir_path = "Images/INF2022530" ## 将原始的数据集文件路径加载进来
for root,dirs,files in os.walk(dir_path):
for file in files:
num_name = file.rstrip(".jpg") ## 将图片名末尾的.jpg去掉
num_name_int = int(num_name)
if num_name_int % 30 == 0:
shutil.copy(os.path.join(root, file), new_img_folder)
2.1.2 效果展示
原始的数据集见下:
提取后的数据集见下:
以上是针对我自己的数据集提取的方法,大家可以参考我上面提供的代码进行修改,大致原理都是想通的,主要是运用到了os和shutil这两个库,提取速度特别快。
2.2 直接拉取法
这种方法简单粗暴,直接下滑到图片文件夹的最底端,单击鼠标左键选中某一列,按着鼠标不放,一直往上拖,直至滑到图片文件夹顶端,松开鼠标左键,按下Ctrl + C(复制),去到新建文件夹中Ctrl + V(粘贴),这样就直接将选定图片提取到新文件夹中了,具体见下。这种方法适合图片数量小的情况,图片数量大了,还是建议使用上面的方法,用脚本直接批量处理。
三、总结
以上就是在做深度学习时,快速批量将数据集中选取的指定图片移动到新文件中的方法,希望能帮到你!
感谢您阅读到最后!😊总结不易,多多支持呀🌹 点赞👍收藏⭐评论✍️,您的三连是我持续更新的动力💖
关注公众号「视觉研坊」,获取干货教程、实战案例、技术解答、行业资讯!