caffe:製作數據集遇到的問題

**

問題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
done

解釋一下${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}
done

2.不保持比例縮放:

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

問題4 :如何生成groundtruth 圖片?

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

//Ubuntu 14.04 / Ubuntu 16.04
// Python2
//sudo apt-get install python-qt4  # PyQt4
sudo apt-get install python-pyqt5  # PyQt5
sudo pip install labelme
// Python3
sudo apt-get install python3-pyqt5  # PyQt5
sudo pip3 install labelme

2) labelme 標註,保存生成.json 文件

3)生成dataset 文件夾:

labelme_json_to_dataset 你的路徑/你的json文件名.json //這裏的文件名根據自己的實際情況更改

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

這是一個bug:lableme 標註的圖片,標籤與顏色不一致,如下圖,沒有找到解決辦法,有辦法的同學請私信我:
這裏寫圖片描述

把彩色圖片轉化爲灰度圖:convert image.jpg -colorspace Gray image-bw.jpg

先寫到這裏。。。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章