こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

OpenCV プログラムについて

webカメラを表示するプログラムをつくりました。
しかし、webカメラのウィンドウが小さいのでフルウィンドウにして表示させたいです。
どうすればフルウィンドウでwebカメラを表示することができますか?
解答よろしくお願いします


#include <stdio.h>
#include <highgui.h>

int main( int argc, char** argv ){
int key;//キー入力用の変数
CvCapture *capture;//カメラキャプチャ用の構造体
IplImage *frameImage;//キャプチャ画像用IplImage
char windowNameCapture[] = "Capture";//キャプチャした画像を表示するウィンドウの名前

//カメラを初期化する
if ( ( capture = cvCreateCameraCapture( -1 ) ) == NULL ) {
//カメラが見つからなかった場合
printf( "カメラが見つかりません\n" );
return -1;
}

//ウィンドウを生成する
cvNamedWindow( windowNameCapture, CV_WINDOW_AUTOSIZE );

//メインループ
while ( 1 ) {
//カメラからの入力画像1フレームをframeImageに格納する
frameImage = cvQueryFrame( capture );

//画像を表示する
cvShowImage( windowNameCapture, frameImage );

//'q'キーが入力されたらループを抜ける
key = cvWaitKey( 1 );
if ( key == 'q' ) {
break;
}
}

//キャプチャを解放する
cvReleaseCapture( &capture );
//ウィンドウを破棄する
cvDestroyWindow( windowNameCapture );

return 0;
}

投稿日時 - 2009-09-11 12:41:37

QNo.5280692

困ってます

質問者が選んだベストアンサー

きちんとウィンドウ制御をやるならば,下記URLのExWindowを参考にしてみて下さい.
http://kougaku.blog28.fc2.com/blog-entry-341.html
http://kougaku-navi.net/files_backyard/archive/ExImage014pre.zip

簡単にやるなら,cvResizeなどで,カメラからの入力画像自体を拡大してしまえば良いでしょう.
http://opencv.jp/sample/sampling_and_geometricaltransforms.html#resize

また,cvNamedWindowの第二引数を0にしてしまえば,マウスで普通のウィンドウの様に拡大縮小が出来る様になります.
cvNamedWindow( windowNameCapture, CV_WINDOW_AUTOSIZE );

cvNamedWindow( windowNameCapture, 0 );

投稿日時 - 2009-09-11 18:19:48

お礼

回答ありがとうございます。

詳しく書いてあったのでわかりやすかったです。
無事に解決することができました。

投稿日時 - 2009-09-21 16:47:27

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問