資源簡介
OpenCV和MFC的實例功能如下:
有良好的mfc界面,可以打開圖像、視頻,并作簡單的數字圖象處理,視頻目標檢測、跟蹤等等,包含大量的基礎算法,基于opencv1.0和vc6.0(vs2008)都可以應用,不用安裝,直接編譯運行就可以,對于初學者熟悉opencv的常用函數很有幫助。
新手共享資源,多多交流。
代碼片段和文件信息
//////////////////////////////////////////////////////////////////////
//?Video?Capture?using?DirectShow
//?Author:?Shiqi?Yu?(shiqi.yu@gmail.com)
//?Thanks?to:
// HardyAI@OpenCV?China
// flymanbox@OpenCV?China?(for?his?contribution?to?function?CameraName?and?frame?width/height?setting)
//?Last?modification:?April?9?2009
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
//?使用說明:
//???1.?將CameraDS.h?CameraDS.cpp以及目錄DirectShow復制到你的項目中
//???2.?菜單?Project->Settings->Settings?for:(All?configurations)->C/C++->Category(Preprocessor)->Additional?include?directories
//??????設置為?DirectShow/Include
//???3.?菜單?Project->Settings->Settings?for:(All?configurations)->link->Category(Input)->Additional?library?directories
//??????設置為?DirectShow/Lib
//////////////////////////////////////////////////////////////////////
//?CameraDS.cpp:?implementation?of?the?CCameraDS?class.
//
//////////////////////////////////////////////////////////////////////
//#include?“CameraDS.h“?????????????????????//??2010.8.14?修改
#include?“stdafx.h“?????????????????????????//??2010.8.14?修改
#pragma?comment(lib“Strmiids.lib“)?
//////////////////////////////////////////////////////////////////////
//?Construction/Destruction
//////////////////////////////////////////////////////////////////////
CCameraDS::CCameraDS()
{
m_bConnected?=?false;
m_nWidth?=?0;
m_nHeight?=?0;
m_bLock?=?false;
m_bChanged?=?false;
m_pframe?=?NULL;
m_nBufferSize?=?0;
m_pNullFilter?=?NULL;
m_pMediaEvent?=?NULL;
m_pSampleGrabberFilter?=?NULL;
m_pGraph?=?NULL;
CoInitialize(NULL);
}
CCameraDS::~CCameraDS()
{
CloseCamera();
CoUninitialize();
}
void?CCameraDS::CloseCamera()
{
if(m_bConnected)
m_pMediaControl->Stop();
m_pGraph?=?NULL;
m_pDeviceFilter?=?NULL;
m_pMediaControl?=?NULL;
m_pSampleGrabberFilter?=?NULL;
m_pSampleGrabber?=?NULL;
m_pGrabberInput?=?NULL;
m_pGrabberOutput?=?NULL;
m_pCameraOutput?=?NULL;
m_pMediaEvent?=?NULL;
m_pNullFilter?=?NULL;
m_pNullInputPin?=?NULL;
if?(m_pframe)
cvReleaseImage(&m_pframe);
m_bConnected?=?false;
m_nWidth?=?0;
m_nHeight?=?0;
m_bLock?=?false;
m_bChanged?=?false;
m_nBufferSize?=?0;
}
bool?CCameraDS::OpenCamera(int?nCamID?bool?bDisplayProperties?int?nWidth?int?nHeight)
{
HRESULT?hr?=?S_OK;
CoInitialize(NULL);
//?Create?the?Filter?Graph?Manager.
hr?=?CoCreateInstance(CLSID_FilterGraph?NULL?CLSCTX_INPROC
IID_IGraphBuilder?(void?**)&m_pGraph);
hr?=?CoCreateInstance(CLSID_SampleGrabber?NULL?CLSCTX_INPROC_SERVER?
IID_IbaseFilter?(LPVOID?*)&m_pSampleGrabberFilter);
hr?=?m_pGraph->QueryInterface(IID_IMediaControl?(void?**)?&m_pMediaControl);
hr?=?m_pGraph->QueryInterface(IID_IMediaEvent?(void?**)?&m_pMediaEvent);
hr?=?CoCreateInstance(CLSID_NullRenderer?NULL?CLSCTX_INPROC_SERVER
IID_IbaseFilter?(LPV
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????20??2010-09-22?18:51??CVMFC\CaptSetup.txt
?????文件?????843824??2006-10-18?21:49??CVMFC\cv100.dll
?????文件???????3308??2010-08-21?11:11??CVMFC\CVMFC\CameraDS.h
?????文件??????11694??2010-08-19?23:54??CVMFC\CVMFC\CameraDSA.cpp
?????文件?????????20??2010-09-07?23:02??CVMFC\CVMFC\CaptSetup.txt
?????文件???????1513??2010-08-11?16:28??CVMFC\CVMFC\ChildFrm.cpp
?????文件???????1397??2009-10-27?07:54??CVMFC\CVMFC\ChildFrm.h
?????文件???????6578??2010-09-17?16:22??CVMFC\CVMFC\CVDSCap.cpp
?????文件???????1118??2010-09-01?11:41??CVMFC\CVMFC\CVDSCap.h
?????文件??????54716??2012-07-31?10:29??CVMFC\CVMFC\CVMFC.APS
?????文件?????????20??2010-08-22?16:24??CVMFC\CVMFC\CVMFC.cfg
?????文件???????4722??2010-10-10?08:16??CVMFC\CVMFC\CVMFC.clw
?????文件???????4403??2010-08-15?15:30??CVMFC\CVMFC\CVMFC.cpp
?????文件???????5345??2010-08-27?16:07??CVMFC\CVMFC\CVMFC.dsp
?????文件????????518??2010-08-15?15:30??CVMFC\CVMFC\CVMFC.dsw
?????文件???????1345??2010-08-15?15:31??CVMFC\CVMFC\CVMFC.h
?????文件???32599040??2012-08-03?14:46??CVMFC\CVMFC\CVMFC.ncb
?????文件?????571904??2010-10-10?08:16??CVMFC\CVMFC\CVMFC.opt
?????文件???????1290??2010-10-10?08:14??CVMFC\CVMFC\CVMFC.plg
?????文件??????18585??2012-07-31?10:29??CVMFC\CVMFC\CVMFC.rc
?????文件????????875??2012-08-01?16:12??CVMFC\CVMFC\CVMFC.sln
????..A..H.?????20480??2012-08-03?14:46??CVMFC\CVMFC\CVMFC.suo
?????文件??????11301??2012-07-31?10:29??CVMFC\CVMFC\CVMFC.vcproj
?????文件???????1411??2012-08-03?14:46??CVMFC\CVMFC\CVMFC.vcproj.ASUS-PC.ASUS.user
?????文件???????2561??2010-08-30?21:39??CVMFC\CVMFC\CVMFCDoc.cpp
?????文件???????1624??2010-08-21?13:44??CVMFC\CVMFC\CVMFCDoc.h
?????文件?????180794??2010-10-10?08:13??CVMFC\CVMFC\CVMFCview.cpp
?????文件???????9260??2010-10-04?22:13??CVMFC\CVMFC\CVMFCview.h
?????文件???????7252??2012-07-31?10:29??CVMFC\CVMFC\Debug\BuildLog.htm
?????文件???????2048??2012-07-31?10:29??CVMFC\CVMFC\Debug\CVMFC.exe.em
............此處省略202個文件信息
評論
共有 條評論