1 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 09:47:36 ] OpenCVとはインテルが開発・公開しているオープンソースのコンピュータビジョン向けのLinux/Windows向けC/C++ライブラリです。 実装分野は ・ユーザーインターフェイス ・物体分離 ・セグメンテーションと認識 ・顔認識システム ・ジェスチャー認識 ・モーショントラッキング ・感情モーション ・モーション理解 ・モーションからの構築(SFM) ・モバイルロボティクス 前スレ 【Intel】OpenCV総合スレ【画像処理】 pc11.2ch.net/test/read.cgi/tech/1182830261/ 関連リンクなどは >2-10くらい
2 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 09:48:03 ] 【関連スレ】 画像処理 その8 ttp://pc11.2ch.net/test/read.cgi/tech/1168868527/ 【関連リンク】 OpenCVメモ - PukiWiki ttp://nautilus.cs.miyazaki-u.ac.jp/~yoshi/pukiwiki/index.php?OpenCV%A5%E1%A5%E2 FrontPage - OpenCV@Chihara-Lab. ttp://chihara.naist.jp/people/2004/kenta-t/OpenCV/pukiwiki/ OpenCV による画像処理 ttp://www-cv.mech.eng.osaka-u.ac.jp/~hamada/openCV/ OpenCVをVisual Studio .NETで使う luvtechno.net/h/?OpenCV こめIntel、画像処理ライブラリ「OpenCV 1.0」を公開 journal.mycom.co.jp/news/2006/11/08/360.html
3 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 09:49:34 ] 画像処理 その11 pc11.2ch.net/test/read.cgi/tech/1222593978/
4 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 09:54:41 ] 本家 opencvlibrary.sourceforge.net/ リファレンス日本語訳 ttp://www.opencv.jp/reference/
5 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 10:10:06 ] 次スレ立てたところで質問です。 動画から物体Xを捜してその物体Xだけを綺麗に抜き出したいのですが上手くいきません。 なにかいい方法教えてください ちなみに物体Xは例えば袋とかの時もあり、常に直線のみや曲線のみで構成されてるとは限りません。 とりあえずその物体Xの特徴からある程度の位置を割り出してその辺りの部分だけを抜き出す。 ここまではおおざっぱにですがどうにか成功しました。次は グレースケール化→二値化→cvFindContoursで輪郭抽出またはエッジ抽出 でやってみたのですが二値化の時点で微妙に欠けたりはみ出たりして輪郭もエッジ もうまくとれません。綺麗にその物体Xを抜き出す処理の手順とできれば使用する 関数も教えてもらえたら助かります
6 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 17:06:57 ] …エスパーさん、出番でーす
7 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 17:46:57 ] 熱した針金をあててやるといい
8 名前:デフォルトの名無しさん mailto:sage [2008/12/31(水) 01:22:17 ] cvHaarDetectObjectsが入力画像を上下反転させないと認識してくれないんですが 仕様ですか?バグですか? 後々も座標上下反対に考えないといけないんでコマリマックス
9 名前:デフォルトの名無しさん mailto:sage [2008/12/31(水) 10:28:54 ] 君のカン違い
10 名前:デフォルトの名無しさん mailto:sage [2008/12/31(水) 18:17:56 ] cvFindContoursで得たCvSeqの輪郭の内側の部分だけを抜き出すにはどうすればできますか? cvNextTreeNodeで輪郭ひとつ抜き出してCV_GET_SEQ_ELEMで座標みて外側を黒に、 内側を白に塗りつぶしてマスク作ってコピーするしかない? もっと簡単に出来る方法あれば教えてください
11 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 19:45:51 ] >5 画像処理は基本的に個別対応しかない。 テンプレートマッチング&Sobelなどの基本操作で無理ならば、対象画像を示す以外に回答は出ない。
12 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 19:02:32 ] cvCaptureFromeAVIって関数あったけど,OpenCVが1.10になったとき 読めるAVIのコーデックの種類とかって増えたりした?
13 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 00:05:35 ] >>2 以下2件デッドリンク.次スレから削除よろしく OpenCVメモ - PukiWiki ttp://nautilus.cs.miyazaki-u.ac.jp/~yoshi/pukiwiki/index.php?OpenCV%A5%E1%A5%E2 OpenCV による画像処理 ttp://www-cv.mech.eng.osaka-u.ac.jp/~hamada/openCV/
14 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 00:13:14 ] >>12 前バージョンからシステムに依存してたから関係ないと思う. WindowsならCCCP導入後にH.264とか読み込めるからさ.
15 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 19:49:25 ] cvStereoRectifyで使用してるアルゴリズムの元論文って知ってる人いない? Uncalibratedのときはhartleyって載ってるんだけど
16 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 11:42:57 ] OpenCV用にPCを一台組みたいんだけど、やっぱり、Intelを使った方がいいのかな? 今のテスト環境は、AthlonX2 4000+で速度的に不満が無いレベルだからkumaを使えば もう少し幸せになれるかなと思ってます。 ソースを読む限りは特にSSEやマルチスレッドを使ってる訳では無さそうなので、 クロックとキャッシュ容量で差がつくのかなと考えてます。 だけど、タダで使わせて貰ってるんだからIntelに貢献するべきかな?
17 名前:12 mailto:sage [2009/01/07(水) 02:26:42 ] >>14 ありがと,OpenCVじゃDX50くらいしか読み込めないと思ってたから.
18 名前:デフォルトの名無しさん [2009/01/07(水) 11:20:41 ] >>16 速度的に不満がないならこれ以上幸せになりようがないと思いますw ハード板住民垂涎の品のみで周辺機器が構成されているなら CPUにお金使ってもいいんじゃないwもう他に使い道ないでしょwww
19 名前:デフォルトの名無しさん [2009/01/07(水) 21:57:03 ] サンプルプログラムの中の(エッジの検出 cvSobel,cvLaplace,cvCanny)と (画像の二値化 cvThreshold, cvAdaptiveThreshold)についてなんですが、 サンプルプログラムを実行するとそれぞれ edge.c:21: error: too few arguments to function 'cvSobel' edge.c:22: error: too few arguments to function 'cvConvertScaleAbs' edge.c:25: error: too few arguments to function 'cvLaplace' edge.c:26: error: too few arguments to function 'cvConvertScaleAbs' edge.c:29: error: too few arguments to function 'cvCanny' 及び nitika2.c:26: error: too few arguments to function 'cvSmooth' nitika2.c:35: error: too few arguments to function 'cvAnd' nitika2.c:39: error: too few arguments to function 'cvSmooth' nitika2.c:40: error: too few arguments to function 'cvAnd' という同様のエラーが出てしまいます。 どなたか分かる方がいたら教えて頂けないでしょうか。
20 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 02:33:36 ] >>19 辞書引こうよ. 引数が少なすぎます って意味です. リファレンスをちゃんと読めば解決できるよ.
21 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 16:27:36 ] >>19 C++としてコンパイルする。あるいは、 デフォルト引数を使えない言語としてコンパイルするなら、 ちゃんと足りない引数を自分で与えなきゃだめだよ。 … って書いてあったよ。
22 名前:デフォルトの名無しさん [2009/01/09(金) 00:25:00 ] 分かりました。 さっそく、いろいろ試してみたいと思います。 ありがとうございました。
23 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 01:52:18 ] 今 OpenC Vの IplImage 内のメンバ ImageDate 内の値を直接参照してたんですけど. 普通に値をとろうとして int にキャストしてたんですよ. そしたらマイナスの値がでて正確なRGB値がよくわからずにいたんです. +127とか(unsigned int)とかして正しい数値をとろうとしてもうまくいきませんでした. それでリファレンスサイトのサンプルコードを見て,(unsigned char)で値を受けてからキャストしてみたんですよ. そしたらようやく正確なRGB値を取ることができました. 質問ではないんですけど嬉しくって報告しました. 失礼しました.
24 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 15:21:43 ] IplImage作った人はなんでcharでBGRの順にピクセル並べようと思ったんだろうな なんか利点あるの?
25 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 17:33:03 ] リトルエンディアンと相性が良くて,作ったのがIntelだから
26 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 18:43:49 ] DEPTH_8U形式のイメージにcvFilter2Dで フィルタをかけているんだけど、 結果が負のときってどうなるの
27 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 10:09:28 ] cvMatとかをデバックプリントする簡単な関数ないの?
28 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 19:01:20 ] >>26 結果が負って何?cvFilter2Dはvoid関数だったけど?
29 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 21:14:19 ] ラプラシアンとかで画素が負になったらって事だろ。
30 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 21:22:26 ] 画素のcharの値が負ってことか?普通じゃん 出力してためせばいいじゃねえか
31 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 23:11:00 ] >>26 です。 リファレンスのサンプルだとcvSolveやcvLaplaceは 8U(符号無し)で入力して、16S(符号付)で出力をした後 cvConvertScaleAbsで8Uに戻してる。 cvFilter2Dも同じ様にするのかなと思ったんだけど、cvFilter2Dは入力と出力のタイプ を同じにしないとエラーになるので、あれっ?っとなった。 自作のフィルタでためしたところ、負の画素はゼロになってるようなんだけど、 これであってるのかな?
32 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:27:44 ] mixiの質問スレが低レベルすぎて泣ける
33 名前:デフォルトの名無しさん [2009/01/21(水) 00:56:35 ] 前スレであった目の位置の特定で、 検出の精度をあげるソースってだれか持ってる?
34 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 03:40:37 ] 1.1preの方の変更点とかここでまとめて行こうぜ
35 名前:デフォルトの名無しさん [2009/01/23(金) 06:13:25 ] cvcreatematで20000*20000のマトリクスを使って計算しようとしたんですけど、 メモリエラーが起きて計算できませんでした。 エラーを回避する方法はないでしょうか
36 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 07:00:08 ] >>35 いっぺんに計算する必要が無ければ分割したら?
37 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 08:20:06 ] // / / パカッ //⌒)∩__∩ /.| .| ノ ヽ / | | ● ● | / | 彡 ( _●_) ミ まピョーん☆ / | ヽ |∪| /_ // │ ヽノ \/ " ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
38 名前:35 [2009/01/23(金) 09:10:24 ] そうですよね。 システムのメモリ確保領域をふやしたり、いろいろやってみましたけど、無理でした。 式を作り直して分割しないと無理そうですね。 やってみます。
39 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 10:25:49 ] 64bit OS使ってる?
40 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 05:06:32 ] Windowsでopencv+ffmpeg環境を作ろうとしているのですが, opencv1.1pre1に使うffmpegの推奨revはどこを参照すれば分かりますか? 動作報告も頂けるとありがたいです.
41 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 06:03:01 ] 質問です。 例えば、右上には黄色い四角、左下には赤い四角が有る と言う事をOpenCVの関数だけを使って認識する事は可能ですか? それとも、黄色い四角、赤い四角があるというだけで、 右上や左下は認識できないでしょうか?
42 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 06:30:20 ] main関数がOpenCVのAPIじゃないからな。無理。
43 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 06:34:08 ] >>41 物体があることは分かってる? 重心座標でよければそれぞれの物体を切り出した2値画像に cvMoments, cvGetSpatialMomentでいけそうな気がします。
44 名前:デフォルトの名無しさん [2009/01/26(月) 20:19:10 ] 数千枚の中から大きさが違うだけの同じ画像を見つけるためにcvMatchShapesを使ったのですが 同一画像はマッチ度10位前後になってしまいます。 小さい画像をcvLoadImageしてから大きい画像と同じ大きさに拡大したところ1位になりましたが、 大きい画像を小さい画像にして比較するとまたマッチ度は10位前後になってしまいます。 大きさの違うだけの画像を見つけ出すうまい方法ってありませんか?
45 名前:デフォルトの名無しさん [2009/01/26(月) 20:53:02 ] >>44 初心者にはお勧めしませんが、Linuxが使えるならGimpで出来ます。
46 名前:デフォルトの名無しさん [2009/01/27(火) 01:03:36 ] 複数カメラの取り込みを、VideoInputを使って以下のページを参考にして作りました。 ttp://www.eml.ele.cst.nihon-u.ac.jp/~momma/wiki/wiki.cgi/OpenCV/複数台のカメラ.html ソースはほぼこのままで、2カメラにしただけです。 するとUSBカメラ(device0)の方は固まりがちで1fpsもでないくらいなのに、 ノートPCに内臓されてるカメラ(device1)の方は解像度が高くしてもスムーズに動作します。 USBの方はYUY2->RGB24の変換をしてるみたいなのでここに時間がかかってるんでしょうか? VideoInputの出力を貼っておきます。 ***** VIDEOINPUT LIBRARY - 0.1991 - TFW07 ***** VIDEOINPUT SPY MODE! SETUP: Looking For Capture Devices SETUP: 0) USB モヌェ ヌミ、ケ SETUP: 1) Integrated Camera SETUP: 2 Device(s) found SETUP: Setting up device 0 SETUP: USB モヌェ ヌミ、ケ SETUP: Couldn't find preview pin using SmartTee SETUP: Setting capture size to 320 by 240 SETUP: Media Type is YUY2 converted to RGB24 SETUP: Capture callback set SETUP: Device is setup and ready to capture. SETUP: Setting up device 1 SETUP: Integrated Camera SETUP: Couldn't find preview pin using SmartTee SETUP: Setting capture size to 320 by 240 SETUP: Media Type is RGB24 no conversion needed SETUP: Capture callback set SETUP: Device is setup and ready to capture.
47 名前:46 mailto:sage [2009/01/27(火) 01:10:35 ] >>46 自己解決しました。 VideoInputのusb devices - PLEASE READ.txtを読んでませんでした。 USBポートの電源の管理の設定を変えるとで解決しました。 スレ汚しスマソ
48 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 12:49:18 ] >>45 Gimpはレタッチソフトですよね? サムネイルが作りたいわけではなくて、サムネイル画像を探したいんです。 それともLinuxバージョンのGimpのみに画像比較機能があるんでしょうか?
49 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 13:45:21 ] >>48 scriptFuをマスターしている奴はおらぬか
50 名前:デフォルトの名無しさん [2009/01/27(火) 14:35:05 ] OpenCVで画像のエッジを抽出する際にガウシアンフィルタをかけて, ラプラシアンフィルタをかけたあとで,ゼロクロス画像を得ることは可能ですか?
51 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 19:26:32 ] 自分でその順番通りに書けば得られるよ
52 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 00:55:34 ] >>48 画像全体の大きさが違うだけで、 一部だけ切り取られたり回転したりしてないんなら 単純に大きさをそろえて差分をみればいいんじゃない?
53 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 18:14:04 ] Learning OpenCVは読みやすいね 大学生レベルの英語ができる人なら普通に読めると思う
54 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 21:27:03 ] 夏に日本語版出るらしいけどな
55 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 21:46:04 ] >>50 >ゼロクロス画像を得ることは可能ですか? セクロス画像を得ることができますかに見えた俺はもう末期。
56 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 23:06:48 ] CvCalibFilterって、リファレンスマニュアルにみつからないのですが どこかに解説があるのでしょうか?
57 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 03:33:16 ] ちょっと質問です. ゼロクロス画像というのは,2値のみで表されるエッジ画像という認識であっていますか?
58 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 09:06:43 ] // / / パカッ //⌒)∩__∩ /.| .| ノ ヽ / | | ● ● | / | 彡 ( _●_) ミ intel owattel !! / | ヽ |∪| /_ // │ ヽノ \/ " ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
59 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 11:26:05 ] ところがどっこい、もうIntel関係ない
60 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 01:22:05 ] videoInputでキャプチャした映像を cvCreateVideoWriterを使ってファイルに保存したいのですが 処理が重いので困っています QVGAのカメラが2つあるだけでカクカクになってしまいます 非圧縮でやっているので、処理としては取り込みとキーの判定だけです なのでなぜこんなに重くなるのかがわかりません キャプチャした画をウィンドウ表示しているときはそんなに遅くないように見えるのですが AVIにするのにそんなに時間がかかるのでしょうか。 それともカメラ2台でそんなに厳しいのでしょうか
61 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 06:36:08 ] >>60 QVGAのピクセル数×3(色数)×15(くらいか?fps)=? これを常時HDDに書き込んでいる。 バカデカいIplImageの配列を確保してCopyImageすりゃ速い。 SaveImageは後でやる。
62 名前:デフォルトの名無しさん [2009/02/05(木) 14:23:38 ] OpenCvに自分の作ったプログラムを投稿してみたいんですが、やりかたってわかりますか?
63 名前:デフォルトの名無しさん [2009/02/05(木) 14:26:04 ] >56 ソースコード読んでみたら?
64 名前:デフォルトの名無しさん [2009/02/05(木) 16:16:03 ] 1.1preのサンプルってVC2008で動くんですか? さっぱり動かんです。
65 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 17:55:42 ] 環境も書かずに動くだの動かないだの言っている奴がム板にいること自体が疑問
66 名前:デフォルトの名無しさん [2009/02/05(木) 18:11:31 ] osのことでしたら、xpです。
67 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 18:17:57 ] >>64 動かないのはPCがイかれてるかキミの設定が悪いかだ,こんなところに書き込むより周りの人に相談しなさい
68 名前:デフォルトの名無しさん [2009/02/05(木) 18:20:15 ] 氏ね
69 名前:名無し募集中。。。 mailto:sage [2009/02/05(木) 19:21:23 ] こんな動作になる事を想定しているのに別のこんな動作になってしまうのだが コードが問題なのではなくてVS2008が原因である事を確認するために こんなテストをしてその結果がこうなったからだ。 くらい書いて欲しいって事かな、簡単に言うと。
70 名前:デフォルトの名無しさん [2009/02/05(木) 20:50:39 ] 日本語でおk
71 名前:60 mailto:sage [2009/02/05(木) 22:35:22 ] >>61 トンクス。 HDDの書き込み速度がわからないけど、 確かにメモリに入る限り詰め込んだ方がよさそうですね やってみます。ありがとうございました。
72 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 22:36:43 ] >>64 サンプル動かすのにVCかどうかなんて関係ないと思うけど、 なんなら自分でビルドし直したら?
73 名前:60 mailto:sage [2009/02/06(金) 00:55:07 ] 2カメラからキャプチャした映像を一度メモリにひたすら保存して キャプチャ後にファイルに保存するようにしたところ カクカク感が解消されました! でも1カメと2カメでフレームレートが全然違います。 処理の順番に影響されるのかな? つい最近リリースされたvideoInputはフレームレートが設定できるそうなので 明日か週末にでも試してみます USBカメラでもうまくいくのかどうか
74 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:54:03 ] 1.1はインテルの何とかを前提にしてるみたいだから、 リビルドする時はそれに非対応の奴を選んで、 ついでにいくつか出る警告を無視してリビルドすれば VC2008でもサンプルが普通に動いたな.
75 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 06:27:32 ] ∩_∩ 人人人人人人人人人人人人人人人人人人人人人人人人人人人人人 / / \\ < すごい新参感を感じる。今までにない何か酷い新参感を。 > | (゚)=(゚) | < 厨・・・流入してきてる確実に、コピペブログから、俺たちのほうに。 > | ●_● | < 雑談はやめよう、とにかく最後までネタ作ってやろうじゃん。 > / ヽ < ネットの画面の向こうには沢山のゆとりがいる。決して一人じゃない。 > | 〃 ------ ヾ | < 戦おう。そしてともにネタを投稿しよう。 > \__二__ノ < ゆとりや厨の糞レスは入るだろうけど、絶対に流されるなよ。 > YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
76 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 10:04:12 ] >>73 USBコントローラの帯域制限に引っ掛かってない? videoInputでカメラの設定ダイヤログを開いてUSBの帯域を下げるか、別のUSBコントローラに刺すとか。
77 名前:デフォルトの名無しさん [2009/02/07(土) 01:32:21 ] >>74 opencv.willowgarage.com/wiki/VC2008Express 上記URLに書いてある C:\Program Files\OpenCV\_make\opencv.vs2005.no_openmp.sln でリビルドすればいいということですか?
78 名前:73 mailto:sage [2009/02/09(月) 01:10:17 ] さきほどvideoInput::setIdealFramerate()を試したところ、 2台ともうまく動きました。 >>76 アドバイスありがとうございます。 カメラの設定ではUSBに関する設定はできませんでした。 別のUSBコントローラというのは、単純に別のUSBポートと考えていいのでしょうか? デバイスマネージャには以下のように「コントローラ」と「ハブ」が8個ずつ並んでますが、 www.csync.net/service/file/view.cgi?id=1234109080 そもそも4つしかないので違和感があります。
79 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 07:16:07 ] >>78 デスクトップを組んだ事があれば分かると思うが、マザーボード上あるいは拡張ボードで 根っこから別のポートになっていれば独立したUSBコントローラ。 前と後ろのポートを使えば大抵別だと思う。
80 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 20:27:32 ] 46さんと同じように ttp://www.eml.ele.cst.nihon-u.ac.jp/~momma/wiki/wiki.cgi/OpenCV/複数台のカメラ.html のソースを使って複数台キャプチャーできるようにしたのですが、 画像にノイズが入ります。 ノイズはカメラ視野内に移動物体を配置しなければ発生せず、 画像サイズ(640*480)を小さく(320*240)するとほとんど目立たなくなります。 おそらくmemcpyのところでノンインターレース方式でデータを取得しているため、 前フレームのデータをコピーし終わる前に次のフレームのデータを取得してしまうことが 原因だと思うのですが、この問題を解決するにはどうしたらよいでしょうか?
81 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 21:52:22 ] エピポーラ線書く関数ってなんかバグない?係数はおかしくないのに線の傾きがなぜか0になるんだが。 大した手間でもないから結局自分で書いたけど。 あとcvBlobslibも全然使えないね。地の画素値が0だとカウントしてくんないし。 だれか使い勝手のいいラベリング実装してないかね。
82 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 21:54:58 ] ↑間違えた。地の画素値が255だとね。
83 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 23:51:50 ] 反転すりゃ良いだけじゃないの?
84 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 00:16:25 ] 2値画像ならそれでいいんだけど多値だといろいろめんどい。 多値画像対応を謳ってるけど画像の4辺が255で囲まれてると対応してくれないんだよ。 多値画像だと単純に反転というわけにはいかない
85 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 00:19:28 ] そりゃ我侭だろw 文句あんならソースに手を加えれば良い。
86 名前:デフォルトの名無しさん [2009/02/14(土) 14:48:39 ] ネットワークカメラからbmp画像を取得して動画にしているんですが、 録画するのに カメラから画像をキャプチャし、ファイルに書き出すやりかたがわかりません cvcaptureじゃ取り込めないみたいだからどーすればいいか分かる方いらっしゃいますか?
87 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 17:34:16 ] >>86 日本語が破綻してるけど、こういうことがしたいの? chihara.naist.jp/opencv/?%A5%AD%A5%E3%A5%D7%A5%C1%A5%E3%A1%F5%C6%B0%B2%E8%A5%D5%A5%A1%A5%A4%A5%EB%BD%D0%CE%CF
88 名前:デフォルトの名無しさん [2009/02/14(土) 19:23:41 ] Ubuntu(VM)にOpenCVインストールしたんですけど サンプルプログラム実行しようとしたら以下のようなエラーが出ました。 OpenCV ERROR: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support) 心あたりがある人いませんか? ※ make installやらbuild_all.shまで成功したのにcvNamedWindow()で失敗するみたいですが。 インストールの参考にしたのは以下のページです。 vision.kuee.kyoto-u.ac.jp/~yosimoto/opencv/opencv-howto/opencv-install.html
89 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 20:34:11 ] Rebuild the library with Windows, GTK+ 2.x or Carbon supportすればいい
90 名前:デフォルトの名無しさん [2009/02/14(土) 20:42:34 ] >>87 さん そういうことです;; ネットワークカメラから、そのプログラムを利用して録画したいんですが・・・
91 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 14:33:28 ] >>90 ネットワークカメラのことがわからないんだけど、 OpenCVでは認識できないからキャプチャーできないってことかな カメラの映像はBMPでとってくるしか手段がないの? そうなら>>87 の例のキャプチャ部分(cvQueryFrame())の変わりに、 そのBMPをcvLoadImageで読み込む処理を入れたらよさそう
92 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 14:36:48 ] >>90 あ、あと肝心なことを言い忘れた。 ググレカス ttp://hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi?print+200809/08090011.txt
93 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 15:07:17 ] Condensationを使って複数の物体を追いかけたいと思っていますが、 今ひとつ使い方が理解できていません。 opencv.jp/sample/estimators.html#condensation では cvConDensInitSampleSetのupperとlowerで画像全体を指定していますが、 特定の初期位置がわかっているものを追いかける場合は ここでその位置を与えてやればよいのでしょうか。 また、対象が複数ある場合はそれぞれのCvConDensationを用意するのでしょうか。 二つの位置が重なったとき、両方のパーティクルが片方についていかないための工夫があれば教えてください。 速度の違いがあれば分離できるのかな……
94 名前:デフォルトの名無しさん [2009/02/16(月) 22:32:12 ] 初心者です。 OPEV_CVのコンパイルがどうしてもできなく困っているので教えて下さい。 OS Vista コンパイラ Visual Stadio 2005 professional SP .NET Freamwork Sp2 Open CVのインクルードファイルやライブラリ、プロジェクトの設定などは chihara.naist.jp/people/2004/kenta-t/OpenCV/pukiwiki/index.php?%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB を参考に行っています。 他のXPのPCで行うと動くのですが、なぜかVisutaで動きません。 OPENCVはOSに依存するのでしょうか? 自分のPCはVisutaなのほとほと困っています。 エラーはプログラムによって変化し、 C1083: include ファイルを開けません。'afxwin.h': No such file or directory や、 fatal error LNK1104: ファイル 'cxcored.lib' を開くことができません。 cvsample です。 他のPCで動きます。 また、VSもフルイントールしています。
95 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 22:42:31 ] >>94 試しにVisual Studioを管理者として実行させてみ
96 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 23:14:51 ] Visuta www
97 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 23:36:27 ] >>96 俺は微笑ましい気持ちになった。今夜はよくネムレソウダ
98 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 00:02:44 ] Vista環境だとインスト先とか変わる可能性があるから パスがあってないんだろうな、 と思うけど、そもそもOpenCVの質問じゃないだろうから、 がんばれ、って言いたい・・・・・・・・・・・・・・・・ C1083: include ファイルを開けません。'afxwin.h': No such file or directory ============================== そんなファイルかディレクトリはないよ!
99 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:07:26 ] >>94 ググレカス www.google.co.jp/search?rlz=1C1GGLS_jaJP300JP303&sourceid=chrome&ie=UTF-8&q=afxwin.h
100 名前:デフォルトの名無しさん [2009/02/18(水) 19:12:11 ] >>95 、98 ありがとうございます。 原因なんですけれども、OpenCVのバージョンの問題でした。 良く見たら1.1を使用していました。 なので1.0を入れたらサンプルプログラムの方はすんなりと動いてくれました。 ただしビルドしたいプログラムは、MFCのところは動かなかったです。 原因はまだわかりません。XPだと動いてくれたのですが… 他も調べてみます。ありがとうございました。
101 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 00:55:39 ] >>100 >>99
102 名前:デフォルトの名無しさん [2009/02/19(木) 00:57:08 ] ?
103 名前:デフォルトの名無しさん [2009/02/21(土) 19:23:35 ] afxwin.hはMFCの一部だから 製品版VCが入ってないと無いんじゃね Windows SDKのサンプルからコピってくればいいと思うが
104 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 22:46:41 ] プログラミングを何も知らないのにいきなりOpenCVから始めようって人結構いるもんだね
105 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 02:46:49 ] 趣味じゃなくて、必要に迫られてはじめるとそうなるのが自然かもね
106 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 07:21:35 ] >>93 >cvConDensInitSampleSetのupperとlowerで画像全体を指定していますが、 >特定の初期位置がわかっているものを追いかける場合は >ここでその位置を与えてやればよいのでしょうか。 理論的には、その初期位置の確率を 1.0 、それ以外を 0.0 にすればいいわけで、 うん、それで実現できるんじゃないですかね。 >また、対象が複数ある場合はそれぞれのCvConDensationを用意するのでしょうか。 CONDENSATION は一応、トラックするオブジェクトの動き分布がガウシアンじゃなくても、 つまり、例えば複数個の Gaussian の重ね合わせとかだったとしてもうまくトラックできる、 というのが Kalman Filter に対してのウリだから、 1つの CONDENSATION で複数個のオブジェクトをトラックできるはずなんだけど、 実際にやってみると、あんまりうまくいかないんだよねぇ。 それぞれに対して1つ用意するほうがいいみたい。 >二つの位置が重なったとき、両方のパーティクルが片方についていかないための工夫があれば教えてください。 どっかで読んだ気もしたけれど、あまり「すごい工夫だな!」とは思わなくて覚えてないや。すまそ。 opencv.jp/sample/estimators.html#condensation しかし、この例あまりよくないよね。 トラック状態が x,y だけの width とかのない点単位でのトラックだし、 そもそも表示が likelihood を反映せずに、全部の particle 表示しているだけだから、 なにやってんだろう、ってかんじに見えてしまう。 せめて、likelihood が一定以上なら表示、とかにしてくれないと。 というか、ボールらしさ、を表現するようにして、x,y,radius の状態をもつようにして、 最後の表示は mean を表示するとか、likelihood が max の particle を表示するように するとかしてほしかった。
107 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 07:37:13 ] >>44 >小さい画像をcvLoadImageしてから大きい画像と同じ大きさに拡大したところ1位になりましたが、 >大きい画像を小さい画像にして比較するとまたマッチ度は10位前後になってしまいます。 なんでだろうね。変なの。詳細考察きぼんぬ。 >>50 OpenCV にゼロクロス検出関数あったっけ?ないか。 自分で実装しないといけないのか。めんどうくさいね。 どこかに普通の C 実装はありそうだけど。 >>53 Learning OpenCV けっこう良かった。 理論もかいつまんで説明してあって、このかいつまみを読むだけでもなかなか。 ちなみにどっかにうぷされ(げふんげふん
108 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 08:05:56 ] ExtraSURFのサンプルよりもマッチング条件を厳しくするのってどこいじったらいい? あとOpenSURFと比べたことのあるひといる?
109 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 08:22:13 ] pythonのopencvってswigで自動生成したの? 自動生成の後,多少手でいじってるの?
110 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 19:06:27 ] swig
111 名前:デフォルトの名無しさん [2009/02/28(土) 11:38:47 ] 画像処理ってどんな言語があってますの いろいろ無駄な物作って慣れたら画像処理専門になりたいんだけど
112 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 11:50:54 ] C++ 、C、Java、C#
113 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 15:38:12 ] >>106 トンクス
114 名前:デフォルトの名無しさん [2009/03/01(日) 05:56:40 ] 顔検出器のサンプルコード参考にして作成したんだけど コンソールアプリケーションの方はうまく動いて、 フォームアプリケーションはなぜかエラーが起きるんだ・・・ 環境はVC++2008 エラーの内容は The error looks like this: Unspecified error (The node does not represent a user object (unknown type?)) in function cvRead, C:\Program Files\OpenCV\cxcore\src\cxpersistence.cpp (5040) どうも CvHaarClassifierCascade* cascade = (CvHaarClassifierCascade*)cvLoad( "haarcascade_frontalface_alt.xml" ); のところが原因らしい なぜかフォームアプリケーションだけできないなんて・・・ 誰か解決策を教えてくださいm(_ _)m
115 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 14:00:33 ] >>114 haarcascade_frontalface_alt.xmlはある? パスはあってる?
116 名前:デフォルトの名無しさん [2009/03/01(日) 17:07:37 ] >>115 あっています 上で書いたようにコンソールの方は正常に動いてくれるので・・・ opencv.willowgarage.com/wiki/FaceDetection ここに書いてあるとおりopenCVのバグなんでしょうか?
117 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 17:15:54 ] >>116 cvLoadHaarClassifierCascade使ってみたら?
118 名前:117 mailto:sage [2009/03/01(日) 17:20:03 ] cvLoadHaarClassifierCascadeはxml読み込めないんだな。スマソ
119 名前:デフォルトの名無しさん [2009/03/01(日) 18:12:31 ] 本当に困っているので誰か助けてもらえませんか?
120 名前:デフォルトの名無しさん [2009/03/01(日) 18:53:20 ] すいません自己解決しました >>117 を参考にして、次のように修正したら直りました const char* name; name = "haarcascade_frontalface_default.xml"; CvHaarClassifierCascade* cascade = 0; cascade = cvLoadHaarClassifierCascade(name, cvSize(1,1)); ありがとうございました
121 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 19:18:32 ] cvSize(1,1)って・・・それで動くんだ
122 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 19:29:08 ] つか結局cvLoadHaarClassifierCascadeにしてもxmlの場合はcvLoadになるみたいだな。
123 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 16:27:24 ] cvSize小さいと遅くなるんじゃない。 ウィンドウの最小サイズは、XMLに書いてある。 エラーの原因はC++にしててヘッダincludeしてなくて デフォルト引数かABIが変になってるなど。
124 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 19:43:37 ] >>123 結局>>120 のソースだとcvLoadを呼ぶだけだからcvSizeは関係ないはず 第2引数はどんな値でもたぶん変わらない
125 名前:デフォルトの名無しさん [2009/03/07(土) 07:52:09 ] 質問です openCVのSVMって3以上の多クラス分類問題にも対応していますが、 ここで使用されてる手法って何ですか? リファレンスで紹介されているciteseer.ist.psu.edu/burges98tutorial.html には このことについて書いてないと思うのですけど(自分の見落としかもしれませんが どなたか教えてください
126 名前:デフォルトの名無しさん [2009/03/07(土) 08:55:36 ] 125です すいません事故解決しました openCVのSVCはlibsvmが元になっていて、libsvmのリファレンスページに書いてありました
127 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 16:36:18 ] 機械学習系だとopencv以外で便利なのはないかな
128 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 09:03:25 ] ググレカス
129 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 01:02:39 ] PlayStation3のCellでOpenCV OpenCV on the Cell cell.fixstars.com/opencv/index.php/OpenCV_on_the_Cell
130 名前:glrkXGLykzumzP mailto:ksxcvx@padovk.com [2009/04/14(火) 07:14:48 ] Uki8rL <a href="ozhpqhbmvvzd.com/ ">ozhpqhbmvvzd</a>, [url=repemfdzydvs.com/]repemfdzydvs[/url], [link=fljiqslixatb.com/]fljiqslixatb[/link], ejstamolqoro.com/
131 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 18:02:48 ] 最近opencvに貢献されたコードがc++になってるのなんなの pythonから使いにくいんだけど
132 名前:デフォルトの名無しさん [2009/04/20(月) 20:18:24 ] opencvのpythonバージョンに関しての質問があります。 ピクセル値の参照って、どうやって行うのでしょうか? c,c++だと、img->imageData[img->stepWidth * y + x]; みたいなことができたのですが、、、 どなたか教えていただけないでしょうか。