opencv,调用摄像头对画面进行canny处理
2017-04-06 13:43
204 查看
注意canny处理的一定是灰度图像,所以先转灰度图像再处理
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
//定义视频中的帧图像,灰度帧图像和边缘检测图像
Mat frame, frame_gray, frame_canny;
int a = 70;
//cvCreateTrackbar的回调函数
void on_trackbar(int threshold)
{
//canny边缘检测
Canny(frame_gray, frame_canny, threshold, threshold * 3, 3);
imshow("Canny", frame_canny);
}
int main(int argc, char *argv[])
{
VideoCapture capture;
capture.open(0);
bool fromfile = false;
//Init camera
if (!capture.isOpened())
{
cout << "capture device failed to open!" << endl;
return -1;
}
//创建窗口
cvNamedWindow("Video", CV_WINDOW_AUTOSIZE); //原图
cvNamedWindow("Gray", CV_WINDOW_AUTOSIZE); //灰度图
cvNamedWindow("Canny", CV_WINDOW_AUTOSIZE); //边缘图
capture >> frame; //原图
cvtColor(frame, frame_gray, CV_RGB2GRAY); //灰度
while (1)
{
if (!fromfile)
capture >> frame;
cvtColor(frame, frame_gray, CV_RGB2GRAY);
imshow("Video", frame);
imshow("Gray", frame_gray);
on_trackbar(a);
if (cvWaitKey(20) == 'q')
return 1;
}
return 0;
}
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
//定义视频中的帧图像,灰度帧图像和边缘检测图像
Mat frame, frame_gray, frame_canny;
int a = 70;
//cvCreateTrackbar的回调函数
void on_trackbar(int threshold)
{
//canny边缘检测
Canny(frame_gray, frame_canny, threshold, threshold * 3, 3);
imshow("Canny", frame_canny);
}
int main(int argc, char *argv[])
{
VideoCapture capture;
capture.open(0);
bool fromfile = false;
//Init camera
if (!capture.isOpened())
{
cout << "capture device failed to open!" << endl;
return -1;
}
//创建窗口
cvNamedWindow("Video", CV_WINDOW_AUTOSIZE); //原图
cvNamedWindow("Gray", CV_WINDOW_AUTOSIZE); //灰度图
cvNamedWindow("Canny", CV_WINDOW_AUTOSIZE); //边缘图
capture >> frame; //原图
cvtColor(frame, frame_gray, CV_RGB2GRAY); //灰度
while (1)
{
if (!fromfile)
capture >> frame;
cvtColor(frame, frame_gray, CV_RGB2GRAY);
imshow("Video", frame);
imshow("Gray", frame_gray);
on_trackbar(a);
if (cvWaitKey(20) == 'q')
return 1;
}
return 0;
}
相关文章推荐
- 使用Opencv调用摄像头并在MFC中进行视频显示
- OpenCV学习笔记(9)利用MFC的Picture控件显示图像+播放视频和捕获摄像头画面
- 实现asp程序调用摄像头并控制摄像头进行拍照
- OpenCV调用摄像头录像并保存下来
- opencv调用摄像头
- OpenCV调用摄像头录像并保存下来
- FootStep 40、如何调用S60的系统摄像头功能进行拍照与摄像?
- OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
- Qt+OpenCV2.3.1调用摄像头(OpenCV2.x版本使用介绍)
- Linux下使用QT调用opencv读取摄像头视频 调试心得
- Android调用系统摄像头--使用MediaRecorder--2--使用MediaRecorder进行录制
- OpenCV学习笔记(12)OpenCV调用Matlab函数进行保存视频的尝试
- OpenCV2.3调用摄像头程序,获取图片逐帧显示
- Java调用摄像头进行拍照源码,并且有JMF下载地址
- OpenCV学习笔记 利用MFC的Picture控件显示图像+播放视频和捕获摄像头画面 .
- Symbian c++调用opencv库进行图像处理
- opencv调用摄像头在mfc控件中显示黑屏问题的解决
- OpenCV调用摄像头录像并保存下来
- Android调用系统摄像头--使用MediaRecorder--2--使用MediaRecorder进行录制
- opencv1.0用笔记本打开摄像头画面为黑色