我使用opencv在图像上绘制矩形,并使用列表中给出的矩形的xmin,ymin,xmax,ymax值。
点数列表是
points = [(1707.0,1865.0,2331.0,2549.0),(1348.0,1004.0,1987.0,1746.0),(749.0,2129.0,1674.0,2939.0) ,(25.0,1134.0,1266.0,2108.0),(253.0,1731.0,1403.0,2449.0)]
image = cv2.imread("pathtoimage")
for point in points:
xmin,ymin,xmax,ymax = point
result_image = cv2.rectangle(image, (int(xmin), int(xmax)), (int(ymin),int(ymax)), (0,255,0), 8)
os.remove("/home/atul/Documents/CarLabel/imagemapping1-wp-BD489663-BD55-484E-9EA7-EB5662B626B9.png")
cv2.imwrite("/home/atul/Documents/CarLabel/imagemapping1-wp-BD489663-BD55-484E-9EA7-EB5662B626B9.png",result_image)
矩形相互重叠。 我该如何解决这个问题。
原始图片
产生的图像
答案 0 :(得分:0)
cv2.rectangle
需要左上角和右下角点的协调。所以你应该使用:
result_image = cv2.rectangle(image, (int(xmin), int(ymin)), (int(xmax),int(ymax)), (0,255,0), 8)