カレンダー
12 | 2025/01 | 02 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
最新記事
(01/30)
(01/18)
(12/16)
(12/12)
(11/25)
(11/25)
(11/24)
(11/24)
(11/22)
(11/17)
最新コメント
[12/25 日没]
[11/15 無色大師]
[11/12 無色大師]
[11/11 無色大師]
[11/08 無色大師]
リンク
新刊カレンダー
ブログ内検索
プロフィール
HN:
Nina.A
性別:
男性
趣味:
麻雀、ラノベ、漫画
自己紹介:
MJ4や天鳳等でよく麻雀やってます。もし会ったらよろしくです。
ブログは単なるメモ帳となる予定。
ブログは単なるメモ帳となる予定。
カウンタ
C/C++勉強中の大学生雑記
2025/01/30
22:14:45
2008/11/05
20:58:23
演習でOpenCVを使うことになったので自宅のパソコンにもインストールする。
参考:OpenCV プログラミングブック(amazonへのリンク)
まずOpenCV本体をダウンロードする。
- OpenCVはSourceForge.netのOpenCV Library からダウンロード可能。(1.1pre1ではなく1.0をダウンロードする)
- あとはインストーラの指示に従っていけば完了。
続いて実行ファイルのパスの設定を行う。(以下はVistaの場合)
- スタートメニュー内の『コンピュータ』を右クリック→『プロパティ』を選択
- 左側のメニューから『システムの詳細設定』をクリック
- 『環境変数』ボタンをクリック
- システム環境変数内の変数名Pathを選択し、『編集』ボタンをクリック
- 『;C:\Program Files\OpenCV\bin;』を末尾に追加する
以下はVisualStudioの設定。
- メニューバーから『ツール→オプション』を選択しオプションウィンドウを開く。
- 左側のツリーから『プロジェクトおよびソリューション→VC++ ディレクトリ』を選択
- ディレクトリを表示するプロジェクトにインクルードファイルを選択
- 以下のディレクトリをリストに追加する。
- C:\Program Files\OpenCV\cv\include
- C:\Program Files\OpenCV\cvcore\include
- C:\Program Files\OpenCV\cvaux\include
- C:\Program Files\OpenCV\otherlibs\highgui
上記のVisual Studioの設定はあくまでライブラリのパスの設定のみで、どのライブラリを利用するかは別に(プロジェクトごとに)指定する必要がある。指定方法は以下の通り。
- OpenCVを利用するプロジェクトを開く
- メニューバーから『プロジェクト→<プロジェクト名>のプロパティ』を選択
- 左側のツリーから『構成プロパティ→リンカ→入力』を選択
- 追加の依存ファイルに以下を追加
cvcam.libhighgui.lib cxts.lib cv.lib cxcore.lib ml.lib cvaux.lib cvhaartraining.lib【追記】cvcam.libが無い? よく分からん。
【さらに追記】
プログラムを動かしてみたら動かなかったので、何でかな~と思ってたら1.1pre1をダウンロードしてきてた。一度アンインストール後1.0をインストールしたらちゃんと動くようになった。cvcam.libもちゃんとあった。
文字コードに関する警告が出たがOpenCV@Chihara-Lab.に解決法が書いてあった。要はエディタやら何やらで開いてUnicodeで保存しましょうという話。
PR
この記事にコメントする
Re:無題
うーん、OSのUSB認識関係でしょうかねえ?
何はともあれ動いたようで良かったです。
何はともあれ動いたようで良かったです。
DVカメラはどうすれば認識しますか
今晩はこれからもたまにお邪魔します。OPENCV、始めたばかりの初心者ですがただいまはまり中・・・。
USBが巧くいったので次はいよいよIEEでの挑戦、IOのGV-1394TVでTV画像でのテスト動作せず。
ただしOPENCV 1.1 インストールでのSamplesのfacedefect.exe はGV-1394TVでのTV画像は起動し赤丸追従良好。コンパイルはできないけれど。1.0 ではDVカメラはどうすれば認識しますか?要するにFireWireで画像認識したいのです。ビデオカメラを使いたいのです。
USBが巧くいったので次はいよいよIEEでの挑戦、IOのGV-1394TVでTV画像でのテスト動作せず。
ただしOPENCV 1.1 インストールでのSamplesのfacedefect.exe はGV-1394TVでのTV画像は起動し赤丸追従良好。コンパイルはできないけれど。1.0 ではDVカメラはどうすれば認識しますか?要するにFireWireで画像認識したいのです。ビデオカメラを使いたいのです。
Re:DVカメラはどうすれば認識しますか
こんばんは。こちらこそ未熟者ですがよろしくです。
IEEE1394(Firewire)接続のカメラ等は私も使ったことがないのではっきりとは言えませんが、cvCreateCameraCapture関数の代わりにcvCaptureFromCAM関数を使うようです。
http://www.eml.ele.cst.nihon-u.ac.jp/~momma/wiki/wiki.cgi/OpenCV/関数リファレンス/cvCaptureFromCAM.html
↓のページに使用例がありましたので、こちらもどうぞ。
http://f38.aaa.livedoor.jp/~kencyo/index.php?OpenCV%A5%B5%A5%F3%A5%D7%A5%EB%A5%D7%A5%ED%A5%B0%A5%E9%A5%E0
IEEE1394(Firewire)接続のカメラ等は私も使ったことがないのではっきりとは言えませんが、cvCreateCameraCapture関数の代わりにcvCaptureFromCAM関数を使うようです。
http://www.eml.ele.cst.nihon-u.ac.jp/~momma/wiki/wiki.cgi/OpenCV/関数リファレンス/cvCaptureFromCAM.html
↓のページに使用例がありましたので、こちらもどうぞ。
http://f38.aaa.livedoor.jp/~kencyo/index.php?OpenCV%A5%B5%A5%F3%A5%D7%A5%EB%A5%D7%A5%ED%A5%B0%A5%E9%A5%E0
cvCaptureFromCAM IEEE1394(Firewire) 接続できない ただいま苦戦中
OPenCVプログラミングブックサンプルソースコード2.1で行番号17をcvCaptureFromCAMに変更、コンパイル、画像の枠は表示するが映像は表示しない、カメラとして認識はしてるみたい?行番号33にprintf("カメラ認識\n");でコンソルに表示あるし。USBカメラ接続は認識する。ただいま苦戦中。
Re:cvCaptureFromCAM IEEE1394(Firewire) 接続できない ただいま苦戦中
そうですね…後は、
・付属のソフトなどで再生が可能であるか
・ドライバは正しくインストールされているか
・cvCaptureFromCAM( CV_CAP_IEEE1394 )の引数が間違っていないか
・他にIEEE接続などのデバイスはないか
を確認してみるくらいしか思いつきませんね…
・付属のソフトなどで再生が可能であるか
・ドライバは正しくインストールされているか
・cvCaptureFromCAM( CV_CAP_IEEE1394 )の引数が間違っていないか
・他にIEEE接続などのデバイスはないか
を確認してみるくらいしか思いつきませんね…
ヤッター!! IEEE1394で画像表示成功
検索また検索で OpenCV\otherlibs\cvcam\samle\vidformat_sample.cpp
にたどり着き
これをコンパイルして表示できるようになる。
これと書籍のサンプル、2本のプログラムを起動して USB と IEEE1394 の2台のカメラ画像が同時に表示ができた。
つないで1本のプログラムにしなければ。
サンプルプログラムも理解しないといけないし。道は長い・・・・
にたどり着き
これをコンパイルして表示できるようになる。
これと書籍のサンプル、2本のプログラムを起動して USB と IEEE1394 の2台のカメラ画像が同時に表示ができた。
つないで1本のプログラムにしなければ。
サンプルプログラムも理解しないといけないし。道は長い・・・・
Re:ヤッター!! IEEE1394で画像表示成功
おお、おめでとうございます。
カメラを使う方法にはcvcam.hを使う方法もあったんですね…
これでできるならなぜcvCaptureでできなかったのか気になりますが。
カメラを使う方法にはcvcam.hを使う方法もあったんですね…
これでできるならなぜcvCaptureでできなかったのか気になりますが。