我目前正在开发一个需要使用车载摄像头进行人体检测的项目。长话短说,我现在正尝试使用OpenCV canny边缘检测器。
所有问题都在于我无法确定如何对捕获的视频应用检测(对于图像中包含示例的图像)。
也许有人在处理环境中做过这个?
import processing.video.*;
import gab.opencv.*;
OpenCV opencv;
Capture cam;
PImage src, canny;
void setup(){
size(640,480);
cam = new Capture(this, 640/2,480/2);
cam.start();
opencv = new OpenCV(this, cam);
opencv.findCannyEdges(20,75);
canny = opencv.getSnapshot();
}
void draw(){
pushMatrix();
scale(2);
image(cam, 0,0);
image(canny, cam.width, 0);
popMatrix();
}
void captureEvent(Capture c){
c.read();
}
答案 0 :(得分:0)
我认为您需要的是cv2.VideoCapture方法。
下面是我在Python中所做的一个示例,但是您应该可以转移用法。
import cv2
import numpy as np
cap = cv2.VideoCapture(0)
while(1):
ret, frame = cap.read()
gray_vid = cv2.cvtColor(frame, cv2.IMREAD_GRAYSCALE)
cv2.imshow('Original',frame)
edged_frame = cv2.Canny(frame,100,200)
cv2.imshow('Edges',edged_frame)
# Quit with 'Esc' key
k= cv2.waitKey(5) & 0xFF
if k==27:
break
cap.release()
cv2.destroyAllWindows()
最诚挚的问候/ Colm