重叠的

时间:2018-05-23 09:10:19

标签: python opencv image-processing

我使用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)

矩形相互重叠。 我该如何解决这个问题。

原始图片

enter image description here

产生的图像

enter image description here

1 个答案:

答案 0 :(得分:0)

cv2.rectangle需要左上角右下角点的协调。所以你应该使用:

result_image = cv2.rectangle(image, (int(xmin), int(ymin)), (int(xmax),int(ymax)), (0,255,0), 8)