使用labelme制作自己的数据集


# python3 conda create
--name=labelme python=3.6 source activate labelme # conda install -c conda-forge pyside2 # conda install pyqt pip install pyqt5 # pyqt5 can be installed via pip on python3 pip install labelme

这是在anaconda下安装labelme

安装好后在cmd输入activate labelme激活labelme环境

在输入labelme运行程序

使用labelme制作自己的数据集_第1张图片

使用labelme制作自己的数据集_第2张图片

通过open读取文件,选择create polygons对想要的区域进行编辑

随后会生成如下文件:

使用labelme制作自己的数据集_第3张图片

找到labelme安装路径下的script,找到labelme_json_to_dataset.exe所在目录

将所有.json文件复制粘贴到这下面,并且在此目录下运行cmd,激活labelme,输入指令

python labelme_json_to_dataset.exe 图片文件.json

使用labelme制作自己的数据集_第4张图片

 即可获得一个图片文件.json的文件夹

使用labelme制作自己的数据集_第5张图片

 

对于每个json文件生成一个dataset(包含 img.png,info.yaml,label.png,label_names.txt, label_viz.png):

 使用labelme制作自己的数据集_第6张图片

其中json文件夹下的label.png为16位格式,要转化为8位 vs2015+opencv:

#include 
#include 
using namespace std;
using namespace cv;
int main(void) {
    char buff1[100];
    char buff2[100];
    for (int i = 1; i<51; i++) {
        sprintf_s(buff1, "C:/mypic/labelme_json/%d_json/label.png", i);
        sprintf_s(buff2, "C:/mypic/cv2_mask/%d.png", i);
        //sprintf(buff1,"/media/lj/FA68-10A6/test_drug/disp/disp_%d.png",i);
        //sprintf(buff2,"/media/lj/FA68-10A6/test_drug/disp_8/disp_%d.png",i);
        Mat src;
        //Mat dst;
        src = imread(buff1, CV_LOAD_IMAGE_UNCHANGED);
        Mat ff = Mat::zeros(src.rows, src.cols, CV_8UC1);
        for (int k = 0; k) {
            for (int kk = 0; kk) {
                int n = src.at<ushort>(k, kk);
                ff.at(k, kk) = n;
            }
        }
        //src.copyTo(dst);
        //imshow("haha",ff*100);
        //waitKey(0);
        imwrite(buff2, ff);
    }
    return 0;
}

不过我使用是这段代码时一直出错,后来有看到说新版的labelme直接生产8位的图片,只是表现为彩色而已

 

 使用labelme制作自己的数据集_第7张图片

打开图片的详细信息,确定为8位

 

 

 

 

 

 

转载于:https://www.cnblogs.com/roscangjie/p/10737053.html

你可能感兴趣的:(使用labelme制作自己的数据集)