スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ちょっとはOpenCv2.0を理解しました。

ほんのちょっとだけですけどね。
OpenCv1.0系の表記と同じような形でwebカメラの画像が読み込み可能になったおかげで
もらったサンプルが動くようになっただけです。

ちなみに、OpenCv2.0だとこんな書き方です。(私の環境では動作確認をしましたが、動作を保障するものではございません)
-------------------------------------------------------------------------------
#ifdef _DEBUG
//Debugモードの場合
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\debug\\cv200d.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\debug\\cxcore200d.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\debug\\cvaux200d.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\debug\\highgui200d.lib")
#else
//Releaseモードの場合
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\release\\cv200.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\release\\cxcore200.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\release\\cvaux200.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\release\\highgui200.lib")
#endif

#include "cv.h"
#include "highgui.h"

int main()
{
//webカメラを使うための初期設定
cv::VideoCapture cap(0);
if(cap.isOpened() == false) return -1;
//画像の定義
cv::Mat frame,gray,output;

while(1) {
//画像の取得
cap >> frame;
//取得した画像にエッジ処理を行う
cv::cvtColor(frame , gray , CV_BGR2GRAY );
cv::Canny(gray , output , 70 , 150);
//画像の出力
cv::imshow("frame" , frame);
cv::imshow("Output" , output);
//キー入力があれば終了
if(cv::waitKey(33) >= 0) break;
}
return 0;
}
-------------------------------------------------------------------------------

OpenCv2.0でOpenCv1.0系の表記にする場合はこんな書き方です。(↓)
-------------------------------------------------------------------------------
#ifdef _DEBUG
//Debugモードの場合
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\debug\\cv200d.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\debug\\cxcore200d.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\debug\\cvaux200d.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\debug\\highgui200d.lib")
#else
//Releaseモードの場合
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\release\\cv200.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\release\\cxcore200.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\release\\cvaux200.lib")
#pragma comment(lib,"C:\\OpenCV2.0\\build\\lib\\release\\highgui200.lib")
#endif

#include "cv.h"
#include "highgui.h"

int main ()
{
//webカメラを使うための初期設定
CvCapture* capture = NULL; //カメラで取得する画像容量の確保
if(NULL==(capture = cvCreateCameraCapture(CV_CAP_ANY))) return -1; //カメラデバイスの探索
//画像容量の確保
IplImage *src = NULL;
//画像表示用ウィンドウの作成
cvNamedWindow("CaptureImage", CV_WINDOW_AUTOSIZE);

while(1){
//キャプチャ側から画像を取り出す
if(NULL==(src=cvQueryFrame(capture))) return -1;

//画像表示
cvShowImage("CaptureImage", src);

//キー入力があれば終了
if(cvWaitKey(33) >= 0) break;
}
//表示ウィンドウの消去
cvDestroyWindow("CaptureImage");
//カメラ用メモリの解放
cvReleaseCapture(&capture);
return 0;
}
-------------------------------------------------------------------------------
スポンサーサイト

コメントの投稿

非公開コメント

No title

書き方が違うね~;

終了時の処理とかもしなくていいんだw(゚ー゚;)w

ちょっとトライしてみようかなぁ

そのうち・・・・

No title

>終了時の処理とかもしなくていいんだw(゚ー゚;)w
いるかもしれないよ。
参考にしたとこには書いてなかったのとプログラム動かして違和感なかったからそうしてるだけなんでね。

でもまぁ、2.0使うメリットはあるけどこれまで通りの書き方で使えばいいと思うよ。
なかのひと        
amazon        
アニソンYoutubeメドレー


presented by アニソン名曲.com

検索フォーム
カウンター
プロフィール

風草

Author:風草
なんだかんだで大学院に進学した人でございます。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。