import numpy as np
import cv2
i=0
for i in range(16):
img = cv2.imread("./datas/output/161_"+str(i)+"/161_"+str(i)+"_i.png")
mask_p = cv2.imread("./datas/output/161_"+str(i)+"/161_"+str(i)+"_p.png",0)#0,255
mask_t = cv2.imread("./datas/output/161_"+str(i)+"/161_"+str(i)+"_t.png",0)#0,1
# mask中物体1的像素值为1,设定像素范围来获取所有坐标
upper1=mask_t<2
lower1=mask_t>0
thresh1=(np.multiply(upper1,lower1).astype(np.float32)*255).astype(np.uint8)
# mask中物体2的像素值为255,设定像素范围来获取所有坐标
upper2=mask_p<256
lower2=mask_p>254
thresh2=(np.multiply(upper2,lower2).astype(np.float32)*255).astype(np.uint8)
#lunkuo
contours1, hierarchy1 = cv2.findContours(thresh1, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours2, hierarchy2 = cv2.findContours(thresh2, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
#save
cv2.drawContours(img, contours1, -1, (0,255,0), 1)#(255,0,0,B),0,255,0G,0,0,255,R
cv2.drawContours(img, contours2, -1, (0,0,255), 1)
cv2.imwrite("./datas/output/161_"+str(i)+".bmp",img)
print(i)
红色事预测值,绿色是真标签。