提出问题
深度学习中常常会做大量的对比实验和消融实验,避免不了需要不停地进行图像对比分析、同时也存在例如目标检测后需要可视化标注的问题,这时候就在想?能不能有些工具简洁化这些耗时耗力的工作。答案现在是“肯定的”。
解决方法
废话不多说,先上小工具的链接。
(1)图像对比分析(showdata)
(2)图片可视化(alfred)
下面逐一介绍这两个小工具。
showdata工具
- 安装方法
pip install showdata
-
应用方式
(1)直接切换到需要影像显示的文件夹路径,运行命令:showdata server
命令运行后,会出现一个端口链接,复制到浏览器,打开即可。效果如下:
该显示结果便于深度学习推理结果进行查看和对比。
(2)以代码形式运行,并保存为.html格式查看。
from showdata import generate_html_table data = [ { "idx": 1, "label": 'cat', "img": { "src": "./visualize_base/536__1__0___0.jpg", "text": "The text will be shown on the top of the image", "style": "border: 2mm solid green" }, "mask": "./visualize_base/600__1__128___0.jpg" }, { "idx": 2, "label": 'dog', "img": './visualize_base/694__1__0___0.jpg', "mask": "./visualize_base/593__1__0___0.jpg" }, ] generate_html_table(data, output_path='index.html')
alfred工具
- 安装方法
sudo pip3 install alfred-py
-
应用方式
先介绍目前该工具具体的一些应用示例。可视化函数:画框;
可视化函数:画分割图,比如你拿到一个mask,给你画到图片上;
可视化函数:画实例分割图;
可视化函数:提供海量的颜色,加入你需要为你的每一个ID指定一个唯一的颜色,可以调用一个函数就实现;
可视化函数:花式画框,提供海量的函数供你调用,高度可定制化,可以实现多种不同分割的画框效果;
数据处理模块:可视化任意coco数据标注;
数据处理模块:可视化任意voc数据标注;
数据处理模块:可视化任意yolo数据标注;
数据处理模块:coco转换到yolo格式;
数据处理模块:coco转换到voc格式;
数据处理模块:voc转换到yolo格式;
数据处理模块:yolo转换到voc格式;
数据处理模块:合并两个voc格式,也就是同一批数据,分别标注了不同的类别,可以直接合并;
数据处理模块:切割一个coco数据,分为train和eval;
数据处理模块:切割一个voc数据集,分为train和eval或者更多;
数据处理模块:分割一个txt,按照比例分割成train eval等;
深度学习模块:提供pytorch的多个辅助函数,包括cuda检测,GPU打印;
深度学习模块:提供海量初始化方法;
...
(1)对VOC数据进行标注画框,结果如下:
alfred data vocview -i JPEGImages/ -l Annotations/
(2)其余功能不一一列出,这里再列举一个“爬虫”功能。
alfred scrap image -q '舰船'
以上代码可以爬取百度的关于“舰船”的图片,虽然有些不准,但确实能够实现爬虫。
文章评论