0
数字下面是我的代码类型错误:为了论证“颜色”,标量值是不是在OpenCV中
im = cv2.imread('luffy.jpg')
gray = cv2.cvtColor(im,cv2.COLOR_BGR2GRAY)
ret,thresh = cv2.threshold(gray,127,255,0)
contours,h = cv2.findContours(thresh,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
for cnt in contours:
moment = cv2.moments(cnt)
c_y = moment['m10']/(moment['m00']+0.01)
c_x = moment['m01']/(moment['m00']+0.01)
centroid_color = im[c_x,c_y]
centroid_color = np.array((centroid_color[0],centroid_color[1],centroid_color[2]))
print type(centroid_color)
cv2.fillPoly(im,cnt,centroid_color)
我收到的最后一行,我尝试过centroid_color到色彩的说法是错误。这是<type 'numpy.ndarray'>
,我已经能够在这个数据类型成功地传递到cv2.fillPoly在其他情况下的颜色,所以我不知道为什么它是这里有问题。
生病检查一出。把CNT括号内并没有改变/修复错误 – BigBoy1337
我看到,有什么不对的'centroid_color'。 (int(centroid_color [0]),int(centroid_color [1]),int(centroid_color [2])))'np.array –