おいふぉりーのぶろぐ

きっと趣味のブログに違いないです!!

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

[画像処理]衝撃の○○!!をリアルタイムに表示する。

ezcap.jpg
↑が本題なわけじゃなくて、たまたまテレビでよくやるアレを作ってみたら面白かっただけなんですが、まあそ~ゆ~ことで。本題は、とりあえずWebカメラからキャプって表示して画像処理の下準備は整ったってことなんですけど。
ホームページのほうからダウンロードできるので、よろしく。Webカメラ持ってる人は、"サンプルバイナリ付きソースコード ver.060504"ってのをダウンロード、解凍して、"Sample.exe"を実行して、"start"って黒い画面に打ち込めば表示されますよ。

プログラミングネタで、色々と書きたいことはあるのだけども、ちょと疲れたので、ネタだけリストアップしとくか。

COM用のスマートポインタ CComPtr _com_ptr_t
DirectShowいじってるとCOMインターフェース・ポインタがうじゃうじゃ出てくるので、スマートポインタがあれば便利なんだけどな~って思ってたら、あるじゃんあるじゃん。最初は、_com_ptr_tを使おうとしたんだけど、どうもMS Visual C++用のスタティック・ライブラリをリンクしないとイケナイらしく、私Borlandなんですがどうしましょってことで、CComPtrを使うことに、こちらはBorlandでも使えます。

ドライバ・アップデート
なんだか、Webカメラのコントロールパネルのドライバ設定画面(輝度とかコントラストとか調整できる)のUIがやたら重くて固まりそうになるので、ドライバアップデート。 → 直った~。

IAMVideoProcAmpインターフェースでビデオ品質を取得・設定不能?
これ一番重要かも。まあ、DirectShowからカメラの輝度とか設定できるはずなんですが、うまくいかない。たとえば、VideoProcAmp_Brightnessって輝度を調整するプロパパティをIAMVideoProcAmpインターフェースを使って取得、設定しようとするとこんな感じになっちゃいます。
ドライバのコントロールパネルの設定画面で輝度を中にすると、私のプログラムで20を取得。最大にするとプログラムで40を取得。一見うまくいってそうですが、プログラムで扱われる輝度の範囲は-10,000 ~ 10,000と決まっています。ん~、なんかおかしい。
今度は逆にプログラムから値を設定して見たわけですが、全然カメラに反映されない。コントロールパネルで中にした後、プログラムで40って値を設定して、プログラムで正しく値が設定されているかどうか値を取得すると40、確かにプログラム上は設定されています。でも、ぜんぜん表示される画像の輝度最大になって無いんだよね。
よくわからん。とりあえず、ドライバが悪いということにしちゃいます。誰か、このプログラム、別のWebカメラで試してみてくださいな~。

まあ、久々に更新するといろいろあるね。どうでもいいけど、DirectShowのリファレンス見ながらカリカリに焼いたパンを食べてたら、カリカリなパンくずが目に入ってめっちゃ痛かった。
  1. 2006/05/05(金) 00:51:25|
  2. ソフトウェア開発
  3. | トラックバック:0
  4. | コメント:0
<<[画像処理]OpenCVに負けないように | ホーム | 画像処理プログラミングとか回路とか>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://tm86eublog.blog42.fc2.com/tb.php/82-ec1118af
この記事にトラックバックする(FC2ブログユーザー)

来客数

プロフィール

Euphorie

Author:Euphorie
"おいふぉりー"って呼んでくださいな☆
ハードウェアとかソフトウェアとかの開発に興味があったり。。。
連絡先は上の画像。

最近の記事

最近のコメント

最近のトラックバック

月別アーカイブ

カテゴリー

ブロとも申請フォーム

この人とブロともになる

ブログ内検索

RSSフィード

リンク

このブログをリンクに追加する

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