OpenCv调用摄像头拍照代码
生活随笔
收集整理的這篇文章主要介紹了
OpenCv调用摄像头拍照代码
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
近期在研究OpenCv對攝像頭的調(diào)用。現(xiàn)將代碼貼出,供大家批評指正。
1、申明
#include"./opencv2/opencv.hpp"#ifdef _DEBUG#pragma comment(lib,"opencv_core249d.lib") #pragma comment(lib,"opencv_highgui249d.lib")#else#pragma comment(lib,"opencv_core249.lib") #pragma comment(lib,"opencv_highgui249.lib")#endifusing namespace cv;class COpencvCameraCtrl :public CCameraBase { public:VideoCapture vc; public:COpencvCameraCtrl(void);~COpencvCameraCtrl(void);public:BOOL OpenCamera( HWND win, CString strVid, CString strPid ); //打開攝像頭BOOL PhotoPic( CString strSaveFile );void CloseCamera(); };4、拍照而且保存到本地 //拍攝攝像頭 BOOL COpencvCameraCtrl::PhotoPic( CString strSaveFile ) {Mat frame;vc >> frame;vc >> frame;if( !frame.data ){return FALSE;}//設(shè)置圖像質(zhì)量vector<int> compression_params;compression_params.push_back( IMWRITE_JPEG_QUALITY );compression_params.push_back( 75 );imwrite( strSaveFile.GetBuffer(0), frame, compression_params );strSaveFile.ReleaseBuffer(); return TRUE; }
假設(shè)只運行一次,會出現(xiàn)兩個問題:
A、假設(shè)打開攝像頭馬上調(diào)用拍照保存,第一次會失敗,獲取不到數(shù)據(jù)
B、每次拍攝保存的圖片是上一次的圖片
總結(jié)
以上是生活随笔為你收集整理的OpenCv调用摄像头拍照代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: user32.dll是什么
- 下一篇: 开发RESTful WebService