YOLO v3训练自己的数据(肺结节的二分类)

代码参考网址:https://github.com/wizyoung/YOLOv3_TensorFlow

要熟悉VOC2007数据格式,Labelimg标注工具。我可能有很多废步骤。

一、测试原文件

将yolov3.weights权重文件放入H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\data\darknet_weights文件夹中,命令行进入H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3并运行

python convert_weight.py

。之后就可以用

python test_single_image.py ./data/demo_data/messi.jpg

测试图片了。如下

二、图像标注

将VOC2007数据集中的VOCDevkit2007文件夹放在H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\data目录下,在其中的JPEGImages文件夹下放入自己的结节图像。采用labelimg来标注该结节图像,命名为nodule类。删除原Annotations文件夹下的xml文件,将自己标注的文件放入其中。修改Layout、Main、Segmentation中的各个txt文件,txt文件为你的图像名称,我这三个文件夹都复制的相同的txt文件。

三、转换VOC2007标注格式

YOLOv3_TensorFlow-master_3文件夹下新建voc_names.txt文件,里面写入自己的类别名称(nodule)。打开YOLOv3_TensorFlow-master_3\misc文件夹下的parse_voc_xml.py文件。第8行改为绝对路径,删除15行,删除17、18、21行中的VOC2012文件路径。最后运行该程序,程序运行成功在H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\misc文件中会有train.txt,val.txt两个文件.将这两个文件复制进./data/my_data/文件夹下,并在该文件夹下将train.txt中的几行拿出来构造test.txt,再将train.txt,val.txt,test.txt复制进H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3目录中。

三、类别名称修改

将voc_names.txt复制进H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\data\my_data文件夹下,修改名称为data.names。将voc_names.txt复制进H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\data文件夹下,修改名称为coco.names,将原来的文件覆盖。将voc_names.txt复制进H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\misc\experiments_on_voc中,修改名称为voc.names,覆盖原文件。

四、修改yolo_anchors.txt

命令行H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3下运行

python get_kmeans.py

用得到的值替换H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\data\yolo_anchors.txt的值。

五、训练

命令行H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3下运行

python train.py

训练时候确认类别为二分类,这样是错的,

YOLO v3训练自己的数据(肺结节的二分类)_第1张图片

应该为

六、测试模型

将H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\checkpoint文件夹下选一个训练的模型文件放进H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3\data\darknet_weights文件夹中,并重命名为yolov3.ckpt。进入H:\medical_python\lungcancer\YOLOv3_TensorFlow-master_3命令行,测试自己的图片。

YOLO v3训练自己的数据(肺结节的二分类)_第2张图片

 

你可能感兴趣的:(医学图像处理)