我正在尝试使用Python中的openCV来检测红色三角形和黄色三角形。我是一名初学者。使用Python中的openCV进行红色和黄色三角形检测
我想,一方面,检测,计数(黄色和红色),并用矩形标出相机可以看到的所有三角形。我也想找到他们的群众中心。
目前,我只是一次检测到一个单一的三角形而没有发现它的颜色。 我的质心的演算不能正常工作,给我的错误:
centroid_x = int(M['m10']/M['m00'])
ZeroDivisionError: float division by zero
我已经写了从实例灵感来自网络下面的代码
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
print cap.get(3)
print cap.get(4)
# changing display size
ret = cap.set(3,320)
ret = cap.set(4,240)
def getthresholdedimg(hsv):
yellow = cv2.inRange(hsv,np.array((10,100,100)),np.array((30,255,255)))
red = cv2.inRange(hsv,np.array((0,0,0)),np.array((190,255,255)))
both = cv2.add(yellow,red)
return both
def nothing(x):
pass
# Create a black image, a window