![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
OpenCVでカメラからキャプチャした画像(コマ画像)をbmpで保存しようと思っています。
以下のプログラムで一応bmp画像は保存できるのですが、キー入力をしないと保存できません。
#include <iostream>
#include <stdio.h>
#include <cv.h>
#include <highgui.h>
#include <math.h>
#include <stdlib.h>
int main(void){
//画像保存用
char str[32];
//キー入力用
int key;
//カメラの用意
CvCapture *capture;
IplImage *frame = NULL; //カメラ画像用
//カメラ・デバイスの先頭ポインタを取得
capture = cvCaptureFromCAM(-1);
//カメラ画像のサイズ
double height = 240;
double width = 320;
//カメラ初期化
if(capture == NULL){
//カメラが見つからなかった場合
printf("カメラが見つかりません\n");
return (0);
}
//カメラ画像を表示するウィンドウの生成
cvSetCaptureProperty(capture, CV_CAP_PROP_FRAME_HEIGHT, height);
cvSetCaptureProperty(capture, CV_CAP_PROP_FRAME_WIDTH, width);
cvNamedWindow("CaptureFromCamera", CV_WINDOW_AUTOSIZE);
//キー入力されたら画像をキャプチャ
while(1){
//カメラ画像からフレーム画像を取り込む
frame = cvQueryFrame(capture);
if(frame == NULL)
break;
//画像の表示
cvShowImage("CaptureFromCamera", frame);
//sキー入力で画像を保存、Escキー入力でループから抜ける
key = cvWaitKey(10);
if(key == '\x1b')
break;
else if(key == 's'){
sprintf(str, "Capture_Bitmap.bmp");
cvSaveImage(str, frame);
}
}
//キャプチャの解放
cvReleaseCapture(&capture);
//ウィンドウの破棄
cvDestroyWindow("CaptureFromCamera");
}
自分が作りたいプログラムは、
・カメラからコマ画像を取得
↓
・それをbmp形式にする
↓
・変換した画像はファイルにではなく、プログラム中の変数に保存
↓
・プログラムが動いている間ずっとこの処理を行う
というものです。
特に変換した画像をプログラムが動いている間、ずっと変数に保存し続ける方法がわかりません。
プログラム中の変数に保存したい理由は、保存したコマ画像を用いてテンプレートマッチングなどを行いたいからです。
どなたか教えていただけると助かります。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
OpenCV使ったことない者の回答で恐縮ですが、
リファレンスでは、cvWaitKey()はタイムアウトの場合-1を返すとのことなので、
else if(key == 's'){
を
else if(key == -1){
に書き換えれば目的の処理は達成できるのではないでしょうか。
リファレンスURL
http://opencv.jp/opencv-1.0.0/document/opencvref …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- その他(プログラミング・Web制作) 物理の斜方投射で目盛りに数値を入れたい 2 2023/05/27 06:32
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- 一眼レフカメラ 「Imaging Edge」を手動起動せず、ARWファイルを最高画質JPEGへ変換する方法は? 2 2022/08/05 11:38
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【EXCEL VBA】ダブルクリックで...
-
背景画像の繰り返しについて
-
vb.net 画像の透過について
-
画像のビット数を変更する方法
-
画像のピクセルデータの取得
-
UWSCについて質問です
-
uwscの画像認識に失敗します。
-
C#で画像を他の画像に貼り付け...
-
パネルに画像
-
VBA シート毎に画像挿入
-
画像の重ね合わせがうまくでき...
-
colorbox.js 画像クリックで閉じる
-
EXCELに貼り付けた画像の位置を...
-
ImageMagickでgif画像の一部が...
-
【Papervision3D】円柱にテクス...
-
Excel ユーザーフォームで表示...
-
VB6でプリントスクリーンを無効...
-
スライドショーの表示秒数につ...
-
UWSC 画像認識で条件分岐
-
ソースのどの部分を変更すれば...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ImageMagickでgif画像の一部が...
-
Pythonでgif画像が上手く作れない
-
こんなことてしますか??
-
【EXCEL VBA】ダブルクリックで...
-
Excel ユーザーフォームで表示...
-
「using Windows」でエラーが出る
-
背景画像の繰り返しについて
-
【WPF】画像の切り替え
-
uwcs のマクロで画像認識をして...
-
uwscの画像認識に失敗します。
-
vb.net 画像の透過について
-
EXCEL VBA 複数のImageコントロ...
-
UWSC「画像が無い場合」
-
gif 画像上の ボタンに リン...
-
VBAのユーザーフォームのイメー...
-
VBA シート毎に画像挿入
-
画像処理したBitmapをピクチャ...
-
UWSC 画像判定と条件分岐について
-
UWSC 画像認識で条件分岐
-
自作の地図をグーグルマップの...
おすすめ情報