2011年6月23日 星期四

OpenCV 2.2 Camera 沒畫面

OS:Windows 7
IDE:Microsoft Visual Studio 2010
OpenCV Version:2.2.0

都設定好之後卻發現camera顯示不出抓到的畫面

無論是內建或是外接的鏡頭都一樣
經過Google大神爬文才發現
原來是某個hpp檔案有bug
修正方法如下:
在還沒使用cmake之前於解壓縮的OpenCV目錄中
$(安裝OpenCV目錄)\modules\highgui\src\precomp.hpp
找到:

#if !defined WIN32 && !defined _WIN32
#include "cvconfig.h"
#else
void FillBitmapInfo( BITMAPINFO* bmi, int width, int height, int bpp, int origin );
#endif

取代成:

#include "cvconfig.h"
#if defined WIN32 || defined _WIN32
void FillBitmapInfo( BITMAPINFO* bmi, int width, int height, int bpp, int origin );
#endif

而後再使用cmake編譯opencv之後再設定路徑就可以了~
重點就是無論是不是定義WIN32都要include cvconfig.h 就對了

順帶一提是OpenCV2.2.0有兩種安裝版本分別是:
OpenCV-2.2.0-win.zip 及 OpenCV-2.2.0-win32-vs2010.exe
後者直接安裝的版本無法使用上述步驟先行fix
所以還是乖乖使用cmake自己編譯比較好~

原文連結在此

1 則留言:

北大學弟 提到...

我的專題也有用到OpenCV2.2的Camera ^^
謝謝你的分享