- 1 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 12:57:41 ]
- OpenCVとはインテルが開発・公開しているオープンソースのコンピュータビジョン向けのLinux/Windows向けC/C++ライブラリです。
実装分野は ・ユーザーインターフェイス ・物体分離 ・セグメンテーションと認識 ・顔認識システム ・ジェスチャー認識 ・モーショントラッキング ・感情モーション ・モーション理解 ・モーションからの構築(SFM) ・モバイルロボティクス 関連リンクなどは >2-10くらい
- 331 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 03:37:06 ]
- OpenCVをC#で使えるようにしたラッパーありますか?
- 332 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 09:25:42 ]
- >>331
www.google.com/search?num=50&hl=ja&q=OpenCV+C%23&lr= まずはググろうぜ!
- 333 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:23:53 ]
- sherperCVって本家に完全対応してるの?
- 334 名前:デフォルトの名無しさん [2008/02/06(水) 16:14:35 ]
- cvFindContoursを使って輪郭抽出をした後、各輪郭における
すべての座標を取得したいのですが、どうすればいいでしょうか? >>60 さんの書き込みを見てもなかなかうまく解決できなくて 友達に聞いても誰も分からないのでお手上げ状態になってます。
- 335 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 19:37:27 ]
- >>334
このページぐらいは探してみたほうがいいじゃないか? opencv.jp/sample/tree.html
- 336 名前:デフォルトの名無しさん [2008/02/08(金) 09:23:47 ]
- 自分めも
OpenCV097はプロジェクトがVC2003で作られ OpenCV1.0はVC2005で作られている OpenCVのソースコードデバッグするには中間ファイルを作り、cvd.libなど後ろに「d」がついている スタティックリンクライブラリをリンクすればいい
- 337 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 09:06:14 ]
- なぜdがついてるの?
- 338 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 09:21:22 ]
- d=デバッグ用
- 339 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 18:08:04 ]
- デブ
- 340 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 05:57:11 ]
- 336だけど、cvd.libはcvd.libとファイルサイズかわらず97kだったよ。
だからデブのdではないなw
- 341 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 06:05:39 ]
- そりゃー同じもの比べたら同じだろうが
- 342 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 07:09:57 ]
- wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
- 343 名前:デフォルトの名無しさん [2008/02/10(日) 12:37:48 ]
- いや誤記だが携帯からだと訂正めんどくさかったんだ。
後、低レベルな奴が多いからOpenCVのバグを取る奴もいないと思った
- 344 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:44:52 ]
- >>343
Yahoo Groups読んでると分かるが、バグ!とメールする奴は大抵使い方がおかしい
- 345 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 19:04:06 ]
- グレースケールにして表示すると上下逆さになるのは?
- 346 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 21:49:02 ]
- >>345
#include <cv.h> #include <highgui.h> void main() { IplImage *src = cvLoadImage("test.jpg",1); IplImage *gray = cvCreateImage(cvGetSize(src),src->depth,1); cvCvtColor(src,gray,CV_BGR2GRAY); cvNamedWindow("src",1); cvNamedWindow("gray",1); cvShowImage("src",src); cvShowImage("gray",gray); cvWaitKey(0); } フツーに表示されるが。
- 347 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 21:39:06 ]
- 縦のみ伸縮させたいのですが、
アフィン変換とかしないとダメですか やりたいのは画像内の楕円を円にする事です。 よろしくお願いします。
- 348 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 21:40:29 ]
- cvResizeは?
- 349 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 22:10:44 ]
- >>348
即レスありがとうございます。 画像を見ながらトラックバーで調整したいのですが 可能でしょうか。
- 350 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 22:13:00 ]
- 叶姉妹
- 351 名前:デフォルトの名無しさん [2008/02/11(月) 22:13:31 ]
- 余裕でcvResizeで可能です。はい次
- 352 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 23:11:14 ]
- >>349
トラックバーのサンプルはProgram Files\OpenCV\samples見れ
- 353 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 00:09:19 ]
- サンクス
出来マスター 入力画像のROIを変化させたらうまいこといきマスター
- 354 名前:デフォルトの名無しさん [2008/02/15(金) 09:59:29 ]
- NULL pointer(NULL array pointer is passed)
in function cvGetMat,C:\User\VP\opencv\cxcore\src\cxarray.cpp(2780) こんなエラーが出るのですが、これってどこを直せばいいでしょうか?
- 355 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 10:06:52 ]
- ガッ!
- 356 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 10:12:53 ]
- >>354
NULL配列ポインタを渡さないようにする。
- 357 名前:デフォルトの名無しさん [2008/02/15(金) 14:38:55 ]
- 誰かCvSubdiv2Dの使い方を教えてください。
ドロネー図を書いて、3角形にテクスチャを張りたいのですが、どうやって貼り付けたらいいかわかりません。 おねがいします!
- 358 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 20:40:53 ]
- >>354
存在しない画像ファイルを読んだとか。
- 359 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 23:38:11 ]
- >>357
ポリゴンのROIは無いからなぁ 注目するポリゴン内の点と連結する部分にマスクかけてcvCopy(src,dst,mask)かね
- 360 名前:デフォルトの名無しさん mailto:sage [2008/02/17(日) 15:54:28 ]
- ポリゴンするならCGALあたりと組み合わせてみたらどうだい?
BIASだとopencvのbindingあってなおかつポリゴン使う枠組みあるみたいだけど CGALよりメジャーじゃないみたいなのが不安なんだよね
- 361 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 19:08:38 ]
- fedora7で
gcc hoge.c -lopencv -lhighgui -lcxcore てやってもcv.hがない、highgui.hがない、cxcore.hがないって起こられてしまうorz インスコはfedora標準のパッケージマネージャで行いました。 なにか考えられる原因わかる方いらっしゃいますか。 解決法知ってたらお願いします
- 362 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 19:19:43 ]
- -Iオプション
- 363 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 22:41:58 ]
- haartrainingというプログラムを使って顔画像を学習し、ステージごとのパフォーマンスを比較したんですが、
最初の方だけ、ステージが増えるごとに検出率が増加してしまいました。 カスケードなので検出率は上がることはないはずなのですが・・・
- 364 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 09:04:34 ]
- libcv-devel
を入れる
- 365 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 11:46:54 ]
- >>362 >>364
ありがとうございます。 gcc hoge.c -I/usr/include/opencv/ -lcxcore -lhighgui -lcv で無事コンパイルできました。
- 366 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 16:42:56 ]
- >>361です
JPG画像を表示させた後 cvWaitKey(5000)で5秒待ち、 cvDestroyWindowでウィンドウを閉じさせようとしたのですが ウィンドウを閉じてくれません。こういうものなのでしょうか。 プログラムが終了するとウィンドウは閉じられます。 別の方法があるのでしょうか。
- 367 名前:デフォルトの名無しさん [2008/03/01(土) 14:24:17 ]
- USBカメラでは、動画が表示できていますがDVカメラだと表示されません。
cvCreateCameraCapture()は、NULLではありません。 DVカメラは使えないのでしょうか。
- 368 名前:デフォルトの名無しさん [2008/03/01(土) 17:42:20 ]
- 3次元空間の点を2次元座標上に投影するために、
cvProjectPoints2を使いたいのですが、 リファレンスを読んでも詳しい使い方がわかりません。 どなたか教えてください。
- 369 名前:デフォルトの名無しさん mailto:sage [2008/03/01(土) 17:55:32 ]
- >>368
リファレンスのcvProjectPoints2の前の"Pinhole Camera Model, Distortion"という節の 数式を読めば、cvProjectPoints2の各引数の意味するところはわからないかな? opencvlibrary.sourceforge.net/CvReference#cv_3d ただ投影したいだけなら、後半のヤコビヤンを取得する引数は要らないだろうし。
- 370 名前:デフォルトの名無しさん [2008/03/01(土) 18:50:59 ]
- >369
ありがとうございます。 教えてもらったページを見て、だいたいの引数の意味はわかりました。 しかし、object_pointsとimage_pointsに関しては少し?な感じです。 object_pointsには3次元の入力データをそのまま与えればいいのでしょうか? また、image_pointsにはどういった値を与えればいいのでしょうか?
- 371 名前:デフォルトの名無しさん mailto:sage [2008/03/01(土) 18:58:54 ]
- image_pointsはoutput arrayって書いてあるだろうが・・・
- 372 名前:デフォルトの名無しさん mailto:sage [2008/03/01(土) 23:08:51 ]
- >>367
IEEE1394カメラとDVカメラは別物 WindowsでキャプチャできるカメラならvideoInput使うかDirectShowと組合せれば使える。
- 373 名前:デフォルトの名無しさん [2008/03/02(日) 01:29:58 ]
- >IEEE1394カメラとDVカメラは別物
>WindowsでキャプチャできるカメラならvideoInput使うかDirectShowと組合せれば使える Windows用のOpenCVで用意されたのキャプチャー関数では、IEEE1394経由のDVカメラは使えないと いう解釈でよろしいのでしょうか? DirectShowでキャプチャーしてOpenCV用のフォマットに変換して処理させる事に成功しました。 アドバイスどうもありがとうございました。
- 374 名前:デフォルトの名無しさん [2008/03/02(日) 02:34:41 ]
- >371
image_pointsの点データの決定の仕方やデータの与え方がわからないのですが。
- 375 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 03:11:44 ]
- 、ミ川川川彡 ,ィr彡'";;;;;;;;;;;;;;;
ミ 彡 ,.ィi彡',.=从i、;;;;;;;;;;;; 三 ギ そ 三 ,ィ/イ,r'" .i!li,il i、ミ',:;;;; 三. ャ れ 三 ,. -‐==- 、, /!li/'/ l'' l', ',ヾ,ヽ; 三 グ は 三 ,,__-=ニ三三ニヾヽl!/,_ ,_i 、,,.ィ'=-、_ヾヾ 三 で 三,. ‐ニ三=,==‐ ''' `‐゛j,ェツ''''ー=5r‐ォ、, ヽ 三. 言 ひ 三 .,,__/ . ,' ン′  ̄ 三 っ ょ 三 / i l, 三. て っ 三 ノ ..::.:... ,_ i ! `´' J 三 る と 三 iェァメ`'7rェ、,ー' i }エ=、 三 の し 三 ノ "'  ̄ ! '';;;;;;; 三 か て 三. iヽ,_ン J l 三 !? 三 !し=、 ヽ i ,. 彡 ミ ! "'' `'′ ヽ、,,__,,..,_ィ,..r,',", 彡川川川ミ. l _, , | ` ー、≡=,ン _,,, ヽ、 _,,,,,ィニ三"'" ,,.'ヘ rー‐ ''''''" `, i'''ニ'" ,. -‐'" `/ ヽ ! i´ / ノレ'ー'! / O てのは置いておいて… object_pointsは3次元データでOK image_pointsはサイズが合ってれば値は適当(あるいは初期値)でOK それを渡すと,image_pointsに投影後の2次元座標(貴方の欲しいもの)が書き込まれる
- 376 名前:デフォルトの名無しさん [2008/03/02(日) 12:08:53 ]
- >375
わかりました。 とりあえずやってみようと思います。
- 377 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 13:01:50 ]
- こういう質問する人ってC言語のポインタ渡しの作法がわかってないのかな・・・
- 378 名前:366 mailto:sage [2008/03/03(月) 13:03:02 ]
- cvDestroyWindow
実行後 cvWaitKey(1); でウィンドウが消えました。 とりあえず報告まで。。。
- 379 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 17:52:25 ]
- >>325
警告だけでエラーが1つもない件。
- 380 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 14:27:52 ]
- 他にも画像処理ライブラリーはたくさんあるのに
なぜOpenCV?
- 381 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 18:22:18 ]
- 君が画像処理ライブラリの機能比較ページとか作ってくれたら、みんな喜ぶ
- 382 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 12:35:20 ]
- USBカメラのキャプチャ実行中にUSBを引っこ抜いたら
どうなんの? こわくて実験できません
- 383 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 19:10:26 ]
- PCが物故割れる
- 384 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 16:50:51 ]
- あるJPEGファイル(ネットワークカメラの映像の1コマ)を
OpenCVのcvLoadImage関数に読ませようとすると、 IPLイメージにデータが入らず、 cvShowImageで表示させると灰色の画像が表示されます。 これはJPEGファイルに問題あり? それともcvLoadImageのバグでしょうか? .NET FrameworkのSystem::Drawing::Bitmapを使って JPEGファイルを読み込んだときは問題なく表示されましたが 処理時間の高速なOpenCVを極力使いたいと考えています。
- 385 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 19:05:53 ]
- その「あるJPEG」をアップしてみたら?
- 386 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 02:05:38 ]
- 二値化して、物体検出やってるのですが
二値化画像が真っ黒(要素がすべて0)かどうか判定するには cvCountNonZeroを使うのが正解でしょうか?
- 387 名前:384 ◆EbBEqBu6yI mailto:sage [2008/03/11(火) 10:22:41 ]
- 384です。
問題の画像をアップしてみました。(Passは9999です) www.uploda.org/uporg1298511.jpg.html #JPEGファイルそのものに以上がないか、解析ツールでこちらでも調べてみます。
- 388 名前:384 ◆EbBEqBu6yI mailto:sage [2008/03/11(火) 10:32:26 ]
- JpegCheckerで調べてみたところ
画像が破損しているということはありませんでした。 info_JPEGを使って調べてみたところ、 [ 画質 ] 93 % [ サイズ ] 16082Byte [ 画素数 ]( 320, 240 ) [サンプリング](2,1):(1,1):(1,1) [インプラント ](なし) [ サムネイル ]「○なし」 [ インタバル ](無効) [ フォーマット ]基本DCT方式 / フォーマット「不明」 コメントは 「TOSHIBA NETWORK CAMERA IK-WB21」← 使用しているネットワークカメラ Exif情報は、「なし」です。
- 389 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 11:06:18 ]
- cvLoadImageで読めて、cvShowImageで表示できたけど。
cvWaitKey?
- 390 名前:384 ◆EbBEqBu6yI mailto:sage [2008/03/11(火) 11:37:16 ]
- 確認していただいてどうもありがとうございます。
当方の環境では以下のような感じで読み込めないんですよ。 ↓ www.uploda.org/uporg1298567.jpg.html (pass:9999) cvLoadImage実行後に画像データが代入されている(はずの) IPLイメージのimageDataをデバッグ時に見てみると「ヘヘヘヘヘ・・・」となっているので cvLoadImageの段階で失敗しているようです。 当方の環境は Visual Studio .NET 2003で C++(コンソールアプリケーション)を使っています。 CPUはGenuine Intel(R) CPU T2500 @ 2.00GHz を使用しています。 読み込める方もいらっしゃるということは、環境によるのでしょうか・・・。
- 391 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 12:03:43 ]
- 同じプログラムで別のjpgファイルを読めるならjpgに原因が、そうでないならプログラムに原因があんじゃね
cvLoadImageは読み込めないとNULLを返すような気がすんだけど、imageDataが見れるってことはNULLじゃないんだよね?
- 392 名前:384 ◆EbBEqBu6yI mailto:sage [2008/03/11(火) 12:57:36 ]
- cvLoadImageから返される結果は、NULLではないです。
(width, height, nChannelsも値が入って参照できているので)
- 393 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 16:00:32 ]
- >>392
関係無いだろうけどファイルのアクセス権限は?
- 394 名前:384 ◆EbBEqBu6yI mailto:sage [2008/03/11(火) 16:49:35 ]
- >>393
ファイルのアクセス権限ですが、 どのユーザ権限でも「読み取り」「読み取りと実行」は許可されています。 (現在、当方のPCでは Administrators, SYSTEM, Users, XXX(当方のログイン名。Administrator権限。)が存在しています。) ソースコードはこれだけです。 IplImage* pimgJpeg = cvLoadImage("test.jpg"); ← 387でアップした問題のjpg cvSaveImage("OpenCV.bmp", pimgJpeg); cvNamedWindow("test", 1); cvShowImage("test", pimgJpeg); cvWaitKey(0); cvReleaseImage(&pimgJpeg); 同プログラム、同画像でを他のパソコンでも試してみたのですが 同様の症状となりました。 jpg画像を変えて試したところ、正常に読み込める(imageDataに値が入る)ことができました。 #私見ですが、どうもjpgに原因がありそうと感じてきました。
- 395 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 19:32:23 ]
- 別のJPGでできて、
問題のJPGだけが出来ないのならJPGが壊れてるのかもね 問題のJPGは何で作った?デジカメ?フォトショから出力? そのJPGをフォトショやirfanとかで再保存して読み込んでみたら? 問題のJPGデータを読み込みたいのであって その画像を表示させたいのではないってのなら 意味無いけど
- 396 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 21:44:05 ]
- どうでもいいけど、>387が全然拾えない。まぁ恐らく、jpegのフォーマットがどこか変なんだよ。
- 397 名前:384 ◆EbBEqBu6yI mailto:sage [2008/03/12(水) 19:19:36 ]
- 遅くなってすみません。
JPGに問題があるのかな、と思いつつ明日cvLoadImageの関数内スコープして中で何をやっているか見ようと思います。 どうもありがとうございました。 >>395 問題のJPGデータは東芝のネットワークカメラから取得した画像です。 やりたいこととしては、問題のJPGデータを読み込みたい(ネットワークカメラから取得した画像をプログラムから直接読み込みたい)のです。 >>396 ご指摘を見て確認したら、うpろだから消えていましたので、 再度アップしました (pass:どちらも9999) www2.uploda.org/uporg1300870.jpg.html (問題の画像) www.uploda.org/uporg1300869.jpg.html (実行結果、「問題の画像」という名前になっているのは間違いです)
- 398 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 19:35:04 ]
- 普通に表示できたよ (´・ω・`)
- 399 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 00:04:26 ]
- >>397
だから、指摘されているにも拘らずそんなに流れの速いアップローダを使うのは嫌がらせ?
- 400 名前:384 ◆EbBEqBu6yI mailto:sage [2008/03/13(木) 09:33:46 ]
- すみません。
アップローダ側で消されてしまうのに気づきませんでした。 画像が見れなければ話になりませんよね。 アップローダー変更しました。 ご迷惑おかけしてすみません。 sakuratan.ddo.jp/uploader/source/date73885.jpg (問題の画像) sakuratan.ddo.jp/uploader/source/date73886.jpg (当方での実行結果)
- 401 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 11:43:08 ]
- 一応報告 >>394のプログラムのコピペ+>>400の画像で動いたよ
WinXP + .NET 2003
- 402 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 22:50:47 ]
- >>400
コメントの入り方がちょっとおかしい悪寒。 今手元に細かいフォーマットチェックのできるツールがないからよく判らんけど。 IrfanViewだとコメントが文字化けする。
- 403 名前:デフォルトの名無しさん [2008/03/17(月) 18:22:01 ]
- Cygwin上でOpenCV1.0.0をインストールして随分と使っています。
前からアレ?と思ってはいたのですが、 highguiを使用しているプログラム(ウィンドウやcvWaitKey)では、 更にいくつかの条件を満たしていないとプログラムが強制終了してしまいます。 具体的に見つけたケースとしては、実行されなくても良いから cvMinEnclosingCircleやcvCvtColorを書いておく必要があります。 インストールに失敗しているのか、 何か手順が足りないのか分かっていません。 このため、他から持ってきたプログラムを動かせないケースがあったりして 困っています。何か御存知の方、いらっしゃいますか?
- 404 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 19:49:53 ]
- どの関数で強制終了してますか?
- 405 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 20:20:47 ]
- >>403
てことは if(0){ cvMinEnclosingCircle() } っていう風に書いておかないと落ちるってことか? バッファ壊してるんじゃないの?
- 406 名前:デフォルトの名無しさん [2008/03/18(火) 10:33:14 ]
- >>404
言葉足らずでした。条件を満たしていない場合には、プログラム自体が 起動直後に強制終了しているようです。最初のprint文も実行されませんので。 >>405 cvMinEnclosingCircle(NULL,NULL,NULL);というのを書いておけば大丈夫です。 実行されるとエラーになってしまうので実行はされていませんが。 バッファ壊しているというのはどんな状態を指しているのですか?
- 407 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 01:39:51 ]
- >実行されるとエラーになってしまうので実行はされていませんが。
禅問答ですか?
- 408 名前:デフォルトの名無しさん [2008/03/19(水) 23:36:37 ]
- >>407
「実行されていませんが」は訂正します。 「実際には実行されていませんが」もしくは「実行されるようにしていませんが」です。 文章がおかしかったですorz
- 409 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 00:09:26 ]
- > 実際には実行されない
つまり if(null) cvMinEnclosingCircle(NULL,NULL,NULL); こういう事ですか? そのままベタに書いたなら実行はされてますが
- 410 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 00:11:48 ]
- 問題が再現する簡単なコードをくれ
- 411 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 01:35:33 ]
- >>408
「実行されていませんが」のような自分の解釈で状況説明しようとするから 問題が起きる。2chで質問する奴の9割はそいつ自身の状況把握が信用ならないの だから、自分の解釈を入れることは極力避けなければならない。 ではどうするかというと、これこれこういう結果になった、こういうエラーが 出た、というのをコピペまたは手書きで写すことによって状況説明する。 つまり回答者の目を代行することに努める。回答者から見れば質問者の 解釈を経由するというのは情報に誤りが入る原因を増やすことでしかない。
- 412 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 09:34:18 ]
- よくある話。自分のバグでどこか領域を壊しているんだろ。
無関係のコードを書くと動くのは、そのコードによって壊す領域がずれて たまたま動いているだけ。
- 413 名前:403 [2008/03/21(金) 13:17:19 ]
- 短いコードを作って試しました。
[コンパイル] g++ `pkg-config --cflags opencv` a.c `pkg-config --libs opencv` -o a.exe
- 414 名前:403 [2008/03/21(金) 13:18:19 ]
- [ケース1の動く例]
#include <stdio.h> #include <cv.h> #include <highgui.h> int main( int argc, char** argv ){ printf("OK\n"); while(cvWaitKey(1) != 'A'); cvCvtColor(NULL,NULL,CV_BGR2Lab); cvMinEnclosingCircle(NULL,NULL,NULL); return 0; } この場合にはOKが出力されています。 また、cvCvtColorやcvMinEnclosingCircleは1つ以上書いてあれば良い。
- 415 名前:403 [2008/03/21(金) 13:19:05 ]
- [ケース1の動かない例]
#include <stdio.h> #include <cv.h> #include <highgui.h> int main( int argc, char** argv ){ printf("OK\n"); while(cvWaitKey(1) != 'A'); return 0; } この場合には何も出力されずに、プログラムも終了してしまいます。
- 416 名前:403 [2008/03/21(金) 13:19:41 ]
- ケース2の動く例
#include <stdio.h> #include <cv.h> #include <highgui.h> void Dummy(){ cvCvtColor(NULL,NULL,CV_BGR2Lab); cvMinEnclosingCircle(NULL,NULL,NULL); } int main(int argc,char** argv){ printf("OK\n"); while(1)cvWaitKey(1); } ケース1の動く例と同様の結果が得られます。
- 417 名前:403 [2008/03/21(金) 13:20:33 ]
- ケース2の動く例
#include <stdio.h> #include <cv.h> #include <highgui.h> void Dummy(){ } int main(int argc,char** argv){ printf("OK\n"); while(1)cvWaitKey(1); } ケース1の動かない例と同様の結果が得られます。 -- 長く見苦しいものになってしまい申し訳ありません。 自分のコードからは問題点を見つけられず、 環境の構築に問題があるのでは?と考えてしまっているのですが 何かご存知の方が居られましたら御教授ください。
- 418 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 17:20:34 ]
- WinXPSP2
cygwin OpenCV1.0 で [ケース1の動く例] [ケース1の動かない例] ケース2の動く例 ケース2の動く例(ケース2の動かない例?) 全部コンパイルできたし、動いたよ 実行後 OK 出たまま応答しなくなるけど・・・ これじゃキー入力は受け付けないよ、当たり前だけど
- 419 名前:403 [2008/03/21(金) 20:03:27 ]
- >>418
ケース2の2つめは動かない例です。書き間違えましたorz キー入力を受け付けないことはプログラム通りですので問題ありません。 私も環境は同様ですので、OKが出ないケースがあることに困惑しています。 環境の構築に不備があると考えるのが妥当とは思うのですが、 どこに不備があるのかさっぱり分からなくて… 試していただきありがとうございます。
- 420 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 20:28:43 ]
- printfの次にexit()とかfflushとか入れてみたら。つかデバッガ使えば。
- 421 名前:418 mailto:sage [2008/03/21(金) 20:40:28 ]
- >>403へ
#include <stdio.h> #include <cv.h> #include <highgui.h> int main(int argc,char** argv){ printf("OK\n"); while(1)cvWaitKey(1); } void Dummy(){ cvCvtColor(NULL,NULL,CV_BGR2Lab); cvMinEnclosingCircle(NULL,NULL,NULL); } ケース2の動く例のmainとdummyを前後入れ替えただけ これが動かなければ今までの経緯から コード領域を壊してる恐れが高いと思われ cywinの再インスコとOpenCVの再インスコを進める それでも無理だったらOS再インスコもな つかOpenCVはどうやってインスコしたんだ?
- 422 名前:デフォルトの名無しさん [2008/03/21(金) 23:16:49 ]
- 俺の記憶では(ver0.97)
cvWaitKey(1); はバグがあった 括弧のなか0にしてもだめか?
- 423 名前:403 [2008/03/22(土) 00:32:49 ]
- >>418
入れ替えても動くことに変わりありませんでした。 また、入れ替えた場合にDummyの中身を消すと、同様に動かなくなりました。 しかし、やはり動作環境に問題がありそうですね。 >>420 実はデバッガの使い方がわからなくて。 再インストールの前に勉強して使って調べてみます。 >>420 OpenCVは1.0.0を入れています。括弧の中は0にしても変わりありませんでした。 OpenCVスレの皆様、あやふや文面の質問に対して、 親身なアドバイスをしていただきありがとうございます!!!
- 424 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 14:36:21 ]
- 変わった事やろうとしてる癖にスキル低いな
- 425 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 00:20:51 ]
- cvAgvをつかってモノクロ画像の輝度平均値を求めたいのですが
cvAgvのマニュアルを読むとスカラー値に出力されるとなっています。 このスカラー値の扱いかたがよく分かりません。 スカラー値から欲しい平均値を取り出すにはどうしたら良いのでしょうか。
- 426 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 00:24:04 ]
- CvScalarのマニュアル読んでくれ
- 427 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 00:39:29 ]
- >>426
読んだけど分がらねえ CvScalarを参照して代入している例文だけでも教えて頂けないでしょうか。 もしくはどのへんから出直したら良いか教えて下さい。
- 428 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 00:40:20 ]
- Cの文法からやりなおせ
- 429 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 07:56:33 ]
- >>427
ヘッダ嫁
- 430 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 14:32:15 ]
- >>429
.val[0]でとれました。 お騒がせしてすみません。 文法から出直しまふm(_ _)m
- 431 名前:デフォルトの名無しさん [2008/03/25(火) 11:33:23 ]
- 日本語マニュアルのcvCreateCameraCaptureで
--------------- 関数 cvCreateCameraCapture は, カメラからビデオストリームを読み込むために,CvCapture 構造体を確保して初期化する. Windows では,次の二つのカメラインタフェースが利用できる:Video for Windows(VFW),Matrox Imaging Library(MIL). Linux では,次の二つカメラインタフェースが利用できる:Video for Linux(V4L),FireWire(IEEE1394). --------------- とあります。 IEEE1394接続のカメラ(DVカメラではない)を使うにはDirectShowを経由すれば よいようなのですが、具体的にはどのようにすればよいのでしょうか。
|

|