#include
using namespace cv;
int main() {
VideoCapture capture("a.mp4");
while (true) {
Mat frame;
Mat edge;
Mat out1;
Mat out2;
Mat out3;
capture >> frame;
if (frame.empty())
break;
cvtColor(frame, edge, COLOR_BGR2GRAY);
blur(edge, out1, Size(7, 7));//中值滤波
Canny(edge, out2, 20, 40); //canny算子检测边缘,上下阈值可调
Canny(out1, out3, 20, 40); //canny算子检测边缘
imshow("Video", frame);
imshow("gray", edge);
imshow("gray2blur", out1);
imshow("gray2canny", out2);
imshow("blur+canny", out3);
//等待50ms,如果从键盘输入的是q、Q、或者是Esc键,则退出
int key = waitKey(50);
if (key == 'q' || key == 'Q' || key == 27)
break;
}
return 0;
}