用Faster RCNN训练数据,手动标注好辛苦,好在我的数据是二值的,找到对应的像素值为255的(x_min,y_min,x_max,y_max)然后替换xml中的对应值就好了
首先要有一个VOC2007格式的xml文件,在这个基础上进行修改
学python的日子加起来不超过24小时,编这个小程序花了一天的时间,希望有个好结果。加油
# get the gt's x_min,y_min,x_max,y_max and replace the xml's values
# first traverse the image to find the pixel==255's position
# second find the x_min,y_min,x_max,y_max
# third read the xml file and replace the values
# by LYS 6/28/2017
from PIL import Image,ImageDraw
import xml.etree.cElementTree as ET
import os
# according to the image's path to locate the position
def get_positions(image_path):
im = Image.open(image_path).convert('L')#open the image and convert to gray image
draw = ImageDraw.Draw(im)
width = im.size[0]
height = im.size[1]
x = []
y = []
for w in range(0, width):
for h in range(0, height):
pixel &