为了账号安全,请及时绑定邮箱和手机立即绑定

caffe:制作数据集遇到的问题

标签:
Cocos2d-x

问题1: 语义分割的groundtruth是一个灰度图片,如何把它作为label来用?**

1)可制作两个lmdb文件,一个Data项是原始图像,Label可为0,另一个Data项为分割后的标注图像,Label为0。使用中caffe是支持多个lmdb输入的。 
2)将原始图像(如3通道),标注图像(1通道),合在一起成4通道,然后写在一个lmdb中,然后导入后使用Slice层将其切开。这种方法就不能直接使用现有的convert_imageset来转换了,可参考其实现自己写一下。

这个问题没有彻底解决,对image 和label 生成两个lmdb,我没有找到如何使用的方法,待后续了。。。


问题2:如何批量把.jpg 转化为 .png 或者其他格式?

使用imagemagic 即可解决:用linux脚本处理

for file in *.png    do convert $file ${file%%.*}.jpg
done123

解释一下${file%%.*}的用法:${name%%word} 从name的尾部开始删除与word匹配的最长部分,然后返回剩余部分 
当然也可以写成一行:for file in *.png; do convert $file ${file%%.*}.jpg;done


问题3:如何批量修改图片大小?

方法类似于问题2 
1.保持比例缩放

for  file in *.jpg    do convert -resize 600x600   ${file}   ${file}
done123

2.不保持比例缩放:

for  file in *.jpg    do convert -resize 600x600!   ${file}   ${file}
done123

问题4 :如何生成groundtruth 图片?

1) 安装 labelme (https://github.com/wkentaro/labelme

//Ubuntu 14.04 / Ubuntu 16.04// Python2
//sudo apt-get install python-qt4  # PyQt4sudo apt-get install python-pyqt5  # PyQt5sudo pip install labelme
// Python3sudo apt-get install python3-pyqt5  # PyQt5sudo pip3 install labelme12345678

2) labelme 标注,保存生成.json 文件

3)生成dataset 文件夹:

labelme_json_to_dataset 你的路径/你的json文件名.json //这里的文件名根据自己的实际情况更改1

即可得到一个文件夹,有四个文件,*.png, info.yaml , label.png, label_viz.png。 其中label.png即是我们要的label_data.

这是一个bug:lableme 标注的图片,标签与颜色不一致,如下图,没有找到解决办法,有办法的同学请私信我: 
这里写图片描述

把彩色图片转化为灰度图:convert image.jpg -colorspace Gray image-bw.jpg

先写到这里。。。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 1
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消