如何在OpenCV for Python中使用OpenCL?
我创建了一个简单的人脸检测程序,它使用Haar Cascade来检测人脸。我的代码如下:如何在OpenCV for Python中使用OpenCL?,python,opencv,opencl,Python,Opencv,Opencl,我创建了一个简单的人脸检测程序,它使用Haar Cascade来检测人脸。我的代码如下: def main(): face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml') cap = cv2.VideoCapture(0) while 1: ret, frame = cap.read() img = rescale_frame(frame, pe
def main():
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
cap = cv2.VideoCapture(0)
while 1:
ret, frame = cap.read()
img = rescale_frame(frame, percent=50)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, 1.3, 5)
bColor = (255,0,0)
gColor = (0,255,0)
rColor = (0,0,255)
for (x,y,w,h) in faces:
if (len(faces)%3 == 0):
cv2.rectangle(img,(x,y),(x+w,y+h),rColor,2)
if (len(faces)%3 == 1):
cv2.rectangle(img,(x,y),(x+w,y+h),gColor,2)
if (len(faces)%3 == 2):
cv2.rectangle(img,(x,y),(x+w,y+h),bColor,2)
cv2.imshow('Detected face',img)
k = cv2.waitKey(30) & 0xff
if (k == 27) or (k == 13):
break
cap.release()
cv2.destroyAllWindows()
我想在GPU上执行face\u cascade.detectMultiScale()。
有谁能建议我如何使用PythonOpenCV的OpenCL指令来实现这一点
我尝试过使用OpenCL for OpenCV:但是Python集成的示例非常有限。如果您使用的是OpenCV-3.x,那么架构已经更改为。只需使用
cv::UMat
而不是cv::Mat
,如果您的平台上的GPU支持OpenCL,那么OpenCV将自动使用它。这些示例不是用于C吗?我正在python上寻找相同的。