【Intel】OpenCV総合スレ 5画素目【画像処理】
: [] 2013/10/25(金) 17:28:16.71 OpenCVはインテルが公開したオープンソースのコンピュータービジョンライブラリ。 現在はWillowGateが開発している。 本家 ttp://opencv.willowgarage.com/wiki/ 日本語資料など ttp://opencv.jp/ 前 【Intel】OpenCV総合スレ 4画素目【画像処理】 ttp://toro.2ch.net/test/read.cgi/tech/1329040627/ : [sage] 2013/10/25(金) 17:30:41.75 画像処理 その14 ttp://toro.2ch.net/test/read.cgi/tech/1370170263/ 金出せば色々あるけど、とりあえず安い部類の画像処理ライブラリ。 TEO ttp://teo.sourceforge.jp/ IPP \26,250 ttp://www.xlsoft.com/jp/products/intel/perflib/ipp/index.html $199 ttp://software.intel.com/en-us/articles/intel-integrated-performance-primitives-purchase/ : [sage] 2013/10/25(金) 17:33:31.83 ttp://opencv.jp/ 2.2 C++ ttp://opencv.jp/opencv-2svn/cpp/ ttp://opencv.jp/opencv-2svn/cpp/imgproc_miscellaneous_image_transformations.html sample 2.1 or 2.0 ttp://opencv.jp/sample_code 1.1pre ttp://opencv.jp/opencv-1.1.0/document/ 1.0 ttp://opencv.jp/opencv-1.0.0/document/ sample 1.1pre or 1.0 ttp://opencv.jp/sample/ : [sage] 2013/10/25(金) 17:34:12.59 OpenCV 2.4以降でMatと配列を相互変換したい。 Matは幅w、高さhのCV_32FC3型。 配列はw*h*3のfloat型3次元配列。 for文を使わずシンプルに書きたいんだけど、 いい方法ないかな? : [sage] 2013/10/25(金) 17:38:55.18 3Dとか動画も扱えますか? : [sage] 2013/10/25(金) 17:53:07.71 ノ ゚.ノヽ , /} ... ,,イ`" 、-' `;_' ' ..::::::::::::::... ,-、 _.._ ( (,(~ヽ'~ ..::::::::::::::::::::::: )'~ レー' 〉 ヽ i`'} .::::::::::::::::::::::: ~つ '-ー、 i | i' ...::::::::::::::::::::::: / < / 。/ ! ......::::::::::::::::::::::::: これは乙じゃなくて / ~^#12288; /},-'' ,●:::::::::::::::::::::::::::::::::::: i、 ,i' _,,...,-‐-、/ i :::::::: .::::::::::::: ..ゝ <,,-==、 ,,-,/ .::::::::::: 放射能がうんたら ) {~''~>`v-''`ー゙`'~ ..::::::::: ........::. { レ_ノ ..::::::::. ......::::::::: ノ '' ..::::::: ...::.:...::::::::: .::::::::: ...:......:::::::::::: . .:::::::::::. ..... .. ..:::::::::::::::::::::::: :::. ::::::::::::::::.::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.. :: ::.. .:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::: ::. ::::::::::::::::: :::::::::::::::::::::::::::::: ::::: .:: ::. ::: : [] 2013/10/25(金) 19:54:30.16 いちもつ : [sage] 2013/10/25(金) 19:59:26.24 for文を使いたくない理由による。 : [] 2013/10/26(土) 10:46:42.66 ググったらできました!ありがとうございまいた : [] 2013/10/26(土) 10:51:15.28 916 57 [sage] 2013/10/25(金) 21:38:54.52 ID: Be: openCV触ってみたが、cで扱った時よりか大分楽だな。 インストールからして凄く楽々 開発も楽々 ちっくら、惚れた : [] 2013/10/26(土) 11:10:57.43 一般人なら英語を読めて当然とは思わないけど、プログラマなら当然でしょ。 これだけ日進月歩の激しい分野でどこかの誰かの翻訳待ちとか頭悪すぎる。 : [sage] 2013/10/26(土) 11:20:49.91 立てたのか : [sage] 2013/10/26(土) 11:37:11.83 プログラマは頭なんてよくないよ 一種のサバン症候群だから日本語は苦手 : [sage] 2013/10/26(土) 11:45:47.82 画像処理15に合併申し込まないか? : [sage] 2013/10/26(土) 12:09:57.71 英語ならまだいいがnginxとか最初ロシア語でしたし : [sage] 2013/10/26(土) 14:50:31.23 ロシア語で考えるんだっ!! : [] 2013/10/27(日) 07:29:51.98 pythonで使っても速いっすか? : [sage] 2013/10/27(日) 10:28:21.15 中身は C だからな 下手なループとかを Python 側で書いてしまわなければ桶 : [sage] 2013/10/27(日) 10:33:45.51 冗談抜きでプログラムさくさく書けるひと尊敬するわ コミュ障が多いけど : [sage] 2013/10/27(日) 10:37:26.53 最近ずいぶん熱心にマルチポストしてるようだけど 医者に罹る気はないかい? : [] 2013/10/27(日) 10:39:53.41 2ちゃんにクロスポストの機能があればなぁ : [sage] 2013/10/27(日) 10:59:29.93 こういうライブラリこそJSで書けば速くなるのに : [sage] 2013/10/27(日) 11:02:46.97 全く根拠がないな : [sage] 2013/10/27(日) 11:05:32.10 WebGL がサクサク動く時代だからな WebCV.js があっても驚かない自信はある : [sage] 2013/10/27(日) 11:06:27.15 実行時最適化のおかげで行列が速い速い ES6からSIMDも入るしJSで書けば一足先に未来へ行ける : [sage] 2013/10/27(日) 11:20:25.29 ああ、馬鹿なんですね : [sage] 2013/10/27(日) 11:22:29.85 極一部のレアケース除いてJSがC/C++より速いわけねーだろ・・・。 と思ったけどJSと比べられてるのは文脈的にPythonか?それならそうだろうな。 : [sage] 2013/10/27(日) 11:26:05.54 ひょっとしてブラウザじゃなくて node.jsみたいなの想像したけど に先越された : [sage] 2013/10/27(日) 11:39:32.94 そうでもない JSの実行速度はかなり速い ブラウザのおまけだった時代と違う 今や速度ではアセンブラがライバル 昔のイメージで見ると時代に乗り遅れる : [sage] 2013/10/27(日) 11:43:15.73 笑っていいよね。うぬぼれが過ぎて。 : [sage] 2013/10/27(日) 11:44:34.38 Intel自身がOpenCVを書く言語を誤ったと認めているからね。 大量のデータに小さな命令を適用するにはVM方式のほうが速度面で有利らしい。 : [sage] 2013/10/27(日) 11:45:34.29 ttp://www.techempower.com/benchmarks/#section=data-r6&hw=i7&test=db ふーん : [sage] 2013/10/27(日) 11:46:57.54 はいはい。アセンブラと勝負しててね。 : [sage] 2013/10/27(日) 11:49:37.06 こういうライブラリには実行時最適化が有利に働くね : [sage] 2013/10/27(日) 11:51:19.46 速度の話は門外漢だから触れないけど ライブラリをC/C++で書くというのは、大抵の言語に存在するFFIを利用できることに他ならない いちいちポーティングしなくても使用できる点において絶対的に優位だと思う VMだとそうはいかないだろう : [sage] 2013/10/27(日) 11:52:07.44 実行時最適化って言葉を使いたいお年頃なのかな?ボク? : [sage] 2013/10/27(日) 11:58:32.12 技術板である以上、JSのほうが速いとわかったらJSで書き直す有志が 出てくると思う OpenCVの倍以上速くなる : [sage] 2013/10/27(日) 12:00:16.34 この板ってのはさすがにないw この板で生み出されたものがまずないもんw : [sage] 2013/10/27(日) 12:03:15.55 ライブラリが使用されるには実装に加えて保守が必要だからねー JSでしか使えないライブラリでそんな人足が集まるだろうか? : [sage] 2013/10/27(日) 12:05:53.98 形になったら寄贈すればいいんだよ GoogleとかApacheに : [sage] 2013/10/27(日) 12:07:03.33 言われて見るとム板発ってないな。 いい機会だからやってみたらいいんじゃね。 : [sage] 2013/10/27(日) 12:07:32.20 ES7からexport入るし他の言語から呼び出される側になるだろうね ライブラリは高速性を生かしてJSで書き アプリは環境固有のネイティブで書く : [sage] 2013/10/27(日) 13:05:28.72 Javascript製のOSが出てきているのでJavascriptがネイティブ言語になる可能性もある Javascriptはシステム記述言語としても成熟してきた : [sage] 2013/10/27(日) 13:51:11.02 >>38 せっかく作っても叩く香具師ばっかだからな : [sage] 2013/10/27(日) 13:52:42.83 思ったよりたくさんあるな ttps://npmjs.org/search?q=openCV : [sage] 2013/10/27(日) 14:51:28.14 拾い物 ttp://www.youtube.com/watch?v=h9WDG_JRY0E ttp://www.youtube.com/watch?v=wQx-tb-W5_k : [sage] 2013/10/28(月) 01:30:48.37 オライリーのopencv第2版が出るらしいけど 2.x系の説明は追加されるのかなぁ。 : [sage] 2013/10/28(月) 13:18:32.13 ちくしょう買ったばかりなのに;; まー追加分はwikiとか見てるけどさ・・・ : [] 2013/11/01(金) 00:25:44.39 Mac のPythonでOpenCVを使いたいと思い ttp://slowquery.hatenablog.com/entry/2013/06/09/121420 を参考にHomebrewでインストールしました。 このサイトに乗っているデモをダウンロードして実行したのですが running: color_histogram.py OpenCV Error: Assertion failed (size.width>0 && size.height>0) in imshow, file /tmp/opencv-YuGx/opencv-2.4.6.1/modules/highgui/src/window.cpp, line 261 Traceback (most recent call last): File "color_histogram.py", line 38, in <module> cv2.imshow('camera', frame) cv2.error: /tmp/opencv-YuGx/opencv-2.4.6.1/modules/highgui/src/window.cpp:261: error: (-215) size.width>0 && size.height>0 in function imshow Cleaned up camera. と出てしまいます。なにがおかしいのでしょうか? : [sage] 2013/11/01(金) 08:48:22.44 おまえの頭 : [sage] 2013/11/02(土) 00:43:19.46 バージョンが古いんじゃないかこれ : [] 2013/11/06(水) 19:41:00.92 Officeなどにゼロデイ脆弱性、Word用いた標的型攻撃も観測 米マイクロソフトは2013年11月5日、Microsoft Officeなどに未修正の脆弱性 (CVE-2013-3906)が存在することを明らかにし、注意を呼び掛けた。 ttp://www.atmarkit.co.jp/ait/articles/1311/06/news105.html (前略) 脆弱性が存在するのは、Windows Vista、Windows Server 2008、 Microsoft Office 2003~2010とMicrosoft Lync。 Microsoft Graphics ComponentのTIFF形式の画像処理に問題があり、 細工を施したTIFF画像を開くと、攻撃者に権限を奪取され、リモートからコードを実行されてしまう恐れがある。 (後略) : [sage] 2013/11/07(木) 12:44:05.62 OpenCVに梱包されている目の検出器で検出された領域というのは、 どのくらい確からしいものなんだろう。 領域内のある程度決まった場所に目頭とか目尻って出てくるんだろうか。 : [sage] 2013/11/08(金) 00:27:09.17 そこまでこだわるんならAAMとか使った方が良いんじゃない? : [] 2013/11/09(土) 18:04:08.77 opencvを用いて部分的にSURFを抽出する処理を書いています。 ですが、全体に対してSURF抽出をした場合と、部分的にした場合とでは SURFの出力が異なってしまうのですが、原因がわかりません 以下画像です。 ちなみに2枚目の画像は、マスク画像で、これを使って部分的にSURF抽出してます。 ttp://uploda.cc/img/img527df9a52daa5.png ttp://uploda.cc/img/img527dfa737a888.png : [sage] 2013/11/09(土) 21:02:43.07 "SURFの出力"を詳しく知りたい。 取れるkeypointが異なるのか、取れたkeypointの特徴量が異なるのか、マッチングの結果が異なるのか。 : [] 2013/11/10(日) 00:09:21.39 とれるキーポイントの場所が異なる。 具体的には、の一枚目の画像で、右側の画像ではイルカの上側付近に特徴点が 抽出されてるのに対して、左側の画像ではその部分に特徴点が無いんです。 部分的にSURF抽出すると 画像の黒いエッジ付近にやや、特徴点が抽出されてしまっているのをどうにかしたい。 この部分はマスクで処理しているので、決して画素値0として処理しているわけではないです。 : [sage] 2013/11/10(日) 00:33:48.05 塗りつぶすのがいかんのじゃない? 塗りつぶすんじゃなくてちゃんとカットしたのと比べてみた? : [sage] 2013/11/10(日) 00:34:41.38 失礼。 マスクしてたのね。 : [sage] 2013/11/10(日) 21:33:33.48 質問です。opencvsamples\cpp\peopledetect.cppのHOGの人認識プログラムの処理速度を改善する方法はありますか 動画中の人物を認識しようとしているのですが、自分の試した限りでは最速でも1フレームあたり0.7秒程度かかってしまいまいます これをなんとか1フレームあたり0.2~0.3秒で処理したいのです もし難しいようであれば他の手法やライブラリを紹介していただけるとありがたいです。高額でなければ有料のものでも構いません : [sage] 2013/11/10(日) 21:36:20.83 基本的に画像処理の速度というのは精度とトレードオフだから : [sage] 2013/11/10(日) 22:42:41.63 CUDA環境入れてgpu::HOGDescriptorを使う。 : [sage] 2013/11/10(日) 22:45:53.83 CPUパワーを上げる : [sage] 2013/11/10(日) 23:38:37.31 マスクに関しては0として計算してしまう仕様なんだろうね。keypointの場所に関しては今のところわからない… その場しのぎの手段だけど、左図でdetectionした後に各keypointの座標とマスクを参照して切る処理を自作するとか。 : [sage] 2013/11/11(月) 00:29:22.93 質問です。 cv:Matを用いて1ch 3次元のヒストグラムを操作する処理を作成しているのですが現在配列へのアクセスにてこずっています。 Matにおける3次元配列へのアクセス方法を教えて頂けないでしょうか? 初歩的な質問だと思いますがよろしくお願い致します。 : [sage] 2013/11/11(月) 09:28:12.82 え、Matって三次元に対応してるの? : [sage] 2013/11/11(月) 23:53:49.03 普通にカラー画像と同じアクセスの仕方でできるべ : [sage] 2013/11/12(火) 07:48:13.84 cv::Matは宣言の仕方でアクセス法が少し違うのでコードを貼ってもらえると話が早いです。 : [] 2013/11/12(火) 17:46:48.29 オライリーの詳解opencv買っちまったから IplImageとかのほうでいまだにやってるわ。 : [sage] 2013/11/12(火) 19:17:03.04 IplImageに毎回変換するの面倒とか思ってたら 気がついたら動画の読み込みと作成だけOpenCVにやらせて、 画像処理は自力になった : [sage] 2013/11/12(火) 20:16:20.53 OpenCV 2.4.7 でたね。 次の 2.4.8 はいまのところバグ修正が9件あるだけ。 : [sage] 2013/11/12(火) 20:34:46.62 貯金箱ってどこでも豚なんですね ttp://opencv.org/wp-content/themes/opencv/images/donate.png : [sage] 2013/11/13(水) 02:26:37.01 Mat_の方が画素アクセスとかtemplateで関数宣言するのも楽じゃない? : [] 2013/11/15(金) 07:12:27.22 シーケンスの要素を削除するときのエラーについて質問します あるシーケンスA(CvSeq *A)の 総数(A->total)が500個でした。 そこで for(i=0;i<300;i++){ cvSeqRemove(A,i) } をすると、i<300では大丈夫なのですが、iを350あたりより大きくすると エラーがおきます。 シーケンスの数は500なのに、なぜ350個以上削除するとエラーが起きるのでしょうか?? : [sage] 2013/11/15(金) 07:52:47.08 うしろから消してみたら? : [sage] 2013/11/15(金) 08:00:04.24 なるほど、削除すると同時に前へずれていくのを忘れてました。 : [sage] 2013/11/18(月) 05:51:33.00 以下の4行目のように一度シーケンスに格納したあと、 すぐにそのシーケンスから中身を取り出して ->size の値をを調べてみると まったく違う値になります。どうしてですか・・・ 正常値は10~30なんですが、取り出した後は22430958309(整数)というありえない数値になってます CvSURFPoint *pp1=(CvSURFPoint*)cvGetSeqElem(keypoints1,i); cout<<pp1->size<<endl;//ここは正常値 cvSeqInsert(new_keypoints,new_keypoints->total,pp1); CvSURFPoint *SURFP=(CvSURFPoint*)cvGetSeqElem(new_keypoints,new_keypoints->total-1); cout<<SURFP->size<<endl; : [sage] 2013/11/18(月) 18:53:48.67 bgfg_segmのサンプルをビルドして実行してみたんだけども、何も設定した覚えがないのにブレークポイントが発生して最後まで動かない...。どうしてかわかる??やっぱりサンプルのコードにバグがあるのかな...。 : [sage] 2013/11/18(月) 20:08:02.15 segmってくらいだからセグメンテーションフォールトでしょう(断言) : [sage] 2013/11/20(水) 15:40:09.21 前に3次元配列へのアクセスについて質問させて頂いた者です。 自主解決出来ました! 3次元用のatが定義されてたんですね。 反応してくださった方ありがとうございました! : [sage] 2013/11/25(月) 19:04:31.42 初心者です opencv2.4.6を使っているんですが、以前使えていたcvAndの機能はcvクラスではどんな使い方(cv::?)にすれば良いのでしょうか? リファレンスを見つけたのですが分からなくて…… よろしくお願いします : [sage] 2013/11/25(月) 21:45:27.38 リファレンスへのリンクはよ : [sage] 2013/11/25(月) 22:00:16.44 CvMatとMatのことで悩んでおります。 以下のCvMat型の表記をMat型に直すにはどうすればよいのでしょうか。 ご存知の方いらっしゃったらご教授下さい。 CvMat *cvMat; CV_MAT_ELEM(*cvMat, int, x, y) = value; : [sage] 2013/11/25(月) 23:36:25.10 83です。 mat.at<int>(j,cur) = (int)val; にて書き換えが出来たと思ったのですが、matの中身を参照したところ 浮動小数点で表示されてしまいます。 調べたところcreateが以下のようになっており mat.create( X,Y, CV_32FC1); 3番めの引数をCV_8UC4等に変えてみたのですが、 そうするとmatが正しく初期化されていないとエラーが出てしまいます。 対策方法有りましたらご教授お願いします。 : [sage] 2013/11/26(火) 01:34:13.43 何をやりたいか整理して話してください。 ・使いたい型はuchar?float? ・チャンネル数は1?4? ・書き込みたい値の型はint? いろいろ混ざりすぎて何やりたいかさっぱり : [sage] 2013/11/26(火) 17:37:09.36 83です、申し訳ございません、整理させていただきます。 あるテキストファイルから1箇所ずつint型で数値を抜き出して Mat型に格納したいです。Matに格納後、中身を確認したところ、 整数値ではなく浮動小数点で全く違う値が示されてしまいます。 0~255の数値を「,」で区切った、 32行ラ500列の以下の様なテキストファイルが有ります。 2, 32, 255, ・・・(32行) ・ このテキストファイルから1箇所(,で区切られた数値)ずつ抜き出して int型にして下記のようにmatに代入していきます。 mat.at<int>(x,y) = (int)val; //valは正常な数値を示しています。 : [sage] 2013/11/26(火) 17:41:15.81 そしてその後 以下のようにして中身を表示します。 for (int i = 0; i < mat.rows; i++) { Mat d(mat, Rect(0,i,mat.cols,1)); cout << d<< endl; } しかし、ここで [2.8025969e-045, 4.4841551e-044, ・・ のように浮動小数点で全く違う値が表記されてしまいます。 正確に表示させられるようにするにはどうすればよろしいでしょうか。 : [sage] 2013/11/26(火) 18:45:15.35 cout << (int)d<< endl; : [sage] 2013/11/26(火) 19:01:57.22 よく分かってないけど、mat.at<int>って、doubleとintの間で数値を変換してるわけじゃなくて、 ポインタのキャストみたいに本来doubleの所に無理やりintの値を書き込んでるのでは? : [sage] 2013/11/27(水) 13:00:00.30 すいません、よく見たら2.4.3のリファレンスでした : [sage] 2013/11/27(水) 21:45:12.28 返信ありがとうございます。そのようですね… Mat_ <int> で宣言することでintを扱うことが出来ました。 皆様有り難うございました。 : [sage] 2013/12/01(日) 02:48:23.32 boost.gilを何で使わないの : [sage] 2013/12/01(日) 09:30:17.78 boostが嫌いだから : [sage] 2013/12/02(月) 00:58:13.62 ttp://docs.opencv.org/doc/tutorials/features2d/feature_homography/feature_homography.html 質問です。このページのSurfの特徴検出・抽出器をORBに変更しようとしたのですがうまくいきません 変更箇所は2つで SurfFeatureDetector detector( minHessian );から OrbFeatureDetector detector( minHessian );と SurfDescriptorExtractor extractor;から OrbDescriptorExtractor extractor;です 探索方法は変更せずflannのままで行いたいです。お願いします : [sage] 2013/12/02(月) 02:28:21.80 詳しくは調べてないけど、flannのmatcherだとorbやfreakで落ちる。freakのサンプルみたいにBF matcherではいかんの? : [sage] 2013/12/02(月) 03:21:12.84 大量の画像とマッチングする予定なので「力づく」の探索はどうにも・・・ ttp://opencv.jp/opencv2-x-tips/changelog_from_22 ここにある「BRIEF と ORB 局所特徴量に対する,非常に高速な LSH matcher」がflannだと思っていましたので 新たに検索してみたところ ttp://opencv-users.1802565.n2.nabble.com/how-to-use-the-ORB-descriptor-td6606424.html このページがそれに該当するようなのでもう少し見てみます お騒がせして申し訳ありませんでした : [] 2013/12/08(日) 02:10:22.87 画像処理の論文は理想的な画像でやってるのばっかだから : [sage] 2013/12/08(日) 08:51:18.69 たくさんの画像セットで実験してみて一番良い結果が出るものを載せます : [sage] 2013/12/14(土) 17:26:45.78 kinectと組み合わせてプログラム書いてんだけど CV_16UC1のcv::Matのdataにushort型の値を代入しようとしたらucharにキャストされる。 16UC1でメモリ確保してるんだしなにかうまい代入方法ってない? : [sage] 2013/12/14(土) 23:26:59.31 cv::Mat_<ushort>を使う : [sage] 2013/12/15(日) 01:51:12.29 .dataでアクセスしたら相変わらずucharじゃねえかって思ったら()でアクセスできるのか。 ㌧クス : [sage] 2013/12/16(月) 15:21:08.36 static_cast<ushort *>(mat.data)[i]とかじゃない? dataって一応uchar *の型が指定してあるだけの単なるポインタだよね。 : [sage] 2013/12/16(月) 15:21:57.98 すまん間違えた、static_castじゃなくてreinterpret_castだった。 : [sage] 2013/12/18(水) 11:52:23.56 SIFTを組んでいるのですがコンパイルはできても実行すると実行停止してしまいます。 どうやらキーポイントの数(配列の要素数)が6億個もでてることが原因っぽいです。 なにか解決方法はありますか? 一応主なソースは↓です cv::SiftFeatureDetector detector(0.04,10.0); cv::SiftDescriptorExtractor extractor; cv::Mat descriptors1; extractor.compute(grayImage1, keypoints1, descriptors1); 環境はvs2010、opencv2.2です。 : [sage] 2013/12/18(水) 12:36:58.31 入力画像の先鋭度を測るプログラムはOpenCVで作れますか? : [sage] 2013/12/18(水) 14:06:23.74 すみません自己解決しました。 どうやらリンカの設定が甘かったようです。 ありがとございました。 : [sage] 2013/12/18(水) 23:08:53.76 ver2.42以降を使う : [] 2013/12/20(金) 14:54:14.84 traincascadeから出力したxmlは、haartrainingから出力したxmlと中身というか書式が違いますよね? : [sage] 2013/12/21(土) 21:44:55.09 OpenCV 2.4以上、VS2010でOpenEXR対応の 64bitビルドを行いたいのですが、必要な ライブラリとか手順とかの情報ってどこかに まとまっていないでしょうか? そもそも、このような構成でのビルドは可能ですか? OpenCV単体のビルドは何度かやっているのですが、 外部ライブラリとの連携は未経験です。 : [] 2014/01/01(水) 23:45:38.65 画像を回転させると角が切れちゃうんですが、バグですか? : [sage] 2014/01/02(木) 20:02:40.98 昔からあるバグだな諦めろ 今時、opencvなんて使うのはダサイ : [sage] 2014/01/02(木) 20:29:34.31 それのどこがバグなんだ : [sage] 2014/01/02(木) 20:47:44.38 OpenCVではそのような仕様です。 : [sage] 2014/01/03(金) 01:10:20.29 額縁の中で絵を回転させたら角っこがはみ出るのと同じ。 額縁の大きさ(画像サイズ)を変えないと。 : [sage] 2014/01/04(土) 14:47:26.55 今時OpenCVって・・・ オワコンじゃん : [sage] 2014/01/04(土) 14:56:27.13 115殿には是非今一番アツいCVライブラリを 御教示頂きたいものだ。 もっとも、OpenCVが何かと難有なのは同感だし、 結局選択肢がないからこれ使ってるってCV技術者が 大半なんだろうな。 IOさえ何とかなれば、その他の演算処理は 自前で組んだ方がややこしいドキュメントを 隅から隅まで読むのより早かったりするし。 : [sage] 2014/01/05(日) 02:10:55.87 リンクスのHalconとかいいらしいよ でもこれ個人で気軽に買える類のものじゃないね どこで売ってるのかわからないし、値段も公開されてない MatlabとかもそうだけどAmazonとかで気軽に買えるようにしてほしい : [sage] 2014/01/05(日) 02:21:41.72 おまえらは人が作ったライブラリがなきゃなにも作れねーのかよw : [sage] 2014/01/05(日) 02:22:32.58 OpenCVをC++から使ってクソ使いにくいって思ってる人は Pythonから使ってみるといいよ、ダメダメな設計のcv::Matじゃなくて Numpyで多次元配列扱えるから遥かに使いやすい 速度は多少残念なことになるけど 未だにIplimage使ってる人は絶滅して : [sage] 2014/01/05(日) 02:24:39.67 車輪の再発明だらけになって どこの誰が書いたのか分からない糞コードが氾濫するような世界は嫌だよ 定番のライブラリがあったほうが絶対いい : [sage] 2014/01/05(日) 17:24:58.33 Halconは職場で使ってるけど、オープンじゃないのがね。 俺は99%Pythonからしか叩かないわ。 実行速度は課題だけど、C++特有のストレスから 解放されるだけでも十分使う価値あると思っている。 : [] 2014/01/05(日) 23:51:23.11 c#のラッパー不便だわ : [sage] 2014/01/06(月) 11:45:26.63 OpenCV3.0から公式でC#対応だからそれ待とう : [sage] 2014/01/07(火) 22:43:16.45 cv::imreadで画像を読み込む場合、その画像が カラーテーブルを持っているかどうかはどうやって判断するんですか? 気にせず読み込めますが、グレースケールの画像を読み込んだのに グレースケールボタンが押せるのはおかしいので・・・ : [sage] 2014/01/08(水) 05:07:41.61 Halconなんて工業製品のパターンマッチングとかで使われる高価なパッケージでしょ そりゃフリーなら喜んで使うけどOpenCVスレで何言ってんの?って感じ : [sage] 2014/01/08(水) 13:44:04.71 お金なら払うからOpenCVの呪縛から逃れたい : [sage] 2014/01/08(水) 13:48:23.96 cv::Matのチャンネル数見るとかかな? チャンネル数1ならグレースケール画像 チャンネル数3ならカラー画像 : [sage] 2014/01/09(木) 00:14:07.27 最近は画像の入出力にしか使ってないや 読み込んだあとはEigenに変換してる : [sage] 2014/01/10(金) 03:15:52.96 Python版はNumpyに放り投げてるわけだし C++版もcv::Matとかクソ扱いにくい仕様やめて Eigenに放り投げるよう再設計すべきだよね、常々思うわ : [sage] 2014/01/10(金) 03:37:29.21 内部でEigen使ってなかったか 確かコンパイルに必要だったような : [sage] 2014/01/10(金) 07:00:59.79 確かにEigenは必須ライブラリだったはずだけど、 cv::Matは画素アクセスとか面倒だよね。 2月にはOpenCV3.0出るって言ってるけど、 使いやすくなってるのかな。 : [sage] 2014/01/10(金) 18:58:18.52 新しいバグが皆様をお待ちしています : [sage] 2014/01/11(土) 09:26:40.10 どんな言語もフレームワークの善し悪しで流行る・流行らないが決まっちゃうほどだし やっぱライブラリの使用が如何に簡潔で解り易いかってとても重要だと思うなー 逆にプロプライエタリなフレームワークが使い易かったことって一度もないけど : [sage] 2014/01/14(火) 23:39:42.24 画素アクセスをsrc(y,x,ch)みたいな仕様にしなかったのは何でだろうね : [sage] 2014/01/16(木) 19:30:45.40 Python版はその仕様だよ、みんなC++やJavaみたいなクソ言語は捨ててPythonを始めよう : [sage] 2014/01/16(木) 23:42:16.16 pythonは一度も触ったことないんだけど、MATLABみたいな感じ?OpenCVの関数は基本的に全部移植されてるの? : [sage] 2014/01/17(金) 01:00:01.15 俺もPython良く知らないんだが Pythonの新しい企画には対応してないとかなかったっけ? : [sage] 2014/01/17(金) 17:49:43.20 OpenCVがpython3に対応したら、おれもpythonの勉強するんだ... : [sage] 2014/01/17(金) 23:00:57.70 基本的な機能は抑えてるけど新機能は対応してないことも多々あるね 例えばこのあいだの動画の超解像とか 個人的にはヘタするとMatlabより使いやすい Python3には対応してないけど対応する予定はあるらしい 互換性はないけどPython2でも3でもたいして変わらない : [sage] 2014/01/21(火) 11:09:40.56 IplImage *pImg = cvCreateImage( ... ); { cv::Mat M( pImg ); } これって画像は破棄されるの? されないの? : [sage] 2014/01/25(土) 22:56:28.93 JavaScriptは3日で覚えたけど(jqueryは使ってない)PythonもLLだからそのくらいで習得できるかな? : [sage] 2014/01/25(土) 22:59:03.03 JavaScriptを本当に3日でマスターしたならPythonなんて半日だ : [sage] 2014/02/07(金) 16:09:11.13 visualstudio2013にopencv.netを導入したのですが CreateImageのようにサイズを指定して画像を作成するにはどのようにすれば良いですか? OpenCV.Net.CV.CreateImageを実行したいのですができませんでした. : [sage] 2014/02/12(水) 20:04:30.21 マッチテンプレートでOCRを行いたいと考えています 文字列と同じように空白もマッチングしたいのですが、空白を与えても上手く検出できません なにかよい方法はありませんか? : [sage] 2014/02/12(水) 21:21:09.67 まずテンプレートマッチングによるOCRを諦めよう : [sage] 2014/02/12(水) 21:44:08.93 切ない : [sage] 2014/02/13(木) 00:53:20.34 空白以外が検出できているなら文字間隔から空白があるか予測して補間すればええやろ : [sage] 2014/02/14(金) 20:04:07.02 [速報] STAP細胞に捏造の疑い ttp://hayabusa3.2ch.net/test/read.cgi/news/1392271386/ ↑ 画像処理の専門家の皆様 検証してください : [sage] 2014/02/17(月) 01:14:00.03 同じ細胞から作ったコピー細胞なら画像似てても仕方ない気がするが : [sage] 2014/02/19(水) 16:00:08.31 簡単に技術盗まれないように 肝心な部分はぼかしてるんだよ : [sage] 2014/02/23(日) 14:28:02.11 パンチルトカメラで顔を追いかけるプログラムって どこかで公開してないでしょうか : [sage] 2014/02/23(日) 14:58:38.80 顔の座標とれるんだったら 一定時間でとり続けて差分でどっち動いたか判断してそっちにカメラ動かすだけだろボケが 自分でやれよ。 : [sage] 2014/03/01(土) 10:06:44.01 IPカメラのIPアドレス指定してCvCaptureに動画をとりこむことは出来るけど パンチルトカメラの首を動かす方法がカメラの種類によってコマンドが違うみたい カメラの首を動かす方法はどうやって調べたらいいのでしょうか ttp://robocv.blogspot.jp/2012/01/using-your-ip-camera-with-opencv.html perl cgiでコントロールできるモジュールが あるみたいな記述があちこちのサイトにあるけど その肝心のソースコードがどこさがしてもない : [sage] 2014/03/01(土) 10:58:08.87 共通規格があるわけでもなし当たり前のような気がする : [sage] 2014/03/01(土) 11:14:43.25 ttp://www.openipcam.com/forum/index.php?topic=174.0 >yes you can control most of the functions from any language via http protocol as detailed in the IPcam CGI Manual ttp://www.openipcam.com/files/Manuals/IPCAM%20CGI%20SDK%202.1.pdf : [] 2014/03/03(月) 01:19:53.97 OpenCV初心者です 現在OpenCV2.4.7を使用しています かなり基礎的な質問で申し訳ありませんが、2.4.7内の関数の使い方を全部掲載しているサイトなどはありますか? : [sage] 2014/03/03(月) 06:52:13.31 2.4.7にこだわる必要は? 英語は読めるか? : [sage] 2014/03/03(月) 07:32:37.24 読めたらこんな肥溜めで聞かないっすよハハハご冗談を : [sage] 2014/03/03(月) 07:50:12.86 じゃ、中学英語からやり直しだな。 : [] 2014/03/04(火) 04:07:36.16 英語は読めます 学生で、部活内で使われているものが2.4.7です 2.4.7でなくともそれに近いものであれば構いません 教えていただけると幸いです よろしくお願いします : [sage] 2014/03/04(火) 05:41:42.38 じゃ内蔵か公式でいいだろ。 : [] 2014/03/05(水) 00:57:21.51 公式→ ttp://docs.opencv.org/2.4.7/ まぁ本当に全部っていうとソース読めってなるんだけど : [] 2014/03/05(水) 03:30:21.82 ありがとうございます! : [sage] 2014/03/16(日) 11:42:13.20:jg6pkE2L OpenCVのプログラムコードの一部だけ論文に転載するのって 著作権的にはOpenCVへのリファレンス書いてたら問題ないの? : [] 2014/03/22(土) 20:56:49.83:k2pZAvlI opencvで手を検出する方法って無いかな? : [sage] 2014/03/22(土) 23:48:35.77:vWqdj/xE 手を学習させるしかない : [sage] 2014/03/22(土) 23:58:03.89:Nsic/UJL このスライドでOpenCVでのおっぱい検出を紹介してる ttp://www.slideshare.net/yusukebe/oppaidetect-3 おっぱい画像の代わりに手画像を使えばよし : [sage] 2014/03/23(日) 18:08:13.43:Zo8uS5e/ 僕はおっぱいの方がいいです : [sage] 2014/03/24(月) 10:44:54.88:LYAKQKT8 OpenCVでジャンケン処理のがあったような : [] 2014/04/01(火) 00:11:48.63:+BzQu1X1 WindowsでMinGW版無くなっちゃったのか。 VC版はやたら充実してるけど。 : [sage] 2014/04/08(火) 01:19:18.31:1cdjmKJQ OpenCVの超解像度処理 ttp://whoopsidaisies.hatenablog.com/entry/2013/12/03/021133 と、この超解像度処理ってどっちが画質いいの? 速度は別に遅くていい ttp://cas.eedept.kobe-u.ac.jp/WelcomeES1/OpenSoft/SRApplications/ ttp://loggialogic.blogspot.jp/2012/06/neurondoubler.html : [sage] 2014/04/08(火) 10:55:45.86:jqyPRMUU 画質良いの定義が難しいからなー 画像によって処理が合ってるかも変わるだろうし 自分でやってみて拡大してみるのが一番いいんじゃね : [sage] 2014/04/09(水) 05:28:50.56:kyXLUR/c サンプルプログラム opencv-2.4.8.2/samples/gpu/super_resolution.cpp がコマンドラインから超解像動画を自動生成できるみたいなのですが 1分ぐらいの動画でも一晩ずっと動かしてもとまらなくて 生成した途中結果表示みてみると 最後まで行った後、まさ最初に戻って何度も同じ動画を処理してるみたいです バグでしょうか? main内のforループも終了条件ないですし : [sage] 2014/04/09(水) 05:35:53.50:kyXLUR/c ttp://stackoverflow.com/questions/18151806/superresolution-nextframe-bug 同じエラーだと思うけど 見当違いな回答ついてた どうやって無限ループ止めて、変換された動画を保存すればいいんだ : [sage] 2014/04/09(水) 10:32:57.88:+JqWH5tw 動画の補完限定なん? 静止画数枚でテスト出来ないんかな : [sage] 2014/04/10(木) 21:10:26.65:0LeWO1pv >静止画数枚 の例らしきものも同じディレクトリにあった : [sage] 2014/04/16(水) 04:46:28.93:GTugkpJK 暗い部分だけ選んで明るくするというの ttp://aska-sg.net/psegogo/pse007-20051207.html Photshopでは出来るみたいだけど OpenCVにはそういう関数ないの? あとインターレスのノイズも消したい vReavalという超解像のソフトがなくなってしまって それが持ってる機能が欲しい : [sage] 2014/04/16(水) 04:56:22.60:GTugkpJK ttps://groups.google.com/forum/#!topic/javacv/nU-RyyGV1Q0 grabber.setDeinterlace(true); なんて機能があるんだな : [sage] 2014/04/16(水) 05:01:35.49:GTugkpJK ttp://stackoverflow.com/questions/11176585/how-remove-shades-from-partially-shaded-image 影の除去はOpenCVの中にないみたいで 誰かの書いたプログラムを使うしかないみたいだ : [sage] 2014/05/01(木) 00:05:58.73:ZaFC896P Javaで画像処理をしたいと思い、勉強してます。 JavaCVではなく、OpenCVのJavaライブラリを使ったプログラムを 勉強できるサイトなどありましたらご紹介いただけないでしょうか? 書籍は「Javaで始めるOpenCVプログラミング」を読んでいます。 : [sage] 2014/05/02(金) 18:14:12.21:FavlRh/W OpenCVのPythonインターフェイスが 次々と出来ては消えて行くのは 何故? : [sage] 2014/05/02(金) 19:06:28.99:3yVYO9UY C#でOpenCVSharpのBitmapConverterってどうやって使うんですか? 名前空間OpenCvSharpには存在しませんでした 環境はVS2013でパッケージはNuGetを使ってOpenCvSharp x64を使ってます : [sage] 2014/05/03(土) 14:41:32.83:CxgHBGu5 画像認識に興味があり、OpenCVを勉強し始めました。 カメラ撮影したものから長方形の物体を検出し、射影変換することで、 長方形の物体を正面から見たときの画像を得たいと思っております。 元の長方形の縦横比が既知である場合はcvFindHomographyにて射影変換行列を得ることができました。 しかし、元の長方形の縦横比が既知ではない場合、つまり射影変換前の長方形から縦横比を求める方法が思いつきませんでした。 カメラで斜めから撮影した長方形の物体の縦横比を求める方法が知りたいです。 どうかよろしくお願いします。 : [sage] 2014/05/03(土) 16:01:30.66:7aUixRL2 ピンホールカメラモデルを考えて式を立てればどういう計算で縦横比が求まるかと、どこまで条件を揃えてないといけないかがわかると思うけど、 そのための関数ってのは特にないんじゃないかな。 長方形の縦横比、カメラの回転並進で合わせて7つの自由度があるから、少なくともカメラの内部カメラパラメータがわかってれば 長方形の4点が認識できれば8つの拘束条件ができるから計算はできそうな気がする。 : [sage] 2014/05/04(日) 17:21:39.74:fCcJcCq3 OpenCvSharpからOpenCvSharp.Extensionsに移ったみたいなので、 using OpenCvSharp.Extensions; をソースに追加。 : [sage] 2014/05/04(日) 21:14:46.83:r4KxBlfT 出来ました! ありがとうございます : [sage] 2014/05/14(水) 17:05:02.60:rwJimwKG >183 画像上での4頂点に対応するカメラ座標系でのレイ(無限直線) と ある平面 との交点を求めたときに その4交点が長方形になってるような平面を求めればいいんだろうきっと. 4つの交点を結んだ四角形の四つ角が90度にならなければいかんぜよ という条件とかから 適当に目的関数でも立てて最小二乗法とかでやればいいんじゃないか? なんとなくだが平面が通る点をどこかに適当に定めてしまって 平面の法線方向だけについて解けばいいような気がする : [sage] 2014/05/15(木) 06:22:41.08:Lu6xBiPe まだこの話題続いてたんか。 つい最近トラ技だかInterfaceだかで車のナンバープレートを 矩形化する記事があったが、あれも確か縦横比使わないで 画像解析だけで何とかしてたはず。 : [sage] 2014/05/15(木) 20:19:55.65:AHCN3ZxT ナンバープレートで縦横比を使わない理由を知りたい : [sage] 2014/05/16(金) 16:38:03.76:s19zIB3X だけど確かにその方法でいけるね。 最小二乗法を使うまでもなく代数的に解けるようなレベルのような気がする。 4点がそれぞれp1,p2,p3,p4だったら、レイ上のどこに来るかっていう適当なスケールパラメータs1,s2,s3,s4を考えて、 あとはs2p2-s1p1とs4p4-s1p1の内積が0かつs2p2-s3p3とs4p4-s3p3の内積が0になるようなs1~s4が求まればおしまいだから、 4元2次の連立方程式かな? : [sage] 2014/06/08(日) 15:21:16.86:Yfbf5viA OSXでopencv2.4.9を自前ビルド、静的リンクしてc++プロジェクトで使ってます。 highguiの関数 cvShowWindow()を使おうとするとリンク時にcocoaの関数まで静的リンクしよう として symbol not foundエラーになり、ビルド出来ません。 全体を動的リンクにしてやり直すしかないのでしょうか : [sage] 2014/06/09(月) 22:08:49.62:bJmZ/PGJ 初心者名質問で申し訳 IPカメラの画像(h ttp://192.168.x.y/snapshot.cgi)をopenCVで処理することって出来ないの? 画面キャプチャとかハードウェア改造とかじゃなくて。あよ、筐体開けてもシリアルの口は見当たらなかった。 カメラの初期化が出来ない司やり方も分からなくて困ってる カメラはELECOMのLAN-NCW150/sという代物 EdimaxのOEMらしい : [sage] 2014/06/10(火) 00:28:26.09:l3mk+UpB sureti : [sage] 2014/07/16(水) 18:10:38.18:KS0mSvxR できるよcv::VideoCaptureにurl食わせてやればいいだけ : [sage] 2014/07/18(金) 09:12:29.83:6ptJYAb2 すまん勘違いした動画じゃなく画像か の言うとおりだった とにかくBitmapで取得して変換すればよい : [sage] 2014/07/28(月) 01:22:31.35:mYwHNxaR OS XのCocoaでOpneCVが使いたいんですがStackOverFlowなど読んでもCommand Line Toolが前提っぽいんですがGUIで利用できないんでしょうか こういう開発環境や導入見ても如何にWin+VSが優れてるかわかりますよね、Mac本当に面倒くさい・・・ : [sage] 2014/07/28(月) 08:41:59.05:W479DJN1 >如何にWin+VSが優れてるかわかりますよね >如何にWin+VSが優れてるかわかりますよね >如何にWin+VSが優れてるかわかりますよね あのさ、心の底から教えて欲しいと思ってるなら こういう物言いすべきじゃないぜ? VSコンパイラのタコ仕様に振り回されてる開発者も 世間にはごまんといる。 おまけにちょっとググったらすぐ情報見つかった。 もう少しきちんと探してみることだな。 : [sage] 2014/07/28(月) 09:01:49.48:4U744+ky 煽ったら何か出て来るだろうっていういつものことだな 自演でなければ : [sage] 2014/07/28(月) 10:08:36.22:6PTOiSTS OpneCVって書いてる時点でネタじゃね? : [sage] 2014/07/28(月) 10:17:48.66:DZRfdeT4 Mac が面倒なのは同意 Mac 使ってるひとの理由の大半はタダの Linux で充分なことを求めてる : [sage] 2014/07/28(月) 14:58:49.09:HEMYcELC Xcodeで使うのはWin+VSで使うのとそんなに変わらないんうじゃないの? : [sage] 2014/07/28(月) 15:49:46.27:+qczOS9S まぁ普通に考えて釣りだろうな : [sage] 2014/07/29(火) 09:40:36.12:XqwAyXgE そもそもサポート対象じゃないライブラリを無理矢理動かして使えないからダメって そりゃそうだとしか言えんはw : [sage] 2014/07/29(火) 12:24:14.98:C4uRegUO It has C++, C, Python, Java and MATLAB interfaces and supports Windows, Linux, Android and Mac OS. : [sage] 2014/07/29(火) 13:42:17.24:ufPt6u02 そりゃそうだ : [sage] 2014/07/29(火) 14:14:08.12:jphC97zf がタコなだけ。XCode経由で開発可能。 : [sage] 2014/07/29(火) 14:49:59.07:C4uRegUO Windows版と違って公式にビルド済みのバイナリが置いてないから使えねえって言ってるのかな。 : [sage] 2014/07/29(火) 16:17:37.43:XqwAyXgE いつの間にかMacに対応してたんかw : [sage] 2014/07/29(火) 19:31:25.75:G5pzGNQD とっくに対応してる。 CV系の学生はMacユーザ多い。 : [sage] 2014/07/29(火) 20:11:21.32:wJysvYLW へーすごいじゃん : [sage] 2014/07/30(水) 09:56:18.07:1/A7uemL CV系の学生って何ぞ?w 自分で計算出来ないからライブラリにやってもらって 自分は何もわかりませんとか? : [sage] 2014/07/30(水) 10:38:09.10:a5Boy+67 あー言っちゃったね マカーのプライド傷つけるとどうなるか、身を持って知るといいよ : [sage] 2014/07/30(水) 11:22:16.37:WJIQUzOh 最近は、GLSL触るだけで画像処理の専門家なんだそうで、 SPIDERもOpenCVも何それな専門家が増えているからなぁ : [sage] 2014/07/30(水) 11:29:05.41:uRtAxpuT ま、別にライブラリ使ってもいいんじやない? 巨人の肩に乗ってる事を忘れなければ。 : [sage] 2014/07/30(水) 17:52:05.16:o5oNS4FN OpenCVに限らないが、入出力のような本質から外れる部分はライブラリを使ってどんどんすっ飛ばせばいいよ : [] 2014/08/05(火) 04:51:02.99:9rn9hAyi opencvのSIFTを利用してCSIFTのプログラムを作成したいのですが、このアルゴリズムの詳細がわかる方いますかね? : [] 2014/08/05(火) 06:23:24.18:iLUP5Qqd CV系の学生はMacが多い。 : [sage] 2014/08/05(火) 08:04:29.38:g+jSehjL 要約すると、まずMacを買います : [sage] 2014/08/05(火) 09:32:53.42:b7WOmae8 Windows版に慣れてからMacに移植した方が覚えやすくね? : [sage] 2014/08/05(火) 10:47:04.82:g+jSehjL 御託を並べて抵抗するな はやくアップルストアに行け : [sage] 2014/08/05(火) 10:58:04.20:b7WOmae8 Mac版のメリットってあるの? Windows版の方が情報多くて楽だろ : [sage] 2014/08/05(火) 15:07:57.13:62hFeqDo インストールの時しか違いなくね? : [sage] 2014/08/05(火) 18:01:10.63:62hFeqDo だいたい、自分の環境でのビルド方法なんかcvに手出す前に 身につけて置くべきもので、 WinがMacがと取り立てて騒ぐ事かと。 : [sage] 2014/08/06(水) 00:51:29.25:8ExcCRgz ある凸多角形に収まる最大の円の大きさを求める関数ってないだろうか : [sage] 2014/08/06(水) 01:31:12.83:HwMXtVfI 正で無い場合はどうするの? : [sage] 2014/08/06(水) 04:10:33.25:8MuRWHTL 質問失礼します。 入力画像が、複数あるテンプレート画像の中のどの画像と最もマッチングしているかをSURFを使って調べるにはどうしたらよいでしょうか。 最近openCVを使いはじめましたが、プログラミング自体初心者であるため、調べ方もよくわかりませんでした。 よろしくお願いします。 : [sage] 2014/08/06(水) 07:02:54.60:s3k6pRY3 宿題は宿題スレへ : [sage] 2014/08/06(水) 09:40:04.85:pG2jkmH+ 「openCV SURF 特徴量」でググる : [sage] 2014/08/06(水) 09:53:44.98:4kkHNvLc 正でない場合の方が簡単かも知れない : [sage] 2014/08/06(水) 10:08:10.43:hZwvBCN3 正の場合、重心求めて任意辺の中心との距離で求まるかと 思っていたけど間違っている? : [sage] 2014/08/06(水) 10:27:05.54:4kkHNvLc 正でない場合は? : [sage] 2014/08/06(水) 11:33:33.49:hZwvBCN3 解無しを簡単に排除する方法が思い浮かばない。ので 聞いたのだが? : [sage] 2014/08/06(水) 12:01:45.62:SdQ91ssL ID:4kkHNvLcは軽くアスペっぽいなw : [sage] 2014/08/06(水) 12:31:08.53:ja0exmtr 数値解法でいいなら単なる最適化問題だからそんなに難しくないんじゃない? 解析的に求まるかはわかんないけど、円に接触しない辺が出てくるし難しそう 解なしの場合なんてある? : [sage] 2014/08/06(水) 13:07:28.11:efD44RpZ 剛体シミュで風船でも膨らませようず : [sage] 2014/08/06(水) 18:28:41.82:ocpD1szo それって画像で考えると 凸多角形の輪郭線からの距離画像を作ったときに最大値になる点が求まればいいってことだよね? じゃあ それを解析的にやるとしたら… どうすりゃいいんだ? 図形の輪郭を徐々に小さくしてくことを考えると 各頂点は角の2等分線の方向に縮んでいくような気がするが どこか(別の2等分線との交点?)で別の頂点と合体してその後は縮んでく方向が変わる その合体後の方向ってのがどうなってんのかわかればそれを最後までやって 一点になる位置を求めればいいのか うん,わからん : [sage] 2014/08/06(水) 19:03:36.54:utL+F4QU 最早OpenCV関係ないじゃん。 : [sage] 2014/08/06(水) 23:21:57.96:ja0exmtr のを読んでて思ったけど、 凸多角形のそれぞれの辺を内側に向かって同じだけ並行移動させつづけると、どこかで内側のエリアが3角型になるか、線分になるか1点になって、 3角型の場合はその3角型の内接円の半径に辺の移動距離を足したものが内接円の半径になりそうな気がする。 線分になる場合や1点になる場合は辺の移動距離が半径になりそう。 解析的には解けるけど方程式一発という訳にはいかなくて判定処理が必要そうだね。 辺を平行移動させるとどこかで辺が消えるけど、その条件も解析的に求まりそうな気がするから今一歩というところだね。 : [sage] 2014/08/06(水) 23:37:59.10:ja0exmtr n角型だとして、隣り合った2辺のなす内角を2等分する線を引くと、その線交点がn個できる。 この交点と辺の距離の分だけ辺を移動させたときに辺が消えてn-1角型になる可能性が出てくるから、辺からの距離が小さい交点から順に処理してやって、 3角型になるまでやればいいわけだから… ああそうか、交点と辺の距離を計算してn-3個目に小さい距離がn角型を3角型にする辺の移動距離だから、そのときに出来る3角型を求めれば最大の内接円が求まるね。 : [sage] 2014/08/07(木) 07:45:52.87:eLx8dP5N お利口さんが一丁前に語り始めたぞ : [sage] 2014/08/07(木) 08:24:03.90:46u2Shxn 内接と勘違いしてたわ : [sage] 2014/08/07(木) 08:41:34.09:DfYUpYGn そごうのマークみたいな図形だと解なし? : [sage] 2014/08/07(木) 09:44:58.33:SmvqWYAn 四角形の場合、辺の長さをAからDとした時 A+C=B+Dなら 解あり。そごうのマークはこの条件を満たしているが線分が 交錯しているので解無し。 : [sage] 2014/08/07(木) 11:06:36.77:DfYUpYGn そういえば凸って書いてありましたね : [sage] 2014/08/07(木) 11:13:37.53:JwmJHSWk どうでもいいが >剛体シミュで風船 って矛盾してないか? : [sage] 2014/08/07(木) 22:16:58.85:xHydUS5J 物理シミュレーションって言いたかったんじゃね : [sage] 2014/08/07(木) 23:51:01.58:yuOaZbMp A+C=B+Dという判定式はどっから来たんだろう? A+C!=B+Dでも解が存在する場合はあるし、==でも存在しない場合もあるし。 : [sage] 2014/08/07(木) 23:53:51.82:3T9P4myy ttp://www.altmc.jp/primer/lessons/40C/2060.html : [sage] 2014/08/07(木) 23:55:27.57:yuOaZbMp ああ、問題を誤解していた。すまん。 : [sage] 2014/08/08(金) 05:42:34.82:1UU7vf/D 問題を誤解してコメントしたひとのレスを読んで さらにそれを誤解してコメントする訳ですね : [sage] 2014/08/08(金) 22:57:18.40:m1BHtAY+ このプログラムを元に認識した物体の大きさと奥行きを 求めようとしているのですけどH=167ってなんの値なの? ttp://python-gazo.blog.jp/opencv/%E5%8D%98%E7%9C%BC%E3%82%AB%E3%83%A1%E3%83%A9%E3%81%A7%E8%B7%9D%E9%9B%A2%E6%B8%AC%E5%AE%9A : [sage] 2014/08/09(土) 00:36:11.65:l2WdSHx9 RGB -> HSV : [sage] 2014/08/09(土) 12:14:20.14:8bubdD6k 流し読みだけど定数だからボトルの高さ167mm じゃね : [] 2014/08/12(火) 18:51:29.00:0jK/pM8y 認識した物体(緑のボトル)の実際の高さ : [sage] 2014/08/15(金) 01:41:54.60:520GhRWF >opencv-2.4.8.2/samples/gpu/super_resolution.cpp なんだけどCUDAで計算しても全然遅い CPUで計算する方がはるかに高速 ある程度以上のビデオカードでないとCUDAの恩恵得られないって事なのかな ちなみにGforce GT420です : [sage] 2014/08/15(金) 05:19:16.89:B7ab7tDG GT420のCUDAコアは48基 現在のミドル帯で最も普及したであろうGTX660で960基 Titan blackで2880基 無い方がマシかもよ それ以前にGeforceは倍精度演算コアが以下略なんだが : [sage] 2014/08/17(日) 21:21:12.88:NSOavDRB このプログラムは メモリー1Gのビデオカードだと デフォルトの設定でCUDAが動かない 画像の拡大サイズをデフォルトの4倍から2倍にしたら動いたけど メモリー2Gならデフォルト設定で動くのだろうか : [sage] 2014/08/22(金) 10:55:13.77:j5O/pd5j 2012年ぐらいにビデオカードを複数刺した場合にOpenCVの CUDA機能がバグってたが、その後に治ったんだそう ttp://jump.5ch.net/?http://www.techques.com/question/1-9295350/Error-OpenCV-with-CUDA-using-TBB-for-multiple-GPUs "> ttp://www.techques.com/question/1-9295350/Error-OpenCV-with-CUDA-using-TBB-for-multiple-GPUs 今なら数千円の安いビデオカードを複数刺して : [sage] 2014/08/22(金) 14:01:56.07:GaAVVgAP データ律速だと、速くならない。 ましてや、安いビデオカードはPCIeバスもメモリも遅いから、なおさら。 : [sage] 2014/08/22(金) 19:55:09.56:lWYFWd0+ その数千円レベルだと数枚挿そうが CUDAコア少なすぎて無い方がマシ 貧乏人は麦でも食ってろ : [sage] 2014/09/19(金) 13:25:16.13:KzrQAxPc Linuxでパッケージのアップデートしたら OpenCVのプログラムに動画を読み込ませようとすると OpenCV Error: Assertion failed (vc_.isOpened()) というエラーが起きるようになりました (以前はちゃんと動いてた) ひょっとしてOpenCVのソースをいじらないと 治らないのでしょうか : [sage] 2014/09/19(金) 15:05:26.65:jYrXBJy/ そのopencvはソースから入れたのかい? : [sage] 2014/09/20(土) 02:11:43.41:NyWaXORh ttp://stackoverflow.com/questions/25013234/opencv-error-assertion-failed-vc-isopened-in-reset : [sage] 2014/10/01(水) 22:31:44.66:XCx5LgPk javascript版OpenCVクル━━━━(゚∀゚)━━━━!! : [sage] 2014/10/23(木) 14:19:21.95:cfpTx2oa 現在挑戦していることでわからない点があるのでなにかアドバイス頂きたいです。 動画を読み込みハール分類器により顔と目領域を検出します。 次に目輪郭を cvFindContoursで探し、輪郭を検出しcv虹彩に楕円を当てはめようとしているんですが ビルドは成功しますがソースコードの輪郭を構成する頂点座標を取得 tmp = CV_GET_SEQ_ELEM (CvPoint, contours, -1)の部分でオーバーフローしてしまいます。 またcvHaarDetectObjectsで顔検出では動作しますが目領域の際にエラーがでます。 どなたかこの原因と考えられる対策など教えてください : [] 2014/10/23(木) 14:55:24.63:RjBQcz8M ぬるぽ : [sage] 2014/10/23(木) 16:15:19.56:cfpTx2oa ヌルポインタが原因のようですがなぜ顔検出では起こらず、 目領域の検出でぬるぽになってしまうのでしょうか? : [sage] 2014/10/23(木) 17:21:56.36:RjBQcz8M この続きを見るには最低限のソースが必要です : [sage] 2014/10/24(金) 10:34:29.00:TztPkxVQ 普通に考えると目を検出する範囲が間違ってるとしか思えんは : [sage] 2014/11/25(火) 05:14:16.36:5019Bxp0 ttp://pukulab.blog.fc2.com/blog-entry-41.html を参考にしてORBを使ってみたら500点までしか特徴量を計算してくれないんですが、上限はどうやったら増やせますか? : [] 2014/11/25(火) 13:19:38.85:dMEv4AW9 ttp://docs.opencv.org/modules/features2d/doc/common_interfaces_of_descriptor_matchers.html DescriptorMatcher::create BFMatcher::BFMatcher ttp://docs.opencv.org/modules/features2d/doc/common_interfaces_of_generic_descriptor_matchers.html ttp://stackoverflow.com/questions/14759217/running-into-an-error-using-cvbfmatcher-bruteforce-matcher-with-10-100-train : [sage] 2014/12/06(土) 13:45:22.61:eDdnt3jc OpenCV必要ないな。こんな画像認識技術があったってろくな使われ方しないだろうからな。 : [sage] 2014/12/06(土) 13:50:09.44:1MG24EwX お前の発想が貧困なだけだろ 休みの日に馬鹿アピールとかなかなか有意義な人生送ってますね 死ねば? : [] 2014/12/11(木) 16:55:50.85:6slixBmx OpenCVでROIを用いて画像の一部を矩形で切り抜き、保存することはできたのですが 矩形以外での多角形で切り抜きは可能なのでしょうか? : [sage] 2014/12/12(金) 10:34:09.04:cSBPjkby どういう結果を期待してるんだ? その多角形を包括する矩形で切り出してきてそこから欲しい結果に加工すれば? : [sage] 2014/12/12(金) 10:56:43.21:8BqNZxMW maskをしらない厨房か : [sage] 2014/12/13(土) 19:54:57.68:c9evB4nk C++でOpenCVを使っています。 2つのMatを返すメソッドをつくりたいんですけど、どうしたらいいですか? : [sage] 2014/12/13(土) 20:43:07.89:KcZztYF+ 何が判らないの : [sage] 2014/12/13(土) 20:48:39.84:aIxuvf1S OpenCVに限らないだろうよ C++の勉強をした時に、2つ以上値を返すにはどうすればいいって習った それと同じようにやれよ : [sage] 2014/12/13(土) 21:33:38.64:FUAf3j5q vector<Mat> func(){ vector<Mat> retVal; retVal.push_back(Mat(640,480,CV_8UC3); retVal.push_back(Mat(640,480,CV_8UC3); return retVal; } だろやっぱw : [sage] 2014/12/13(土) 23:16:02.03:sSU/XTry ポインタを使えと習いました先生 : [sage] 2014/12/13(土) 23:21:20.21:aWFoLZL3 引数がレジスタやスタックに積んで複数渡せる仕組みなんだから 戻り値も同様にして複数返せるようにすりゃよかったのにな : [sage] 2014/12/13(土) 23:27:09.06:76ITaN6j 構造体返し出来るじゃん? : [sage] 2014/12/21(日) 02:06:41.58:ANxxvVGk ご相談に乗っていただきたいです 現在OpenCV2.4.10とDxLibを併用して使っているのですが、findContoursメソッドを使用すると ヒープが壊れたというランタイムエラーが発生してしまいます どうにか回避方法を教えていただきたいです ↓ソースです ttp://codepad.org/hS14MmrI : [sage] 2014/12/28(日) 19:44:05.79:jxhF3Jvs usbカメラをキャプチャしたものを遅延再生をおこないたいのですが、どうやって行ったら良いのでしょうか? : [] 2014/12/28(日) 21:06:23.20:q/AaEctr ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=1837 2014/4/13 17:28 最新版で正常に動作しなくなっていたので、サンプルプログラムを修正 : [sage] 2015/01/06(火) 09:32:07.97:WtIOryr0 メモリに溜めて後から描画しろ : [sage] 2015/01/08(木) 20:27:47.23:O2t7YOr0 FASTでコーナーだと検出するときの連続画素数の閾値はデフォルトだとどうなっていますか? : [] 2015/01/13(火) 10:26:33.93:MMza42nd ttp://fast-uploader.com/file/6976667806149/ この画像の黒い線の結び目に当たる部分を認識させたいのですが、 どのようなキーワードで学べばいいですか? 分類器などを使用するのが一般的ですか? : [sage] 2015/01/13(火) 15:54:42.99:s94tSy9v 本当にこんな画像ばっかりなら、SIFTとかの 画像特徴量で割と行けちゃうかも。 : [sage] 2015/01/20(火) 15:23:33.11:5o7d0Dbg 分類器作ることになったんですけどポジティブ画像の識別対象の位置ってやっぱ一個ずつ手作業で打ち込んでいくものなんでしょうか : [sage] 2015/01/20(火) 16:29:23.28:3pY1xTVZ 5次元の行列に添字アクセスするにはどうしたらいいですか? 2次元、4次元はわかるんですが5次元がわかりません... : [sage] 2015/01/20(火) 20:39:11.06:Y9tiW1z+ どうやろうとして、どんな結果になった? : [sage] 2015/01/20(火) 20:56:16.12:3pY1xTVZ M.at<cv::Vec5d>(i, j, k, l)[m] とやろうとしましたがそんなメソッドねーよと怒られました : [] 2015/01/21(水) 19:48:55.20:e4jAYfur 複数の画像からvecファイルを作る、もしくはvecファイルを統合できるソフトをご存じの方いらっしゃいませんか : [sage] 2015/01/25(日) 20:54:25.32:KAfsZrfd cv:Matって五次元配列作れたんだ、知らんかった。 : [sage] 2015/01/26(月) 02:28:59.98:Csz3wp0v cv::Mat<cv::Vec5d>は、cv::Matの一つ一つの要素が5次元ベクトルってだけでしょ。 i,j,k,l,mで単一のdoubleにアクセスできるような5次元配列(5階テンソルみたいな?)はMatでは表せないと思うけど。 そもそも掛け算とか定義できないじゃん。 Mat<Vec5d>のデータにアクセスするだけなm.at<Vec5d>(i,j)[4]とかでしょ? : [sage] 2015/01/26(月) 03:03:54.38:WkuUMMZg そうなんですか。 ちょっとよくわかってないのですが、4次元の行列操作も根本的に勘違いしてるかも知れません。 とりあえずやりたいことは、4および5次元行列の、 添字(k, l, m,・・・)で指定した要素を読み書きすることだけです。 OpenCVはバージョン2.4.9です。 多次元行列(a.k.a cv::MatND)がcv::Matに統合されたと聞いたのですが、、、 : [sage] 2015/01/26(月) 03:52:20.37:Csz3wp0v ごめん。知識が古かった。 ttps://github.com/Itseez/opencv/blob/master/modules/core/include/opencv2/core/mat.hpp#L1687 Mat::atはヘッダーのこの辺で宣言されてるから、見てみると、 3次元配列まではat<double>(0,1,2)とかでアクセスできるね。 それ以上になると、ポインタかVecっぽいから、 m.at<double>(Vec5i(0,1,2,3.4))とかになるんじゃないかな? あ、でもVec5iはtypedefされてないから、 typedef Vec<int, 5> Vec5i; とかする必要あるかも。 2,3,4,6しかtypedefされてないんだな。中途半端w : [sage] 2015/01/27(火) 11:35:04.56:XdRp3tMm なるほど、at<要素の型>(添字のベクトル) でアクセスできるわけですね。 ベクトルじゃなくて()内に直接添字を列挙できるのはその特殊な場合(2次元など) ということですね。 4次元のときにat<要素の型の4次ベクトル>(添字3個)[4個目の添字] でアクセスできていたのがよくわかりませんが、、、 : [sage] 2015/01/27(火) 22:57:00.54:M/7C5R6V あんまりちゃんと追ってるわけじゃないんで正確じゃないけど、一番最後の添字にはそうやってアクセスできるっぽいね。 Mat::at(i,j,k)とMat::ptrの実装を見る限りでは。 : [] 2015/02/03(火) 11:51:54.66:QhWvOAvq カスケードファイルを使って物体認識するところを、 (重いだろうけど)、DeepLearning(DCNN)で認識させる実装やってるんだけど、 ふと既に誰か作ってるんじゃないかと思ってググったんだが、どこにもないな。 誰もが考えそうなものなんだけど、何故だろう。 : [sage] 2015/02/03(火) 16:02:43.10:kIB1JzEf 雑誌で既にやられてるけどな、それ : [] 2015/02/04(水) 09:55:03.50:tcl4NYuY >303 やられてるんですね。 だいたいは、物体抽出だけカスケードで抽出して、 その後DCNNかける例ばかりだったので、 物体抽出の精度に依存していやだなーと思ってました。 ちなみに、雑誌って、Interfaceとかですか? : [sage] 2015/02/04(水) 23:02:20.07:0iFEuduR コンピュータビジョン最先端ガイド : [sage] 2015/02/05(木) 00:25:52.75:K64xlR7w コンピュータビジョン最先端ガイド 毎年12月に出版されてたのに去年はなかったね。 もう出さないのかな?楽しみにしてたのに。 : [sage] 2015/02/05(木) 18:12:50.13:Gs19atd2 ありがとうございます。 参考に買ってみようかな。 : [sage] 2015/02/06(金) 13:40:37.10:R6ORDrzG 最先端ガイドは4からあんまり目新しくなくなったから、買ってないなー : [sage] 2015/02/10(火) 16:44:31.92:cXmIgxNn 基本的なことですがSIFTとSURFの違いってなんですかね? 使ってて基本的にSURFの方が早いことはわかりますが それぞれどういった特徴に対して特徴ベクトルを出してるんですかね? : [sage] 2015/02/10(火) 18:17:04.75:TdqTHqPt ttp://news.mynavi.jp/series/computer_vision/029/ ttp://www.slideshare.net/lawmn/siftsurf : [sage] 2015/02/12(木) 16:49:21.14:zuBBOp7q すいません 行列A、Bがあり、Bは行、列共にAより小さいとします。 いま、Aの一部に、Bをまるごと代入したいと思って、 Mat C = A(Rect(...)) B.assignTo(C) のように書きましたが、うまくいきませんでした。 assignToの実装を見てみると、typeが未指定(負)だとそのまま目的の変数に代入するような実装になっています。 このような目的では、copyToを使うのが適切ですか? 目的の行列と型・行列サイズが同じならば、メモリの再割り当てはされない(Aに正しく代入される)ことは保証されていますか? : [sage] 2015/02/19(木) 14:50:01.20:MMMfld4J cv::Matって内部で他のcv::Matとかとメモリ共有してるの怖くない? constなのに中身が変わってるとかあるわけでしょ 関数型世界からの悲鳴が聞こえてきそうだ : [sage] 2015/02/19(木) 16:07:31.49:Q7B3YZ4l そんな世界からいくら悲鳴が聞こえたところで興味ねえよ アホのお前たちは粛々とカーネルだけ書いてろ : [] 2015/03/04(水) 20:48:16.18:g4+m5Y9b 質問です。 カメラからキャプチャしてhaarcascadeを用いて 顔認識することができました。 認識された箇所にrectangleを用いて四角形を作ることができたのですが その範囲内だけや範囲外だけを塗りつぶしたりぼかしたりはどうすれば いいのでしょうか? : [sage] 2015/03/05(木) 14:48:33.29:9abmXvwW その矩形のマスクを作って処理引数の後につける : [] 2015/04/25(土) 00:32:25.75:a0Skgr09 画像にモザイク処理がされているかどうかの判別は可能でしょうか? : [sage] 2015/04/25(土) 00:40:11.01:1VEY2yku ラベリングでもしたら? : [sage] 2015/04/25(土) 10:13:56.47:GiqwOUcG モザイクの種類にもよるだろう。 矩形パッチ内の色が均一なモザイクもあるし、グラデーション掛かってるモザイクもある。 前者なら周辺ピクセルの色見るだけだから余裕。 JPEGノイズ乗ってるとか、そういう特殊なのは頑張るしかない。 : [sage] 2015/05/22(金) 20:21:31.03:QV4g/O9f OpenCVってメモリリークしない? cvInitImageHeader で IplImage を初期化して、 cvResize で 画像をリサイズするだけの簡単なプログラムなんだけど、 プログラム終了時に Detected memory leaks! って言われる。 サイズは24byteとか16byteとか小さいから、画像データではない。なんだろうね。 cvInitImageHeader で初期化した IplImage は開放関数呼ばなくて良いんだよね? : [sage] 2015/05/22(金) 20:31:52.96:j2+sj5Ou 古い関数はろくにメンテされてないしどうだろうな : [] 2015/05/24(日) 12:40:19.91:MEnSJywT ソース貼れ : [sage] 2015/05/24(日) 21:22:21.00:YQmimEgO たったこれだけのコードでメモリリークって言われる。 int WINAPI _tWinMain( HINSTANCE inst, HINSTANCE prev_inst, _TCHAR *cmd_line, int show_cmd ) { _CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ); IplImage dst, src; static unsigned int dst_img[1024][1024], src_img[512][512]; cvInitImageHeader( &dst, cvSize( 1024, 1024 ), IPL_DEPTH_8U, 4 ); cvInitImageHeader( &src, cvSize( 512, 512 ), IPL_DEPTH_8U, 4 ); dst.imageData = (char *)dst_img; src.imageData = (char *)src_img; cvResize( &src, &dst, CV_INTER_CUBIC ); return 0; } Detected memory leaks! Dumping objects -> {2529} normal block at 0x048CD330, 56 bytes long. : [sage] 2015/05/24(日) 21:24:24.58:YQmimEgO ちなみに、cvInitImageHeader を使わずに cvCreateImageHeader と cvReleaseImage を対に使ってもダメだった。 の中身をループに突っ込んでも、メモリリークの量は増えなかったから、 何らかのグローバルな管理領域が開放されてないっぽい。 ということで問題ないっちゃないんだが、気持ち悪い : [sage] 2015/05/24(日) 22:11:52.48:YQmimEgO ミス cvCreateImageHeader → cvCreateImage : [] 2015/05/25(月) 17:44:47.84:x3KPbf/f static unsigned int dst_img[1024][1024], src_img[512][512]; alloc 汁 : [sage] 2015/05/25(月) 19:53:58.81:6/qUSWHH つーか、Willow もインテルもとっくに抜けてるソフトウェアを 使うってどうなんだろ。オープンソースビジネスって成り立つ気がしねぇ : [sage] 2015/05/31(日) 09:23:57.02:o6Fd4Id5 成熟したからでしょ? : [sage] 2015/06/03(水) 11:21:51.60:6cmhZ/7u adaptiveBilateralFilterのソースってどこにあるのん? : [] 2015/06/04(木) 03:44:59.47:aePucT7k 質問なんだけど、ios版のOpenCVでVideoCaptureのsetとget使えないのって仕様なの? set(CV_CAP_PROP_POS_FRAMES, 0)で動画の最初に戻りたいんだけど、設定されない。 : [sage] 2015/06/04(木) 10:20:15.29:ay3/nzQK VideoCaptureはカメラ制御だから、動画の最初に戻るのとは違うんじゃね? cvCaptureFromFileと勘違いしていると予想 : [sage] 2015/06/04(木) 11:11:09.22:uKBUJt+N VideoCaptureはファイルも扱えるのでいけるはず 今やってみたらwindowsでは動く。macは持ってないのでわからず(OpenCV3.0 RC1) : [sage] 2015/06/06(土) 11:51:55.12:9TAyXKx2 3.0ついにリリースされたのう 今週末はこれやるか : [sage] 2015/06/11(木) 17:06:08.45:3an29FYA cvReleaseImage : [sage] 2015/06/19(金) 21:01:34.71:T0qN7+O5 いまどきなぜ cv::Mat をつかわずに IplImage なのか : [sage] 2015/06/26(金) 10:08:07.92:nx4LgZ0I 最近UMatとかいうのも出てきてるよな : [sage] 2015/06/27(土) 23:44:35.89:QpQkizgU ええっ Mat, Mat_, Matx だけでは足りなくてまた新しいやつがでたのかい : [sage] 2015/06/29(月) 00:05:28.22:CxxlhM/X YOU MAD!! : [sage] 2015/06/30(火) 10:30:21.09:PgKKPdZG 後方互換も大事だけども、 シンプルなのと高機能なのの2つに絞れない物か : [sage] 2015/07/02(木) 21:56:52.78:eUn7Y/b7 const cv::Mat& で受け取っても、 内部でmat(ROI)して新しいcv::Mat(not const)を生成してしまえば中身を変更できるんだな… operator()(ROI) constでconst cv::Mat返さないのはおかしくね? (既出だったらスマン) : [sage] 2015/07/08(水) 09:33:39.58:SmYj13jC んーおかしいというか、Matのコピーコンストラクタが元々「浅い」コピーで あることはドキュメントに書いてあるので、そういうもんだと思うしかない。 正直、openCVのライブラリデザインはいちいちイケてないところが目立つけど シンプルでエレガントなものをまったく目指してない人たちが作ってるので いろいろしょうがないと諦めよう。 : [] 2015/07/08(水) 21:49:03.95:Y+kE74C9 >シンプルでエレガントなものをまったく目指してない人たちが作ってる OpenGLと同じ臭いがする : [sage] 2015/07/14(火) 22:54:00.85:pzv4agCW cv::VideoCapture() のインスタンスの生成、破棄をするたびにスレッドが増えていくんだけど、そういうもの? 破棄前に release() を実行しても変わらず。 : [sage] 2015/07/17(金) 00:36:21.85:Q5NeHwNe Opencv2から3への移行はいつごろがいいんだ まだ安定性とか不安なので2のままだけど : [sage] 2015/07/17(金) 00:44:38.17:f5ww8Nw/ それはおめえさんの不安の算出方法と閾値に寄るんじゃないですかね : [sage] 2015/07/17(金) 23:06:58.13:hDnbbaqI 3.3が出たら本気出す : [sage] 2015/07/19(日) 19:46:29.54:cKA9y5B8 俺ちゃんは~、IplImage使いを~、やめへんで~ : [sage] 2015/07/20(月) 01:06:28.51:tte1JGhK レガシーコードの保守以外でいまIplImage が必要な箇所ってあったっけ : [sage] 2015/07/31(金) 17:59:37.74:Kf7iXVPc 俺にとって必要 : [sage] 2015/07/31(金) 20:55:46.32:nFBjQ9Zs ない : [sage] 2015/08/14(金) 12:23:59.77:r5oQP8Er OpenCVで動画の画像認識をする場合 ハードウェアのシステム要件(動作クロック等)はありますか? 処理に必要なハードの最低条件が知りたいのですがエロい人お願いします : [sage] 2015/08/14(金) 13:21:08.19:9bFEKbx/ リアルタイムでなくて良いなら、大概のハードでOK : [sage] 2015/08/14(金) 15:45:22.42:r0RiGYTV 顔認識なんかは結構重かったような気がする。 そういう意味で、動画処理するときはVGAまで解像度を落とすだとか フレームを間引きするだとかをしないと間に合わんこと「も」ある。 使いたいハードで実験して細かい条件を合わせてくれ以上のことを 言えない気がするよ。 : [] 2015/08/15(土) 10:14:51.39:nBiBWYB/ SIFT特徴量をcomputeで抽出しすると、 その128次元の数値はどういう対応になっているのでしょうか? SIFT特徴量が輝度勾配ベクトルの8方向*16ブロックということは理解しておりますが、 実際、どの値がどのベクトルに対応しているのでしょうか? また、その対応を確かめる方法はあるのでしょうか? : [sage] 2015/08/15(土) 11:49:08.47:NrrFY6tp 1. コード読む 2. 自分で計算してみる : [] 2015/08/15(土) 12:29:44.22:nBiBWYB/ ヘッダから追って確認するしかないですかね。 : [sage] 2015/08/15(土) 13:19:00.48:ijksDLQO 3.SIFTの論文を読む。オリジナルじゃなくても ttp://www.vision.cs.chubu.ac.jp/sift/ から 藤吉弘亘. "Gradientベースの特徴抽出 - SIFTとHOG - というPDF(でもPPTでもいいけど)を読めば 128次元へのエンコードの詳細がわかる。 : [] 2015/08/15(土) 21:01:36.75:tvqSf7Yn 実際に計算して確認する方法ですね。 ありがとうございます。 : [sage] 2015/08/16(日) 20:48:18.75:bybvfzPj 正面以外の顔も検出したかったから正面顔&ある程度横向いた顔の検出器自作したけどゴミすぎて笑えない 誰か俺の3週間返して : [sage] 2015/08/16(日) 23:07:37.52:bt2cprKf 貴重な体験なのに返すなんてとんでもない : [sage] 2015/08/16(日) 23:38:28.32:1NcELlD1 3次元的な画像認識ができるようになれば完璧ということかね? : [sage] 2015/08/17(月) 07:05:36.27:5aHkUNDW 学習データの作りこみがキモ : [sage] 2015/08/19(水) 02:55:54.57:Oqn9gFW2 >学習データの作りこみがキモッ に見えた。 ひどいことを言う人だなぁと思った。 : [sage] 2015/08/19(水) 08:07:04.96:hnj5IXaX 自意識の投影ですね : [sage] 2015/08/19(水) 19:58:14.81:Q4Q4fM6M 俺の顔を顔として認識せずに何故か右肩と右耳を顔として認識してくるゴミ あんまりふざけたことするなら削除すんぞ産業廃棄物 : [sage] 2015/08/19(水) 20:52:54.32:PnMheSmX 霊でもいるんじゃ : [sage] 2015/08/19(水) 21:17:29.46:hnj5IXaX みえる みえるぉ : [sage] 2015/08/20(木) 00:50:33.43:wPqvv//b 右肩のラリーとバリーを認識してくれれば合格 : [sage] 2015/08/20(木) 11:32:46.49:fBa8Lth9 右肩に憑くのは悪霊ですね : [] 2015/08/25(火) 13:54:53.29:E0M/KWQv さくらインターネットのスタンダードプランではOpenCVを動かすことは出来ないのでしょうか? makeすると、下記のような意味不明なエラーがずらずら出てきます。 /home/xxxxx/local/src/opencv-2.4.9/modules/objdetect/src/datamatrix.cpp: In function 'std::deque<CvDataMatrixCode, std::allocator<CvDataMatrixCode> > cvFindDataMatrix(CvMat*)': : [sage] 2015/08/25(火) 17:01:25.95:48uc2dA0 できるけどお前には無理 : [] 2015/08/26(水) 08:15:52.24:AtwE5MzM : [sage] 2015/08/26(水) 08:17:44.85:TB1iHarc (悔しいけど何も言い返せない) : [] 2015/08/26(水) 08:20:59.28:AtwE5MzM 漏れ じゃないから に同意のつもりで書いたんだが : [sage] 2015/08/26(水) 14:39:58.90:udBA2BBX そういうの結構です : [sage] 2015/08/26(水) 14:52:12.17:1VgT2ip6 : [sage] 2015/08/26(水) 14:59:02.15:73O4kJvn : [sage] 2015/08/26(水) 16:40:12.62:AtwE5MzM ttp://www.lifehacker.jp/2013/03/130305jerks_and_trolls.html ttp://www.lifehacker.jp/2011/11/111031ignoretrolls.html ttp://info.2ch.net/?curid=2078 : [sage] 2015/08/26(水) 18:02:39.81:cqVPebVU ttps://help.sakura.ad.jp/app/answers/detail/a_id/1154/related/1 これ読む限り頑張れば動くんじゃないの? どう頑張ればいいかわからないって話なら「お前には無理」 : [sage] 2015/08/26(水) 21:14:27.61:EI12F+7n つうか検索すりゃ一発目でOpenCVをビルドするブログが出てくるけどな その上で出た結論が、お前には無理 : [sage] 2015/09/05(土) 16:15:47.65:ea0E012T 3.0でcontribを追加で展開してビルドしたらそこだけビルドエラー出たんだけど 通常のソース達と同じ場所に入れてあげないとだめなのかね?ビルド時に場所指定できるし、別の場所で問題ないと思ったんだが。 : [sage] 2015/09/06(日) 00:51:33.91:wfrbDpC5 3.0 で cvNamedWindow は何をリンクすれば使えるんだろう? $ cd /c/opencv3.0/bin $ nm *.dll | grep 'NamedWindow' しても何も出ない… : [sage] 2015/09/06(日) 05:59:15.32:8WP+e+lh 普通にhighguiじゃないの 知らんけど : [sage] 2015/09/06(日) 08:28:10.77:wfrbDpC5 どうも cmake のオプションの組み合わせのせいで opencv_highgui300.dll が 作られない設定になっていたようです。 というわけで、cmake のオプションを見なおしてみます。 お騒がせしました。 : [sage] 2015/09/06(日) 08:41:50.38:tsoYjMlS Cmake使ってるなら、リンクライブラリ名気にする必要ないじゃん。 プロジェクトのソリューションもCmakeで作ればだけど。 : [sage] 2015/09/06(日) 09:19:21.25:wfrbDpC5 説明不足でした。 cmake は opencv のビルド(の準備)にしかつかってません。 いずれにせよ CMakeCache.txt には //Module opencv_highgui will not be built in current configuration HAVE_opencv_highgui:INTERNAL=OFF とありましたから、いろいろoffにしすぎて highguiのdll 自体そもそも作られていなかったわけです。 : [sage] 2015/09/06(日) 09:21:42.01:tsoYjMlS あーごめん 知っててつまらない茶々入れてしまった : [sage] 2015/09/08(火) 17:17:15.06:+eZnz3nO opencv 3.00 5000x3000の画像をAKAZEで処理しようとするとエラーをはく ~~ Ptr<Feature2D> detector = AKAZE::create(); detector->detect(gray_image, keypoints);//ココでエラー ~~ Unhandled exception at 0x75A3C42D in opencv_test.exe: Microsoft C++ exception: cv::Exception at memory location 0x0018E504. 1250x750くらいまで1/4に縮小すれば通る 高画質でやってみたかったのだがダメか・・・ : [sage] 2015/09/15(火) 19:29:41.63:Eyn2OaHt 試してないけど、64bitでビルドしてみたら? : [sage] 2015/09/15(火) 22:40:20.28:f/Ji2Nti MSYS2 で 64bit ビルドうまくいかないんじゃ~ : [sage] 2015/09/26(土) 00:05:38.71:E4DrPgdJ opencv 3.0 windows7 eclipse 言語 java 趣味でopencvを数日前から弄っています。顔認識を試してみたくて ttps://blog.openshift.com/day-12-opencv-face-detection-for-java-developers/ ここのサイトを見ながらコツコツやっています。(情報が古いですが、探り探り) で、ビルドしたら↓の行で例外が出ました。 CascadeClassifier faceDetector = new CascadeClassifier(FaceDetector.class.getResource("haarcascade_frontalface_alt.xml").getPath()); エラーメッセージ――――――― Exception in thread "main" java.lang.NullPointerException at opencv.FaceDetector.main(FaceDetector.java:17) ――――――― haarcascade_frontalface_alt.xmlのパスが取得できなかったと思われるのですが、そもそも haarcascade_frontalface_alt.xmlをどこに置いておくべきでしょうか?あと、認識用の画像も。 プロジェクト内ならどこでもおいてよいかと思っていたのですが…いろんなところに置き換えてみても例外が消えません。 対処法をご存知の方、お教えいただけたら幸いです。 : [sage] 2015/09/26(土) 00:06:24.36:E4DrPgdJ ちなみにソースコードはこうです。 ――――――ソース package opencv; import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.MatOfRect; import org.opencv.core.Point; import org.opencv.core.Rect; import org.opencv.core.Scalar; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.objdetect.CascadeClassifier; import org.opencv.imgproc.Imgproc; public class FaceDetector { public static void main(String[] args){ System.loadLibrary(Core.NATIVE_LIBRARY_NAME); System.out.println("Running FaceDetector"); CascadeClassifier faceDetector = new CascadeClassifier(FaceDetector.class.getResource("haarcascade_frontalface_alt.xml").getPath()); Mat image= Imgcodecs.imread(FaceDetector.class.getResource("mako.jpg").getPath()); MatOfRect faceDetections =new MatOfRect(); faceDetector.detectMultiScale(image, faceDetections); System.out.println(String.format("Detected %s faces", faceDetections.toArray().length)); : [sage] 2015/09/26(土) 00:06:57.58:E4DrPgdJ for(Rect rect :faceDetections.toArray()){ Imgproc.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x + rect.width,rect.y + rect.height), new Scalar(0,255,0)); } String filename="output.png"; System.out.println(String.format("Writing %s", filename)); Imgcodecs.imwrite(filename, image); } } ――――――ソース終わり 以上です。 よろしくお願いいたします。 : [sage] 2015/09/26(土) 00:34:05.26:EnjF3IZ6 そのxmlのあるところにクラスパス通してみた? 逆に、クラスパスで指定されたディレクトリにxmlを置いてみるとか。 : [sage] 2015/09/26(土) 22:13:06.51:E4DrPgdJ おお! その手がありました。 やってみます。ありがとうございます! : [sage] 2015/10/04(日) 22:38:34.32:geWtxUX+ 時間がかかりましたが、何とか顔の検出ができました! 結構面白いものですね。これ。 さすがにちょっとでも顔が他人とかぶってたりすると検出できないようですが、オープンソースでここまでできるなんて。 テキストを表示させたいと思い、調べてみたら日本語は無理のようで。 アルファベットでいいから表示したいなーと思い ttp://opencv.blog.jp/java/text CoreクラスにputTextなるものがあることを知りました…が、 エクリプスがCoreクラスにそんなもんはない!と怒っています。 ――― メソッド putText(Mat, Point, int, float, Scalar) は型 Core で未定義です ――― ttps://github.com/tanaka0079/java/blob/master/opencv/DrawText.java この辺りの情報は古いのでしょうか? Opencvのバージョンは3を使っています。 そもそも、highguiのようなクラスも置き換わっているようで。 ご存知の方、お教えいただけたら…と思います。 : [sage] 2015/10/04(日) 22:40:16.79:geWtxUX+ コードはまんまコピペでこうです。 Core.putText(im, "Earth", new Point(rect.x, rect.y), Core.FONT_HERSHEY_SIMPLEX, 1.6f, new Scalar(20, 0, 200), 3); もちろん、import org.opencv.core.Core;は記載してるのでインポートはできています。 : [sage] 2015/10/07(水) 23:27:44.59:3xP4zZH8 OpenCV3.0.0のjarを作ってみて見たけど、確かにそういうメソッドは無いね。 org.opencv.imgproc.Imgprocクラスに移ってるみたい。 こういう、元々がC++のライブラリを他の言語にバインディングしてるような奴は、ドキュメントが充実してないのがきついね。 C++のヘッダからメソッドを探してクラスを見つけるというようなことを今はした。 : [sage] 2015/10/08(木) 21:38:16.20:FbiyaKvV おお! ありがとうございます。 org.opencv.imgproc.Imgprocですね。 そうなんです。ドキュメントが少なめです。 javaに対応したのもごく最近なんですね。 でも、Opencv自体をjavaで使えるだけでもありがたいものです(^^ : [] 2015/10/09(金) 15:21:16.46:mKqsGtD+ 画像の特徴量っての求めてみようと、 はじめてopencvをインストールしました。 なかなか動かないっす。 imreadまでは動きましたが SIFTやSURF、ORBなどが 動きません。 ないっていわれますが、 一応、xfeature2dはmodulesに コピーしてコンパイルしたのですけど。 次は、vs2013のNuGetは試してないのですが やってみようと思います。 : [sage] 2015/10/09(金) 15:24:19.46:AB+m/9UF 日記はチラウラ : [] 2015/10/09(金) 22:24:35.20:mKqsGtD+ 馬鹿のチョンには文化も違うから 理解できないんだね! 日記じゃないのよクソチョンさん? : [sage] 2015/10/10(土) 23:08:14.66:b0ADPQma 日記と質問の書き方の違いも分からんらしい : [] 2015/10/10(土) 23:22:46.32:WtNCkOx7 とクズが申しております : [sage] 2015/10/11(日) 00:47:28.28:BzTBQJsJ で、答えられる?答えられないの? 出来損ないなら出しゃばらないでくれる? : [sage] 2015/10/11(日) 01:02:38.78:cdE875Rm cmakeのオプション設定ミスって必要なライブラリが生成されてないんじゃないの? : [sage] 2015/10/11(日) 08:10:10.79:PgtL8KH5 ダメな奴は何をやってもダメってことだろ。あきらめろ : [] 2015/10/11(日) 10:51:00.23:ngi+Bnfd 馬鹿には無理 : [] 2015/10/12(月) 13:56:09.73:Ko0Nl7AL 以下のコードの src_gray = src_gray > 127; という箇所はどういった処理をしているのでしょうか? Mat src, src_gray; src = imread("sample.jpg); cvtColor(src, src_gray, COLOR_BGR2GRAY); src_gray = src_gray > 127; : [sage] 2015/10/12(月) 14:09:21.31:QD0vOYoj = は右辺の計算結果を左辺に代入する演算子です : [] 2015/10/12(月) 14:15:03.90:Ko0Nl7AL 理解できました!ありがとうございます! : [sage] 2015/10/18(日) 19:23:47.22:lOq7skww Webカメラをcv::VideoCaptureで制御するとき、 grabや>>でフレームを取得すると新しいフレームが撮影されるまで待機するみたいだけど、 これってフレームが更新されていない場合は待機せずスキップするみたいなことはできないんだろうか? カメラごとにスレッドを立ててそこで動かせば良いんだろうけど、 複数台のカメラを制御する場合とかちょっと不安だ : [sage] 2015/10/22(木) 13:08:38.20:rGAFqWlD 角度の変化にも対応した顔検出器作ろうとちまちま3つほどやってみたけど全部ゴミでした 俺の4ヶ月分の暇な時間返してマジで : [sage] 2015/10/22(木) 13:15:05.38:522gqyPw 君のこれからの20年40年も暇になるよ : [sage] 2015/10/22(木) 15:05:09.55:EVhgfJB8 フレームをスキップする時、スキップしたフレームの画像はどうするの? 多分コマ落ちをわかりやすくしたいんだろうけども、 やるとしたらタイマー設定して、フレームが取得されなかったら真っ黒の画像を挿入するとかでどう? やったこと無いけどもw : [sage] 2015/10/23(金) 01:21:10.92:/JJfrbj7 いやそうじゃなくて、新しいフレームを取得する間、30fpsのカメラなら最大1/30秒近くそのスレッドが止まるわけじゃん 例えばOpenGLを使っていてペイントの関数内でカメラからフレームを取得すれば画面がその間固まってしまう こういう時新しいフレームがまだ撮影されてなければスキップできると便利だなと : [sage] 2015/10/23(金) 11:14:45.97:9hpieugb そうだね : [] 2015/10/24(土) 00:23:25.53:tKlRKbw8 callback準備したasyncgraberなければ作れば良いのに opencvはそんなのもなかった? cでは自分でasyncつくってたからよくわからん : [sage] 2015/10/24(土) 06:52:02.25:KgXfQA3V Windowsでプレイする麻雀ゲームがあるのですが、 それを自動でプレイする麻雀AIを作りたいと思っています。 麻雀ゲームを操作する部分で画像認識とマウス操作を使いたいのですが、 その画像認識でOpenCVを使えないかと考えています。 OpenCVは全然知らないのですが、何か画像認識で参考になる書籍やWebサイトなどおすすめを教えてもらえないでしょうか? : [sage] 2015/10/24(土) 08:40:35.14:G3DYOv58 100年早いんじゃないか? : [sage] 2015/10/24(土) 09:10:13.53:wB/X7nCW というか雀牌なんて表示位置決まってるんだから OpenCVのパターンマッチャー使うよりより↓と同じ方法を使った方が楽 ttp://qiita.com/YSRKEN/items/819dd3acf750ff5c0e7f : [sage] 2015/10/24(土) 10:10:25.71:KgXfQA3V 参考になるURLありがとうございます。 同じ方法というのはJAVAを使うということでしょうか? 艦名の認識で書かれているように簡略化するということでしょうか? これまでWin32APIでアプリを作っていたもので、可能ならC言語でやりたいのですが、 同じようなことは簡単にできるのでしょうか? あと麻雀牌に利用することはできても点数状況の認識などは結局OpenCVを使った方がいいのでしょうか? たくさん質問してしまってすみません。 : [sage] 2015/10/24(土) 11:07:17.78:wB/X7nCW ごめん やっぱ100年早いって意見の方が正しかったわ 一昨日きやがれ : [sage] 2015/10/24(土) 11:22:14.72:jc/5RlIu 定型的な画像しか入力されないんだから画像認識なんて必要ない。 スクリーンショット撮って特定の部分を調べるだけ。 どこに表示されるか決まってるんだから画像をバイナリ比較したらいい。 n 文字目から strcmp するのと大差ない。 次からは初心者質問スレか知恵袋でやれ。 : [] 2015/10/24(土) 12:20:20.14:niXzNvfm pythonおすすめ : [sage] 2015/10/24(土) 12:34:14.70:T6o0RDG/ Win32API使いこなせてるなら楽勝だよ : [sage] 2015/10/24(土) 12:40:38.12:mPPjFK/J 3D麻雀ゲームだったことが判明してな : [sage] 2015/10/24(土) 12:46:33.81:niXzNvfm >点数状況の認識などは結局OpenCVを使った方がいい 画面に点数表示されてるなら そのまま読み取った方が楽じゃね : [sage] 2015/10/24(土) 13:06:38.99:KgXfQA3V 知識不足で色々すみません。 OpenCVなしでできそうですね。 ありがとうございます。 そのままって言うのはどういうことでしょうか? OpenCVを使わずに423さんがおっしゃるやり方を点数にも適用する感じでしょうか? : [sage] 2015/10/24(土) 13:49:12.76:caHKW0ZN ラ知識不足 ○身の程知らず ぶっちゃけ何でム板にいるの?ってレベル : [sage] 2015/10/24(土) 18:36:52.23:niXzNvfm ウブな振りしたカマトト : [] 2015/10/27(火) 15:39:17.36:cLWis84+ エッジ抽出した後に抽出したエッジを一定の大きさに分割する方法はありますか? : [sage] 2015/10/27(火) 23:14:24.60:CYjwIchQ 意味わからんけど多分お前には無理なんじゃね : [sage] 2015/10/28(水) 13:31:12.87:G/+JYzkK あーはいはい、抽出した輪郭から隣接領域を再抽出したいって話ね 方法はあるけどここに書くにはフォーム欄が小さすぎて無理だな : [sage] 2015/10/29(木) 09:31:47.69:Pwuvr73T ttp://codepad.org/eoG65A9x 以下のプログラムのように(実際はエラーで動作しませんが)特定のアプリケーションのプロセスメモリを読み取ってそれを適時画像に文字として表示するプログラムを作りたいです。 どのようにすれば可能ですか? : [sage] 2015/10/29(木) 09:44:30.62:Pwuvr73T Sleep(1000)の代わりにwaitKey(10)などにしたところ無事いけました。 とあるゲームで敵のHPを画面表示するツールを作りたかったのですがいけそうですw : [sage] 2015/10/31(土) 09:23:42.61:EpOvgfvE opencv1.0に関しての質問です。 cvMatchTemplateでの結果を入れたIplImage構造体があって、cvMinMaxLocを使えばもっとも一致した点が求められるのは分かったのですが、 一定値以上の複数点を求めるにはどうすればよいでしょうか? IplImage構造体の中にchar *imageDataというのがありますが、これをどうにかして調べるんでしょうか? : [sage] 2015/10/31(土) 10:40:53.37:UnZpCVsS - C言語の配列・ポインタがわかるか - なぜ2.4や3.0ではなくopencv1.0なのか : [sage] 2015/10/31(土) 14:25:18.50:EpOvgfvE 配列ポインタは一応分かります opencv1.0なのはbcc developerで開発してるのですが、ネットで1.0の組み込み方法だけ分かったからです : [sage] 2015/10/31(土) 15:04:24.58:HfRtIykb そうか がんがれ : [sage] 2015/10/31(土) 15:57:04.83:ADar2buw ttp://opencv.jp/opencv-1.0.0/document/opencvref_cv_matching.html ここ読んでる? result 比較結果のマップ.シングルチャンネルの32ビット浮動小数点型データ.image が WラH で templ が wラh ならば, result は W-w+1ラH-h+1のサイズが必要. って書いてあるから、 flota *result = (double *)imageData;とすれば普通に読めるんじゃない? : [sage] 2015/10/31(土) 16:57:14.29:EpOvgfvE レスありがとうございます。 知識不足で申し訳ありませんが、確認させてください。 IplImage result; float result2; cvMatchTemplate(image,templ,result,method); result2 = (double *)result; としておいてresult2のアドレスが指す値を見るということで合っていますか? : [sage] 2015/10/31(土) 17:04:16.02:EpOvgfvE あ、ごめんなさい。以下でしょうか。 IplImage result; float *result2; cvMatchTemplate(image,templ,result,method); result2 = (double *)result; : [sage] 2015/10/31(土) 17:31:04.37:ADar2buw すまん、まちがえた。 float *result2 = (float *)result.imageData; かな。これでresult2[0]~result2[W-w+1ラH-h+1]が結果のデータになってると思うけど。 試してないから間違ってるかも : [sage] 2015/10/31(土) 17:35:39.94:ADar2buw おせっかいだけど、どうも、見てる限りOpenCVでのIplImageの取り扱いに慣れてなさそうだから、まずはもっと簡単なところから始めてみたほうがいいかも。 例えば、256x256のIplImageを作って、左上が黒、右上が赤、左下が青、右下が紫になるようなグラデーション画像を作ってみるとか。 色違うけど、 ttp://www2.rgu.ac.uk/subj/ats/teachingweb/teaching/t16/Wk4-Colour/PhotoshopColourPicker.jpg こんなやつね : [sage] 2015/10/31(土) 17:47:46.79:jgYZGk3p ふじこ : [sage] 2015/10/31(土) 18:14:50.38:EpOvgfvE IplImage result; float *result2; cvMatchTemplate(image,templ,result,method); result2 = (float *)result.imageData; なぜか上記のようにすると . または .* の左側に構造体が必要 というエラーが出てしまいます。 せっかく教えていただいたのに、うまくできずにすみません… : [sage] 2015/10/31(土) 20:16:22.48:cZ2VljDN cvMatchTemplaeの3番目の引数ってポインタじゃないの : [sage] 2015/10/31(土) 22:53:47.35:EpOvgfvE IplImage *result; float *result2; cvMatchTemplate(image,templ,result,method); result2 = (float *)result.imageData; ごめんなさい。こうですね。 書き込みにする時に変数名を変えたので間違えていました。 結果は変わりません。 : [sage] 2015/11/01(日) 09:20:53.49:cdDiqxbo アロケートもしてんの? ttp://opencv.jp/sample/matching.html dst_img = cvCreateImage ( .... : [sage] 2015/11/03(火) 15:47:56.37:KpPfrqOo ruby-opencvなんですが必要な色の領域だけ抽出した二値画像の重心はどのように計算すればいいのでしょうか リファレンスガイドを読んでもよく分からなかったです : [sage] 2015/11/04(水) 01:00:57.90:ZDJipCdK やってます!それがいけないんですかね? : [sage] 2015/11/04(水) 07:29:52.96:V/pJL6r2 そうですか!コードやエラーくらいそのままコピペできないんですかね? : [sage] 2015/11/04(水) 10:05:23.46:KsS1layI ・あなたは言葉で状況を説明しているが「言葉による状況描写」そのものが 誤った認識に基づいているならば情報量ゼロ ・あなたは周辺コードやエラーを「ノイズ」だと思って書かなかったのだろうが、 ここで助言をできる人たちにとってそれこそが情報 : [sage] 2015/11/04(水) 10:46:07.15:qzowSUC3 重心とかあまりわからんけど座標の平均値を取ればいいだけじゃね? : [] 2015/11/05(木) 11:50:27.70:k1mCzttB Google Maps API ならやってくれる : [sage] 2015/11/26(木) 20:40:25.32:VrX6iLNo Aの上半分をBにコピー Bの上半分をCにコピー これだけでエラー出てくるけど何なのこれ : [sage] 2015/11/27(金) 02:11:09.55:fOCe+Vm0 お前のレスが何なのこれだよ : [sage] 2015/11/27(金) 02:57:00.66:RmnfpZEz 確かに : [sage] 2015/11/27(金) 13:51:55.91:fSrmbKqg エスパーするとファイルがロックされているか、 範囲がズレてるんじゃね : [sage] 2015/11/27(金) 14:21:29.61:H/BOqAmi 知らんけど「OpenCV 浅いコピー」でググってみると幸せになれるかも : [sage] 2015/12/01(火) 10:41:38.02:WUdCKL/t 自己解決しました 僕の頭が悪いのが原因でした : [sage] 2015/12/01(火) 11:16:37.58:mOAeAozf それはわかっているから、 書き込むならせめて何を勘違いしたかくらい書け : [sage] 2015/12/10(木) 10:21:49.27:qPm1t7ac 頭が悪かったから、ではなく なにをどうしたらどうなるとおもっており、 それはそもそも単純にAしたらBになるという誤解の反映であり そのような誤解を持った理由はOpenCVにおける設計が若干クソ なのはさておき、二種類のコピーがある事、更には二種類のコピーが 用意されてる理由などを把握していなかったからでした。 これらのコピーはそれぞれ浅いコピー、深いコピーなどと呼ばれておりうんたらかんたら。 使いドコロとしては浅いコピーは(ここになんか書く) 一方深いコピーは(なんか書く) 注意しなければならないこととして Mat を operator= でアレしたときには(うんたらかんたら) (ごにょごにょ)というわけで、何をほげしたい場合には浅いコピーで十分で具体的には ほげほげで十分ですが今の場合にはほげげをすることが必要だったので 深いコピーが必要であり、そのためなんとかという構文で明示的にクローンする 必要がありました。 みたいに書く。そうやって書いておくとここ読んでる人にも有益で、おまえが 他人に教えるときにもテンプレにできるのでWin-Winだな。 : [sage] 2015/12/10(木) 12:25:42.92:gg94mj0B みんなでごにょごにょ部分を穴埋めして文章完成させるスレってのがあったな : [] 2015/12/14(月) 10:18:58.29:Mj0LvYes ttps://www.youtube.com/watch?v=0iHLJQTygkI : [sage] 2015/12/22(火) 09:12:30.04:llUOQANv Cudaで高速計算したかったらopencv3使うしかないのかな まだ2のままでいたいのだけぢ : [sage] 2015/12/22(火) 16:19:47.37:5TV3ufQe 2のGpumatってCudaじゃないのか? : [sage] 2015/12/23(水) 15:53:05.84:f3OkJGUt Cudaで超解像画像やるとか凝ったことはopencv3でしか出来ない? : [sage] 2015/12/24(木) 10:57:07.44:+Aw8uHMt 凝ったことやるなら自分で書け : [sage] 2015/12/25(金) 01:49:00.71:0g6U9lRq 典型的な頭の悪い文章だな : [] 2015/12/25(金) 20:13:24.97:0UODRZi4 : [] 2015/12/26(土) 10:23:44.42:PvF8tuZ2 >471 : [sage] 2016/01/14(木) 00:16:44.68:ejCwvGZw OpenCV触り始めたんですけど、サンプル見てとりあえず、 IplImage *src_img = NULL ; char imgfile[] = : [sage] 2016/01/14(木) 11:42:07.58:Hp2vnal5 途中だけどもポインタ渡しと参照渡しの違いか? : [] 2016/01/14(木) 19:19:23.47:MVoyv7BA ポインタのポインタだろ : [sage] 2016/01/14(木) 23:39:06.96:ejCwvGZw あれ、すいません。 コピペで貼ったんですが切れてしまいました。 IplImageをcvCreateImageしてcvReleaseImageしただけでメモリリークしているようなのですが、 他に何か終了命令などはあるのでしょうか? : [sage] 2016/01/15(金) 11:27:50.92:y8oLhUCG と、その後参照 今はcv:Matだから古いサンプルを見るのを止めるのが一番かもしれんがw : [] 2016/01/16(土) 11:06:35.60:xOOUInQQ OpenCVはただのゴミだからインストールしないのが吉。 パソコンプログラミングの超神クラスの俺でも100時間かかって動かせなかった。 はっきり言って時間の無駄。 すでに何百時間も費やして動かせるようになってる人にはとやかく言わないが、 導入を検討してる人はとにかくやめておけ。 : [sage] 2016/01/16(土) 18:01:01.85:KeKHWyn2 パソコンってことはWindowsかMacだろうけど、どっちも標準の 開発環境でやってればそんなに迷うようなことないんじゃない? まあでもそうでもないか。Windows+VSでやってたとき、わりと DLL関係のプロジェクト設定で躓いて先生に助けてもらったわ。 ああいう設定って一度知ってる人に聞かないとだめだね。 : [] 2016/01/16(土) 20:11:39.84:CPZavs1f どうしてゴミだと思ったの? どの辺が理解出来なかったか他人にうまく説明出来る? 本気でやる気があったらここで聞いてくれてもいいんだよ? : [sage] 2016/01/16(土) 22:19:27.88:F8nm5oaF パソコンプログラミングの超神クラスの俺さんなんてスルーしとけ : [sage] 2016/01/16(土) 22:37:33.57:oAUVPyCf IplImageってどこで使われてるの? 組み込みは分かるけど : [sage] 2016/01/16(土) 22:49:02.51:sreyGxGM サンプルで使われてるんだろ : [] 2016/01/17(日) 18:49:19.74:wzxdIUIG cvMatが出来る前は普通に使われてたんじゃね : [sage] 2016/01/18(月) 00:00:30.53:2kOEc2q5 環境書いていませんでしたがWindowsです。 今はMatなんですね。気がつきませんでした。 あとcvMatでも_CrtSetDbgFlagでフラグ立てておくと メモリリーク出ますね~。心臓に悪い。 : [sage] 2016/02/03(水) 08:41:59.87:TXUepsJB Opencv2とopencv3の両方で動くようにするにはcvmat使えばいいの? : [] 2016/02/07(日) 11:02:53.61:AsHZ+KLf 試せば分かる : [] 2016/02/07(日) 11:37:29.48:2wykn2ry 面倒無用 : [sage] 2016/02/15(月) 18:46:02.29:fzqH+KPW Pythonはやばいな 6行くらいでCVスクリプト動くからな : [sage] 2016/02/19(金) 00:17:23.58:VbtCQrHN VS2015 Win32コンソール int main(){ _CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ); //_CrtSetBreakAlloc( 335 ); // リークの出力の{}内の数字に適宜変更して有効にすればブレーク cv::Mat search_img = cv::imread( "zbase.png", 1 ); } new してる箇所 ~\opencv\sources\modules\core\src\matrix.cpp(241) CV_SINGLETON_LAZY_INIT(MatAllocator, new StdMatAllocator()) それを記憶する箇所 ~\opencv\sources\modules\core\src\matrix.cpp(231) g_matAllocator = getStdAllocator(); たったこれだけでリークしちまうのか 後始末してくれるメソッドの類はないっぽいし、 外側から無理矢理クリアするにも適切な方法がわからんし、どうしたもんかなぁコレ C#やPhythonで使うにしてもアンマネージドな部分のリークに不安が残る それとも識者は後始末かリークさせないようにアロケータ自前で設定してたりするのん? おせーてエロい人 : [] 2016/02/19(金) 00:23:45.79:VbtCQrHN 追伸 目的はテンプレートマッチングなんだけど、 メモリリーク箇所全部追跡しようとしたら1回検索するコード実行しただけですんげぇログ吐き出してくれて 思わずハードディスク毎窓の外にブン投げてソースコード破棄したくなった : [sage] 2016/02/22(月) 00:29:18.01:9rsZs1m0 何か気持ち悪い文体だけど自分面白いと思ってそう 質問するならそれなりの態度でお願いするべきだと思いますよ : [sage] 2016/02/28(日) 23:08:21.74:BmcAIKJd 反応しちゃダメだよ : [] 2016/03/12(土) 16:26:17.52:gc0W1ZBa 質問があります。 cv::Mat depthMat; depthMat=cv::Mat(depth->height,depth->width,CV_32FC1,depth->data)/4500.0f; とあり、最後にcv::imshow("depth",depthMat); で表示されているんですが、いままでCV_8UC1やC3,C4だったのでどうして表示できてるか 分かりません。 中身にどんな値が入っているかもわかりません。 8bitなら0~255で理解できたのですが、32bitだとデータに.atや.dataでアクセスしても変な数字しか出ません。 それに.atと.dataで値が違うのも気になります。 どなたか教えてください。 : [sage] 2016/03/13(日) 03:53:28.89:bBn3aLjI depthMat.at<float>(x,y)とかで正しい値とれない? dataの方は、((float *)depthMat.data)[i]とかしないと正しい値取れないと思うよ。 結局はバイナリデータのアクセスだから、キャストちゃんとしないとまともな数字が取れないと思う : [] 2016/03/14(月) 11:04:11.85:CN8btJSR 494です。さんの言う通りでした。ありがとうございます。 後、質問なんですがjetson tk1とかに関する質問ってどこの板が適切ですか? ご存知の方がいらっしゃいましたら教えてください。 : [] 2016/03/25(金) 13:27:39.01:1WXfEmgu ttp://halide-lang.org/ ttp://nebuta.hatenablog.com/entry/2013/08/04/135932 便利そうなんだけど誰か使ってます? : [sage] 2016/03/25(金) 14:12:42.33:1nGTC3BS 宣伝か? : [sage] 2016/03/29(火) 09:05:29.86:xWRz3Ukj どっかのへっぽこ大学じゃなくてMITがドヤ顔で作ったライブラリなんですが 宣伝乙脳になるとこういう反応になるのか : [sage] 2016/03/29(火) 14:34:26.54:gOix+kaV 有名大学だからって有難がる権威主義でも無いし 良い物ならみんな使ってる : [] 2016/03/30(水) 13:41:10.07:WoRxWRoM 君が >498 でないなら釈明する必要はないし、>500 の言い分はごもっともだがその理屈から >498 が出てきたら失笑なことは変わらない。 : [sage] 2016/04/15(金) 00:07:52.64:oWDFnHTu 結局Halideってどうなのよ : [sage] 2016/04/15(金) 09:56:02.65:PpXM10CU 良い物ならみんなとっくに使ってる : [sage] 2016/04/18(月) 00:43:54.03:kYcory21 デスヨネー : [sage] 2016/04/21(木) 10:02:38.01:0GSXCSV8 二重指数積分公式は最高性能の数値積分法であるにもかかわらず 「白人が作ったものではないから」という人種差別的な偏見によって二十年間世界から無視されていた。 : [sage] 2016/04/21(木) 12:29:30.04:9Ocgrhnl rubyをdisるのはやめれ : [] 2016/05/01(日) 15:40:06.85:tKi6j9CT 匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、 BitTorrentがオープンソースで開発されています 言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか? Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします ttps://twitter.com/Lyrise_al ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw The Covenant Project 概要 Covenantは、純粋P2Pのファイル共有ソフトです 目的 インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します 特徴 Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW) 接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です DHTにはKademlia + コネクションプールを使用します UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります) 検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません b : [sage] 2016/05/01(日) 23:11:10.08:YSbB95I/ opencvとなんか関係あんの? : [sage] 2016/05/02(月) 01:19:38.59:hL8SWjP5 あちこちコピペしてるだけだから反応すんな : [sage] 2016/05/02(月) 16:35:26.68:aR8AOrvI 2ちゃんってスパム灰汁禁にする機能あったはずなんだが : [sage] 2016/05/02(月) 16:58:14.19:zu7MqjLX なんか文末の文字変えてるみたいだけど、これで回避できんのかな。 : [sage] 2016/05/02(月) 17:03:44.61:aR8AOrvI 糞鯖に変更されたタイミングで規制まで甘くなった感じがする : [sage] 2016/05/10(火) 17:07:30.48:CV1uo/Oi Qtを組み込んだ時にnamedWindowするとデフォルトで出るコントロールパネルだけど、最前面に持ってくる方法はないのですか? 気を抜くとすぐ背面に隠れて、ウインドウ扱いされてないからタスクバーから復活できないし困ってます : [sage] 2016/05/24(火) 11:39:22.00:oX5dcQm/ OpenCVとはちょっと違うというかOpenCVのテンプレートマッチングの原理の質問になってしまうのですが、 たとえば、DFTの変換結果をそのまま逆変換してもそのままでは元の画像にならず、 各ドットの値を面積で割らないと元の値にはなりません。 では、検索対象画像Sとテンプレート画像TのDFTの変換結果から、 R[y][x].実数 = S[y][x].実数 * T[y][x].実数 + S[y][x].虚数 * T[y][x].虚数 R[y][x].虚数 = -S[y][x]実数 * T[y][x].虚数 + S[y][x].虚数 * T[y][x].実数 の様な計算でRに畳み込み、Rを逆変換して出てきた値を 1.0(完全一致)~0.0(完全不一致)や-1.0(完全逆位相)の値に正確に合わせるには どの様な計算を行えば良いのでしょうか? ttp://iphone.moo.jp/app/?p=630 (OpenCV3.1ではtemplatematch.cppの635行目、crossCorr関数となってもっと大きくなっていますが) を言葉通りに受け取って相関係数を求めてみても1.0~0.0の様な値にならず、 OpenCVのソースの理解を試みたものの、規模が大き過ぎて断念しました。 スーパーハカーな皆様、出てきた値の扱い方のご教授をお願いします。 : [sage] 2016/05/27(金) 01:40:43.75:G9GLGEnA 突然ですが 画像処理の雑音の例でよく、インパルス雑音が挙げられていますが、現在で実際にインパルス雑音の除去が必要な場面はどういう画像でしょうか? 特に高発生確率のインパルス雑音がのる場合はどんなときでしょうか? : [sage] 2016/05/27(金) 19:23:35.68:QFg12hgO ザクのメインカメラを想像しろ。宇宙空間はインパルス雑音ばかりだろ : [sage] 2016/05/28(土) 07:57:15.22:gAXtc21H OpenCVとGPUImageって、どっちを使うか何を基準に決めたらいいんでしょうか? iOS/Android環境で動作するアプリです。 : [sage] 2016/05/28(土) 11:50:17.68:YkPoIoOS 何を基準にするかは君が何をしたいかで基準そのものが変わるんじゃね : [sage] 2016/05/28(土) 17:24:12.93:28o3XPep 自己解決しました 積和の場合、周波数空間で検索対象とテンプレートの位相と振幅を乗算して 元の空間でのドット毎の数値を極端に大きくする事によって、 明度に関係なく類似の度合いを検出しやすくしていると理解しました しかし、書き込みには無かった本来の目的とは違っていたので、再度質問させて頂きます ttp://opencv.jp/opencv-2svn/cpp/object_detection.html CV_TM_SQDIFFの場合、検索対象画像Sとテンプレート画像TをそれぞれDFTで変換した後、 その変換結果である周波数空間にてどの様な演算を行っているのでしょうか? のCV_TM_CCORR又はCV_TM_CCOEFFの場合、 ttps://ja.wikipedia.org/wiki/%E9%9B%A2%E6%95%A3%E3%83%95%E3%83%BC%E3%83%AA%E3%82%A8%E5%A4%89%E6%8F%9B の離散フーリエ変換表の「時間軸畳み込み、周波数軸積」を複素共役によって反転した式だった為、 簡単に理解できたのですが、元の空間での”検索対象とテンプレートの位相と振幅の差の2乗”の総和を 周波数空間(フーリエ変換後の2次元配列)にて求める場合、どの様な式になるかまでは理解できていません プログラムのコードの提示、数学での式、どちらでも構いません、よろしくお願いします : [] 2016/05/31(火) 18:18:23.45:oGkAGoLg opencv3.1でcvCreateKDTreeをつかうにはどうすればよいのでしょうか。また、代替品などは存在しますか? : [sage] 2016/06/19(日) 13:57:35.93:I+lgUoFF 質問させてください。 OpenCVSharpで画像表示させるとき Cv.NamedWindow("window"); をいれても入れなくても Cv.ShowImage("window",img); で画像が表示できますが、あったほうがいいのでしょうか。 調べてみてもnamedwindowの必要性がわかりません。 : [sage] 2016/06/23(木) 10:09:32.60:tc69iVNd namedwindow してなければ処理に応じて画像を書き換えるとかできないよね。 OpenCVでインタラクティブなプログラムを書くときには namedwindow しておいたほうが吉 : [sage] 2016/06/23(木) 19:03:28.09:K2h1iEuW 書き換えの際に表示内容だけかえるときということでしたか! ありがとうございました。 : [] 2016/07/07(木) 16:27:38.11:kHm9gYtQ Chain of Vitalik : [sage] 2016/07/27(水) 20:30:41.40:N+3siVEw VS2010で2.4を使ってたのをVS2015と3.1に上げてみたが 未だにc4819の警告はでるんだな : [sage] 2016/08/15(月) 18:27:27.06:vd5wuXvi カメラで撮影した顔写真と予め撮っておいた顔写真を照合して 個人認証をするプログラムをつくっているのですが行き詰ってます 顔の特徴量を抽出する方法で作っていたのですが精度が悪い状態です 何か他によい方法はないでしょうか 撮影は常に顔の正面から行うつもりです : [sage] 2016/08/15(月) 19:01:16.55:GUZ7DBqH 目じりの皺まで判る解像度なのか? : [sage] 2016/08/15(月) 19:19:24.43:vd5wuXvi 解像度は640x480で距離は2~3mを想定してます : [sage] 2016/10/11(火) 12:37:00.40:pg0bsIuk 3.2まだかな。 : [sage] 2016/11/16(水) 16:17:58.62:CyMhNzzi opencvで顔認証したいのですがopencv3.1では口や鼻のxmlファイルがありません 素人なのですがどうすれば良いのでしょうか? : [sage] 2016/11/24(木) 03:35:34.42:u2lnGSkh 自前で画像処理を行う関数を作った場合、 元の画像を受け取る引数はconst参照にするのと浅いコピーで受け取るのどちらが良いんだろうか? 最適化されるだろうからどちらも同じ? : [sage] 2016/11/24(木) 06:04:11.15:dIXu87Uw CVに関係あるインスタンスなのか、全く関係のないビットマップハンドルやラスタイメージなのかで 浅いコピーの量の事情は大分変わってくる : [sage] 2016/11/24(木) 06:30:26.01:u2lnGSkh 肝心のこと書くの忘れてたcv::Matの話です。8UC3か8UC1で。 基本はopencvで処理するけどopencvにない処理なんかを実装した場合にconst参照にするかどうかで悩んでる。 : [sage] 2016/11/24(木) 06:48:47.51:dIXu87Uw リファレンスのカウントとかしてっからその関数だけで全ての処理が完結するならconst参照でもええんでないかい? 不特定多数からアクセスされるリファレンスカウンタとか関わってるから最適化掛からないとおも 速度、大きさ、合理性だけで言えばconst参照が速くて小さくなって合理的 微々たるものだろうから呼び出し回数が大した事なくて、将来の仕様変更の対策とかIF揃えたいとかに拘るなら まんまMat受け取って当面は暗黙のシャローコピーでも何でもお好きな感じでとしか : [sage] 2016/11/27(日) 10:30:50.69:eANnkNNi 引数画像を変更するつもりがないなら const 参照でいいはず。 画像の shallow copy は、仕様通りならば実質的に const 参照と 同じことになるはずだが、WGの実装力を信頼してはいけない。 : [sage] 2016/11/29(火) 16:20:17.08:90pr09cr opencv3.10では2.4シリーズのhaarcascade_mcs_mouth.xmlを使って口を検知することが出来ません どのようにすれば良いのですか? : [sage] 2016/11/29(火) 21:24:38.31:RwYrSiHB OpenCVSharpで、getRotationMatrix2Dで取得したMat型の行列にアクセス(書き換え)をしたいのですが、 やり方が全くわかりません。 ある場所(例えば[1,2]の場所の値を書き換えたいときはどのように書けばよいのでしょうか。 : [sage] 2016/11/30(水) 01:58:51.66:LKKZvee1 mat.At<double>(1,2)か、mat.At<float>(1,2)か、その辺だと思う 参考: ttps://gist.github.com/ochilab/d720c9d961ed04b8c707 : [sage] 2016/11/30(水) 09:07:49.74:n88rQVx5 ありがとうございます。助かりました。 mat.At<double>で変数に値を取得して、 それを書き換えた上でmat.Set<double>でセットするのですね。 : [sage] 2016/11/30(水) 10:02:18.01:5Sq1gvfC どなたかコレお願いします : [] 2016/12/24(土) 01:04:41.92:MxNHTNh0 javaでHoughLinesPで直線検出しようとしていますが、 候補が複数あるはずなのですが、一本しか検出できません。 何か心当たりがあればご教授ください。 ↓こんな感じで引数を渡しています。 Imgproc.HoughLinesP(CannyImage, Lines, 1, Math.PI/180, 50, 100, 50); : [sage] 2016/12/24(土) 05:50:07.86:lImTu5dP 画像も貼らずに検出できませんとか言われてもな thresholdかminLineLengthでも下げてみれば : [sage] 2016/12/24(土) 07:12:40.08:ujXjvaJi Halideいいじゃねえかこれ : [] 2016/12/24(土) 10:36:10.51:MxNHTNh0 ttp://imgur.com/gD7exqZ.png ↑がcanny画像で、これにhoughかけても一本しか検出されなくて困っています。ご指摘いただいたパラメータも変更してもだめでした。 ちなみに一本というのはLines.cols.()が1を返してます。 : [] 2017/01/29(日) 16:06:48.53:NA8VBQUD OpenCVSharp使っているんですが ゆらゆら揺れる水面で、突然激しく揺れる部分が時々現れるという動画があるんですが。 その激しいタイミングと位置を探したいんですが、まったく画像処理の知識がなくて できません。 どなたかわかる方いませんか? : [sage] 2017/01/29(日) 17:02:11.63:Qwtgij15 RGBやHSB色で移動量見るとか、特徴点出して見るとか、ヒストグラムで調べるとか、 やり方は写ってるのに合わせて色々あるだろうけど、質問の仕方から察して作るの無理だと思うよ : [] 2017/01/29(日) 17:32:41.22:NA8VBQUD 日本語むちゃくちゃですね すみません 今のところグレースケール→2値化して 白いピクセル数の変化を見たりしてます。 本とかサイトでもなんでも教えていただけないでしょうか : [sage] 2017/01/30(月) 00:11:34.45:gnAaP912 せめて画像貼って : [] 2017/01/30(月) 16:14:04.10:sqLElGA6 ピクセルごとに時間軸方向に FFT かけたら。 : [sage] 2017/01/30(月) 23:45:53.23:0n/vTVyQ ぼかしてフレーム差分とか。 : [sage] 2017/01/31(火) 04:34:23.36:QThkY3bX 最近のビデオカードはハードウェアで超解像できるそうだけど自分のmpegファイルをアップコンバートすることは出来ないのでしょうか : [sage] 2017/01/31(火) 05:36:03.78:G6XFCAsV できマス : [sage] 2017/02/02(木) 14:04:14.44:AOlHkhON deblurringしたいんだけどうまくいかない IBPとウィーナーフィルターでやってるんだけど : [sage] 2017/02/04(土) 15:29:25.58:e9aNESBj +1 : [sage] 2017/02/12(日) 08:18:37.87:fljd0HzI Halideが画像処理だけじゃなくて線形代数計算全体も高速化してくれないものか : [sage] 2017/02/20(月) 19:41:53.39:hhNdaF/Q オプティカルフローで画像をつくると1分以上かかるのですが、高速化できますでしょうか。 1280x960の画像2枚を、sperres::createOptFlow_DualTV1()で、calcしています。 : [sage] 2017/02/22(水) 19:21:43.28:hMCq2iFa CUDAとか対応してるんだっけ? : [sage] 2017/02/23(木) 08:55:26.98:6GnqaZlC 昨日ググったら、自分でコンパイルするみたいです。 コンパイルしようとしたら、ターゲットの装置にGPUが無かた。。。 後、オプティカルフローに速いもの遅いものがあるみたいで、 奇麗なのは遅いもの。。。 : [sage] 2017/02/25(土) 18:45:23.48:gXLTmYDH ソース画像の中から特定の画像を検出する方法としてMatchTemplate(テンプレートマッチング)と言う物がありますが、他に高速な方法はないでしょうか? ゲームの自動操作が目的のため、検出したい画像は固定(サイズ傾き明るさは変わらない)と言う条件です。 : [sage] 2017/02/25(土) 18:52:50.42:usTDxsWv あります : [sage] 2017/02/25(土) 23:56:17.89:gXLTmYDH テンプレートマッチング以外の画像検出にはどの関数を使用すればいいのでしょうか? : [sage] 2017/02/26(日) 00:11:56.77:dHeywt5b traincascade : [sage] 2017/02/26(日) 19:26:30.94:fmI0yaYe テンプレートマッチングだとダメなの?どのくらいの性能が必要? : [] 2017/03/05(日) 02:28:44.21:Coy+w1qj USBカメラのfpsが安定しません 30fpsの物を使っていて、9割は33msで処理をしてくれますが残りは100msを超えたりします 安定させる方法を探しています : [sage] 2017/03/05(日) 06:32:02.39:wDws2FJs カメラの機種もどういう処理してんのかも分かんないからエスパーしかできんが 暗いときとかにカメラがフレームレートを変えて露光時間を調整してるってことがよくあるかなあ この場合カメラの設定で露出とかホワイトバランスのオート設定をオフにすると解消される : [sage] 2017/03/06(月) 14:12:22.44:+nnrIuuG 電源供給が足りない場合もw : [sage] 2017/03/08(水) 20:20:15.07:idATepzM openCV を build するのに cl.exe ではなく ICL.exe を使う事は可能でしょうか? : [sage] 2017/03/09(木) 00:45:52.16:9+K5Dr1K ok : [] 2017/03/15(水) 18:24:28.23:O7NQyo3u waitkeyってどんな役割ですか? フレームレート30なら33msにしろって書いてあったんだけど、例えば画像処理するとして、1ループ全体で33msなのか、1ループを処理時間+wait33msなのかどっちなんだ、もっと違う考え方? : [sage] 2017/03/15(水) 21:12:49.81:PWzId4/U どこにそんなふざけたこと書いてあったの : [] 2017/03/15(水) 21:56:03.22:O7NQyo3u 2010の参考書に書いてあった とりあえず33msでいいでしょうみたいな 普通ならそれでいいんだろうけど、都合上ループの処理速度だけはシビアにしたい : [sage] 2017/03/15(水) 22:20:14.38:PWzId4/U webカメラの話で良いのかな? FPSの設定は VideoCapture::setかなんかでやるはずなのでwaitkey関係ない waitkeyはキー入力の為の待機なのでキー入力しないならそもそも不要 そこで33msも待機させたら同じループ内の他の処理で1msとか時間かかった時フレームレート落ちる予感 : [sage] 2017/03/15(水) 23:28:43.20:eMQeLKBC それFPSの設定知らずに最速再生の状態で各フレームのウェイトを33.333...msにして 30FPSの速度にしてる、とかじゃね?(1000ms/30FPS) : [sage] 2017/03/15(水) 23:30:17.30:2GGu2+NW なんかスマートじゃない実装だな : [] 2017/03/15(水) 23:50:57.05:hRu8oYsz やっぱりset使うんだよね 自分も落ちそうだと思ってる 使ってた本にはwaitkeyないと動きませんって書いてあって、なくしたら動かなかった気もする たぶん本はそんな感覚だと思う 自分はいらないと思ったからWait1msでやってたんだけど、フレームレート変えれるwebカメラ買ってもらって、いろいろ考えてたらwaitkeyってなんだ?ってなった : [sage] 2017/03/16(木) 00:08:08.87:Xj2KwEen 確かにhighguiを使ってる場合waitkeyがないと表示されないとかあったかも。うろ覚えなので仕様見てくれ。 あと>>とかで新フレーム取得まで待機してる間はキー入力を受け付けないだろうから キー入力が必要な場合そこで待機させるよりwaitkeyを多めに設定する方が良いかな まあ本気で何か作るならこの辺の機能は使わないだろうけど : [] 2017/03/16(木) 00:20:39.72:bGXqVYnt 確かにhighgui使ってます 使わないで出来るのね… 使ってないサンプルプログラム探してみる ある程度計測したら終了させる予定だから入らないかなぁ waitkey不確定要素が多い気がしてならない : [sage] 2017/03/16(木) 00:26:17.16:Xj2KwEen 言葉が足りなかったわopencv単独で表示するには他に方法はないと思う opencvはあくまで画像処理とかのライブラリでGUIはちょっとした確認や処理のためのおまけみたいなもん 本気で動画やカメラを使うアプリケーションを作るならGUIは別のフレームワーク使うだろうということ : [] 2017/03/16(木) 00:38:06.22:bGXqVYnt つまりopencvはwebカメラの画像取得および出力に関してはあんまり機能がなくて、取得された画像を処理することに長けていると言うこと? 初心者過ぎてすまん 画像処理としては二値化で物体検出、重心を求めるぐらいしかさせてない… : [sage] 2017/03/16(木) 10:51:13.27:q9y/P6va そもそもOpenCVに直接カメラのハードウェア設定をいじらせようってのが無理な話なのでは? あくまで画像処理ライブラリだし。 FPSを変更出来るカメラなら、仕様書なり取説なりあるかと。 シビアに計算したいのならFPSだけじゃなく、露光時間や転送時間も計算しないとダメだし。 いくら30fpsに設定しても、他の時間で100msかかってたら無意味。 : [sage] 2017/03/16(木) 12:25:54.90:Xj2KwEen そういうこと 色々言ったけど勉強したりちょっとしたことやるには十分だしwaitkey(1)で良いと思う : [] 2017/03/17(金) 03:02:10.63:Ne1jreLa set用いてfps60に設定したのに全く変化なし… じゃあ解像度変えてfpsあげようと思ったけど変える方法がなさそう 使ってるカメラの仕様には解像度1080pで30,720pで60と書いてあるのに… : [sage] 2017/03/17(金) 03:24:23.39:1Ef8W1sh ロジクールのやつで試した時は解像度640x480で60fpsいけたな ドライバ側の設定でオート機能オフにして露出下げたらあるいは : [sage] 2017/03/17(金) 05:30:42.61:1Ef8W1sh って見落としてたけど解像度を変える方法がなさそう? setでできるでしょ : [] 2017/03/17(金) 08:49:45.72:SdZqx0Vp setは動画ファイル読み込み限定でカメラ設定はいじれないっていう情報が調べたら出てきた どこまで信憑性あるかわからんけど とりあえず解像度いじったけど逆に重くなった… : [] 2017/03/17(金) 08:53:58.79:SdZqx0Vp とりあえず640試してみます : [sage] 2017/03/17(金) 09:14:45.13:8bvhsZ+L opencvの取り込み処理とかウインドウ表示とかはちょこっとopencv使いたいとき向けのでしょ きちんと使いたいときは取り込み処理を別に用意したほうが・・・ : [] 2017/03/17(金) 09:48:03.86:SdZqx0Vp そっちの方面も視野にいれてます 初心者過ぎるので、簡単なやつ希望です… : [sage] 2017/03/17(金) 11:09:35.47:SUVPLko4 だーかーらー、カメラ標準ソフトを使うとか、 せめて取説や仕様書を読めと 作る側は「簡単な物」ほど作るのは難しいってことを理解しとけ : [sage] 2017/03/17(金) 11:11:46.60:SUVPLko4 あと、ハードウェアに出来ないことはソフトウェアには出来んからな 解像度やFPSの仕様以上のことをやらせようとしたら、 超解像とかハードルが一気に高くなる上に、あくまで「作られた画像で補完」になる : [] 2017/03/17(金) 12:11:55.75:ol/nseXL >ハードウェアに出来ないことはソフトウェアには出来ん 日本語の使い方が正しくない : [] 2017/03/17(金) 12:22:39.49:SdZqx0Vp カメラ標準ソフトか… ロジクール製品なんだけど、取説とか仕様書はないに等しかった スペック通りに動かしたいだけなんだ とくに解像度はどうでもいい : [sage] 2017/03/17(金) 12:56:05.45:mRKEvJ0A 理解が正しくないよ が言ってるのは30fpsまでしか対応してないカメラで100fpsの映像を造りだすみたいな話 webカメラの製品独自の仕様はそれであるけど、探すだけ無駄。ほとんど非公開だろ 汎用的にwebカメラを制御する仕様はほぼ統一されてるしぐぐりゃ星の数ほど出るからそれ見ろ。それすら探せないってなら諦めろ : [sage] 2017/03/17(金) 13:09:25.79:ol/nseXL >理解が正しくないよ > が言ってるのは30fpsまでしか対応してないカメラで100fpsの映像を造りだすみたいな話 この意味なら漏れの理解したまんまだな : [sage] 2017/03/17(金) 14:55:16.33:1Ef8W1sh 今してるのはハードウェアでもOpenCVでもできることの話だろ なぜまずOpenCVのマニュアルを確認しないのかは知らないが : [sage] 2017/03/18(土) 00:30:42.66:+usu446B オートフォーカスとか露光の自動調整は本格的な画像処理するときにまずつまずく部分 : [sage] 2017/03/21(火) 14:26:08.25:jINUaUr9 <オートフォーカスや露光調整くらいは画像処理でやって <リアルタイム60fpsで、画面解像度はFUHDで、分解能も8bitじゃなく16bitでやってね <民生品でやってるから、そのくらい簡単に出来るでしょ? : [sage] 2017/03/21(火) 14:50:57.93:6WWBsw/3 民生品はOpenCV使ってますん : [sage] 2017/03/22(水) 17:33:09.53:/LjNvXVg Qtバックエンドのウィンドウでマウスコールバック取るにはどうすればいいんだ? : [sage] 2017/03/22(水) 17:57:34.76:+8Koiwe2 なぜここで聞こうと思った : [sage] 2017/03/22(水) 17:59:44.99:/LjNvXVg Qt組み込んだだけで本体はhighguiのウィンドウじゃないの??よく分からないけど : [sage] 2017/03/22(水) 21:23:50.72:Am7axbJi よく分かってから来て : [sage] 2017/03/22(水) 21:29:57.62:5RpsXBhr よく分からないのでそこをなんとかお願いします。 マウス座標が取得できなくて大変困っております。 : [sage] 2017/03/22(水) 21:52:58.22:dZZlEx+4 何故最初は小さいプログラムから作らないのか qtとOpenCVでマウス座標取ってこい : [sage] 2017/04/12(水) 12:58:22.47:nbU1pLts これ教えて気になる : [sage] 2017/05/09(火) 12:58:13.16:l4i4sD4Y opencv3.1で connectedComponentsWithStats使ってラベリングしたんだが 指定した面積以下はラベリング除外ってできる? : [sage] 2017/05/09(火) 12:59:17.10:l4i4sD4Y 言語はC++でVisualStudio2015 : [sage] 2017/05/09(火) 21:44:28.31:7f7VtSL1 それぐらいの処理ならソースコード読んで自分で組み込んだらいいんじゃね : [sage] 2017/05/13(土) 22:46:00.69:uY4Y4Qvj そのまんま、ラベリング結果を操作するだけでいいと思うけど。どんな動作を想定しているの? : [sage] 2017/05/14(日) 12:58:05.16:RW4x4SJY 指定面積以下にはラベル付けをしない 今は無理やりラベリングした結果の面積をif文で無理やり指定面積以下のラベルを表示しないようにしてる だからラベル番号表示すると飛び飛びなんだよね 最終的にはラベル番号がちゃんと連番かつ面積以下を除去できるようにしたいわ : [sage] 2017/05/14(日) 13:04:18.40:RW4x4SJY あとラベリングした輪郭が途切れたりしてるからラベリング統合みたいなのできたらいいなって今考えてる : [sage] 2017/05/14(日) 13:12:28.18:Eay2zfQC 変数作って指定面積以下ならラベリング結果を格納するようにして採番したらいいだけでは : [sage] 2017/05/14(日) 14:18:03.85:e/yCKCsM これをそのままプログラムにすればいいと思う。 : [sage] 2017/05/14(日) 14:59:19.86:RW4x4SJY それでいくわ : [sage] 2017/05/18(木) 17:02:45.98:ZPY3GgIW ラベリングで物体ごとにラベリングできないから領域統合してうまくラベル付けできるようにしようとした watershedで出来ないかやってみたらラベル付けができなくなっちゃった なんかいい方法ない? : [sage] 2017/05/18(木) 17:03:48.78:ZPY3GgIW 肝心なの忘れてた 環境は opencv3.1 c++ visual studio 2015 : [sage] 2017/05/19(金) 08:58:34.15:fhP/8zas 何で物体ごとにできないの?画素がつながってないから? : [sage] 2017/05/19(金) 12:52:27.14:hTRs5dEo 複雑な形かつ輪郭が繋がってる部分もあるから 一つずつラベリングしたいけど二つまとめてとかになってしまう : [sage] 2017/05/19(金) 15:15:31.69:vqbyNvRL そういうのはどういう画像かによるからエスパーじゃなきゃわからないよ・・・ : [sage] 2017/05/19(金) 16:45:09.18:hTRs5dEo 例えばこういうのをちゃんと家は一つずつラベリングしたい ttp://i.imgur.com/hOIzShz.jpg : [sage] 2017/06/08(木) 16:52:15.55:IPntxoR8 公式でC#に対応してくれんかな OpenCVSharpの人とか頑張ってくれてるけども : [sage] 2017/06/27(火) 09:09:26.10:WuBzCuMJ 質問です。 cv::Matに画像ファイルを入れる場合は、cv::imreadなのはわかりました。 unsigned char Gray[Y][X]のようなバッファを、cv::Matに代入するには、どうするのでしょうか。 : [sage] 2017/06/27(火) 12:34:28.92:u30jKple for文をネストして多次元配列の中身を一つひとつ丁寧にdataメソッドでMatクラスに移植する : [sage] 2017/06/27(火) 12:36:16.05:Tb4zoP8Z コスト大www : [sage] 2017/06/27(火) 12:40:05.25:ZZnYACXF 俺のアルゴリズムぱくんなよ todo修正コメントは入れとくがw : [sage] 2017/06/28(水) 13:53:10.62:AJijq7Zo もヨロ orz : [sage] 2017/06/28(水) 15:43:27.90:7M5wzg7m 回答すでに出てんじゃん : [] 2017/06/29(木) 21:45:32.05:yY3IPXDE 赤青のLEDを別々に認識させたいんですが、RGBの閾値よりHSVのほうがうまく認識させられますかね? : [] 2017/06/29(木) 21:52:54.97:yY3IPXDE あとカメラのオートフォーカスや露光調節をしたいんですが、highguiでは無理ですか? : [sage] 2017/06/29(木) 22:04:22.04:grguhP+/ 場合による 色空間のチャンネルをsplitしてinRangeメソッドで判定するのがスマート v4l2-ctl --set-ctrl=contrast=0 : [] 2017/06/29(木) 22:44:13.36:yY3IPXDE opencvでは無理なんですね… プログラミング全然できない自分にとっては敷居が高そうです : [sage] 2017/06/30(金) 01:43:05.65:KO2sHkgv ステレオマッチングでなんかやろうとおもってggったんだが、ネットに落ちてるサンプルコード的なのがまったくうごかん助けてくれ… Xcodeで動かしてるんだけど、なんとか修正しようとしてもcvLoadImageがNULLしか返さん : [sage] 2017/06/30(金) 06:49:52.85:vX1gPFnk エスパー募集中か : [sage] 2017/06/30(金) 09:36:32.42:sEv9UkGQ >色空間 て 一般的にどんなのがあるのでしょう。 次元が多いもの、付加情報足せるものとか、あるのでしょうか。 : [sage] 2017/06/30(金) 09:40:09.91:arYqdS+0 カメラ制御はカメラのライブラリを使え。 OpenCVにあるのは基本的にwebカメラを最低限に動かす程度、ってか全てのカメラを制御するコマンドなんてエスパーじゃないと作れん。 カメラ制御コマンドに共通規格がある訳じゃないし。 : [sage] 2017/06/30(金) 11:57:24.36:msOIpcgS cv::imread使えよ そんな化石みたいな関数使ってもいいことない とはいえどうせ画像パスがサンプルコードのままとかいうオチだろうけど : [sage] 2017/06/30(金) 12:52:20.08:3nIvuxBC 初級2ちゃんエスパー検定試験開催中 : [] 2017/06/30(金) 17:53:01.15:aYaCN+Zi 教授にUSBカメラのデバイス設定で露出とかそういうの変えられるでしょ?みたいに言われたんですが、制御、設定するプログラミングを別で組まない無理ですよね? : [sage] 2017/06/30(金) 18:17:42.49:da6qsFRC 何したいのか知らんけどガンマ補正かけたりして補正するんじゃだめなんかい せっかくのopencvだからそういう使い方しようよ あくまでソフトだから、基本的にハードの制御は他でやるべき : [sage] 2017/06/30(金) 18:35:58.87:hhb/IL1e 「USBカメラのデバイス設定」はopencvじゃないでしょ USBカメラのデバイス設定では変えれるし、例えばwindowsなら汎用の設定方法が用意されてるからそれ使えばプログラム上から設定できる : [sage] 2017/06/30(金) 19:51:51.32:AWyPN87J レスありがとう パスは変えてるよ、流石に cv::Mat使ってみたんだけど俺の理解力不足なのかまったく使い物にならん ttp://daily-tech.hatenablog.com/entry/2016/06/25/233203 このブログの3個目のプログラムなんだが、CVStereoGC~ってやつはぜんぶGC→BMって変更加えるってことしかわからんかった 誰か詳しく教えてエロい人 : [sage] 2017/06/30(金) 20:33:12.86:X7AokIbD 何で2016年にIplimageとか使ってんだよ・・・w matに書き換えるのきついならとりあえずデバッグしてみーよ そもそもエラーメッセージは何? : [sage] 2017/06/30(金) 23:32:35.26:X7AokIbD ちょっと調べてみたら StereoGCちゃんは3.系になったときにリストラされてるねwドマーイ : [sage] 2017/07/01(土) 00:44:28.30:AOCuOCf0 ttp://ishidate.my.coocan.jp/opencv_20/opencv_20.htm : [sage] 2017/07/01(土) 00:52:05.72:6uo9+xqb それ2.系のソースだから多分動かんよ : [sage] 2017/07/01(土) 02:49:09.69:PHrzZsba です まじすか、2.4.13.2でもないっぽいんでGC系は削除されてるんすね… はビルド通ったけど実行したら怒られましたね の修正したけどエラー出るソース乗っけた方がいいですか?長いしクソコードです : [sage] 2017/07/01(土) 03:32:55.02:WKIxAUak 意訳「まだエスパー検定試験した方がいいか?まだ続けようか?」 : [sage] 2017/07/01(土) 07:28:05.90:JzB6kPFv ステレオマッチングなんてそこら中にすぐ動くソースあるんじゃねえの めんどくせえからキネクト買え : [sage] 2017/07/01(土) 08:26:57.30:bop7+UjN まさかの2.系使いかよ それでそのソースが動かないということは、環境に問題がある気がする まずこのレベルのは動くのか? ttps://reiji1020.gitbooks.io/play-opencv/content/sample-code.html : [sage] 2017/07/01(土) 18:13:02.62:wwhF2J4h hough変換調べてるとよく ttp://i.imgur.com/obLDsYA.png こういう画像見かけるけど これってどうやって作成するのだ? : [sage] 2017/07/01(土) 20:29:53.52:XI3Ts6Pa バリバリに動くよ もちょい調べたら ttps://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11160807996 のソースで動いた は 書いてること同じのような気がするんだが何が違うのか… 一同ありがとう IplImageじゃないと動かないみたいだし, Matからの変換も上手くいかないし大人しく化石つかうわ IplImageってOpenCV界隈じゃもうクソ規格なのかい? : [sage] 2017/07/01(土) 21:15:51.07:g4C1aejJ opencvのバージョン何? クソ規格というか、もはや使われていない 過去の遺産的に一応残っているだけ状態 : [sage] 2017/07/01(土) 21:36:43.80:XI3Ts6Pa 上にも書いてる通りに2.4.13.2だよ 3.x系が最新で遺産が多い2.4.x系がメンテ程度に更新されてるって認識でいいのかい? 最近触ったばっかだからまったくわからん : [sage] 2017/07/01(土) 22:11:02.32:g4C1aejJ 少し違う 3系でもまだ一応遺産は残ってる ただ新しい関数ではもちろん使われないし、 StereoGCちゃんのように随時削除されていったりする : [sage] 2017/07/01(土) 22:12:56.09:g4C1aejJ だからどうしてもStereoGCちゃん使いたいから旧版使わないといけない! とかいう場合を除いて基本的に最初に入れる時は最新版の導入がよいよ : [sage] 2017/07/02(日) 02:20:04.60:2KVVeWR1 できればStereoGC使いたかったんだけど、これ以上頭混乱したくないし大人しくStereoBMで我慢しとく 丁寧な説明トンクス またわかんないことあったら来るよ : [] 2017/07/03(月) 13:20:20.57:3bAoRzZo Iplimageって過去の遺産なのか… カメラから画像取得でずっとIplimage使ってたわ 2.4.9です : [sage] 2017/07/03(月) 13:43:34.00:v5BZipuQ なんで遺産なん? : [] 2017/07/03(月) 14:15:23.22:3bAoRzZo 質問です 画像を二値化したとき、白の集団が二つあり、それぞれで認識させるってことは可能なのでしょうか? : [sage] 2017/07/03(月) 18:59:16.39:m1etFu0O findcontoursやラベリング関数で出来そう : [sage] 2017/07/03(月) 19:21:30.93:Lbjam2Yy なんで画素が連続してる前提なんだよ 集団が2つと既知ならk-meansを使えばいい : [sage] 2017/07/03(月) 19:36:31.70:pS+W+qPk モルフォロジー変換してk-meansでよさそう : [sage] 2017/07/04(火) 01:45:34.62:rUXogfnF なんでそんな喧嘩腰なんだよ : [sage] 2017/07/04(火) 02:39:23.60:48gcNEwZ 戦闘民族だから : [sage] 2017/07/10(月) 05:08:46.49:ImHRmJ7/ opencv超初心者なんですけど、カメラによるリアルタイムの映像にping画像を透過することって出来ますか? : [sage] 2017/07/10(月) 11:45:11.85:H0WRdEPX できる : [sage] 2017/07/10(月) 17:22:42.80:Txcdp1OI スーパーダサイヤ人 : [sage] 2017/07/19(水) 00:43:07.30:nwQCI0l5 誤差拡散(たとえばFloyd-Steinberg)で二値化したい場合ってバカ正直に1ピクセルずつ読んで散らしていくしかないのか? 特にインタプリタだと処理時間がバカにならないんでOpenCVの機能を使って速く計算出来ないのかな OpenCVで計算できないのであればMatのピクセル値とインタプリタの配列を高速に相互変換出来る方法でも良い ruby-opencvでやっているけどRubyがピクセル値を計算している時間よりMatを読み書きしている時間の方が長いw : [sage] 2017/07/19(水) 01:05:45.68:Ncz3nPsY 高速化したい部分をC/C++で書け : [] 2017/07/19(水) 11:33:49.64:+fK80sDM そこでFPGAですよ : [sage] 2017/07/20(木) 01:17:52.39:01uupJ2t mat.at(y,x)とBGRの罠はいい加減どうにかならないのか… : [sage] 2017/07/20(木) 06:48:41.03:m+4agcCu コンピューターの画面は左上が原点になるよう設計されてるからな タイムマシン発明して変えてこい : [sage] 2017/07/20(木) 08:12:57.01:tDwsjeaW BMPはわざわざ左下原点にしてるからややこしいことになる : [sage] 2017/07/20(木) 08:39:38.64:0b9xdtC8 Mat::atと原点位置は関係ないと思うが。低い次元(x)が後の引数なのが違和感あるってことだろ? Rとかだとxを省略したら行ベクトルを意味するとか合理性はあるんだが、OpenCVのatは 1引数で呼んだ時の動作はなんか適当だね。 : [sage] 2017/07/20(木) 08:52:36.04:CxqiqQov そもそもatとかいらん、ポインタ使え : [sage] 2017/07/20(木) 12:30:40.91:yGV4vGN/ ゲームギアは画面の真ん中が原点。 : [sage] 2017/07/22(土) 18:01:04.81:Zmb5Pcwv CからCvMat@OpenCV2.4のピクセル値を読み書きしたいのですがどのようにしたらいいですか? ググってもC++からやっている事例ばかり引っかかってCから操作している例を見つけられませんでした dataあたりから出来そうな気もするのですが・・・ : [] 2017/07/23(日) 16:50:41.03:izG3yijY その通り : [] 2017/08/07(月) 11:59:39.60:w0+OBzVI cv:Mat の 平行移動サンプルコード くださいorz : [sage] 2017/08/07(月) 19:28:00.98:S06Ddx/X 並行移動ってもうちょい具体的に : [sage] 2017/08/07(月) 20:05:51.18:FS16tv0T cv:Mat これで移動完了 : [] 2017/08/08(火) 08:52:07.91:OvVzYAy2 Mat frame = cv::imread とかやって、 frameの画像を下方向に1ピクセル移動、右方向に2ピクセル移動、 は、コーディングはどうなりますでしょうか。 : [sage] 2017/08/08(火) 11:55:52.86:yWPGhfQU いや、補完の処理をどうすんのかって話 はみ出た部分は消滅させるのか、移動した分だけ画像サイズがでかくなるのか 動いた穴の部分は黒塗りでいいのか とか : [] 2017/08/08(火) 12:04:02.43:OvVzYAy2 同じ大きさが良いです はみ出た部分は消失です。 動いた部分、黒塗りしたいです。 : [sage] 2017/08/08(火) 13:23:12.83:yWPGhfQU void hoge(Mat src, Mat &dst, int dx, int dy) { Rect rect(max(0, -dx), max(0, -dy), src.cols-abs(dx), src.rows-abs(dy)); Mat sub = Mat(src, rect).clone(); dst = Mat::zeros(src.rows, src.cols, CV_8UC3); Mat roi(dst, Rect(max(0, dx), max(0, dy), dst.cols-abs(dx), dst.rows-abs(dy))); sub.copyTo(roi); } dxとdyが移動量、それぞれ画像の右方向、下方向が正ね : [sage] 2017/08/08(火) 13:27:02.96:yWPGhfQU あ、CV_8UC3はsrc.type()の方がよかったね まあエラーとかも含めてその辺適当に。。 要するに、生き残る範囲を選択した後、黒塗りの画像上の移動先に貼り付けるだけ。 : [sage] 2017/08/08(火) 13:53:46.34:OvVzYAy2 上手くいきましたorz : [sage] 2017/08/08(火) 14:48:58.13:OvVzYAy2 意外だったのは、 >Matなんだから→行列計算で移動のアフィン変換 だと思っていたのに、 Rectで解決なんですね。 基本的な考え方がわかったような気がします。 次には、回転を自分で作る、もしくは、ネットから拾ってくる予定です。 : [sage] 2017/08/08(火) 15:30:02.27:yWPGhfQU なんだよ実装の勉強じゃないのかよ! それならopencv 平行移動 とかで何ぼでも出てくる気がする てか回転まで必要なら最初からアフィン変換使えって話になってくるだろうしw まあ頑張ってー : [sage] 2017/08/08(火) 17:00:34.40:OvVzYAy2 >それならopencv 平行移動 とかで何ぼでも 出てこないです。 >アフィン変換使えって話 平行移動は、Rect処理にします。 void rot(Mat src, Mat &dst, double degree) { cv::Point2f center = cv::Point2f( static_cast<float>(src.cols / 2), static_cast<float>(src.rows / 2)); double scale = 1.0; // 拡大率 // アフィン変換行列 cv::Mat affine; cv::getRotationMatrix2D(center, degree, scale).copyTo(affine); cv::warpAffine(src, dst, affine, src.size(), cv::INTER_CUBIC); } 回転が、反時計回転になるのが不思議ですね。 あと、degreeはラジアンじゃなくて、シータなんですね。 : [sage] 2017/08/08(火) 17:41:38.99:OvVzYAy2 反時計回転になる原因わかりました。 >GetRotationMatrix2D >正の値は,反時計回りの回転を意味します 不思議な流儀ですね。 ラップする関数でも、 この流儀に従った方がよいのか、 関数内でマイナスするか、、、 一応、自分の書きたかったことはこれで終了ですが、レスは延々と読み続けます。 : [sage] 2017/08/09(水) 00:23:06.07:XzB0Bln2 高校で三角関数やらなかった?数学では0度がx軸右方向で反時計回りに回ってって90度がy軸上方向ってのが一般的じゃない? もちろん、なぜx軸を上方向にとってy軸を右方向にとったり、x軸を右方向にとってy軸を下方向にとらなかったのか?ということを言い出したら「不思議な流儀」になるかもしれないが : [sage] 2017/08/09(水) 03:53:55.23:GMdirX6E 滅茶苦茶初歩的な質問で申し訳ないんですが #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> をインクルードしてるのにcv::circle()が無いと言われるのはなぜでしょうか imshow()やwaitkey()は使えます OpenCVのバージョンは3.3.0です : [sage] 2017/08/09(水) 07:38:06.13:wpOQdQY0 エラーメッセージを全部入れてくれないとなんともいいようがないが インクルードしてるのに関数が見つからない場合は -lopencv_core とか そんなのを指定し忘れてるとかかなぁ : [sage] 2017/08/09(水) 10:03:31.22:Nar8iR46 #include <opencv2/opencv.hpp> #include <opencv2/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> 何するか知らんが、チュートリアルレベルならだいたいこの3つで事足りる。 : [sage] 2017/08/09(水) 13:24:55.64:LtfCN5pR 再生動画(といっても、静止画の配列)のブレ補正処理は、 どういったメソッドでやられてますでしょうか? : [sage] 2017/08/10(木) 09:01:05.14:xLSenUHW cv::Matの大きさを変える場合には、 >mt = cv::Mat(height, width, CV_8U).clone(); といった書き方でよいのでしょうか? : [sage] 2017/08/10(木) 09:05:14.19:pkwCcRJu 大きさを変えるとは? 元画像があって、指定した大きさに拡大・縮小したいという意味? : [sage] 2017/08/10(木) 09:31:23.08:xLSenUHW バッファの大きさを変えるだけです。 cv::Mat mt(height, width, CV_8U); と宣言時に大きさかけますけど、 宣言後にバッファサイズを変える方法が分からなくて。 : [sage] 2017/08/10(木) 13:26:58.12:Sraj3Va7 大きさ変えるってのがうーん 今のデータを残しつつ新しい部分を追加するってこと? : [sage] 2017/08/10(木) 13:51:49.93:CcnWoQiq mt = cv::Mat(height*2, width, CV_8U); : [sage] 2017/08/10(木) 14:21:25.23:xLSenUHW え、 >.clone 要らないんですね。 左辺と右辺でバッファの実態が共有されるのに、 次の行でメモリ解放されないんでしょうか。 : [sage] 2017/08/11(金) 10:54:58.16:MAQPQwLn 新しい変数を使うのじゃダメなの?? 既存の変数のサイズを変えないといけない場面が分からないんだけど : [sage] 2017/08/11(金) 11:02:06.75:SqwigL4Y おまえもだと思うけど、そこまで難しい話しても理解できないでしょ : [sage] 2017/08/11(金) 15:26:52.99:Rv0iJ0O8 vector<int> vec(10); vec = vector<int>(20); というコードを書いたときに変数とオブジェクトの関係はどうなっているか、というレベルの話なので、C++をまずは勉強したほうがいい。 : [sage] 2017/08/16(水) 10:23:21.36:GzC89dk5 C++の勉強では、newと書くことになってるでしょ? いやだから、どうなっているか教えて? : [sage] 2017/08/16(水) 15:19:37.66:Ljo9giCK 頭悪いんだから大人しくpython使いなさい : [sage] 2017/08/17(木) 01:06:40.35:e+gexvbV newと書くことが必ずしも必要なわけではない。そして、コピーしたいときに=で済むか、cloneメソッド的なものを呼ばないといけないかは、クラスの作りによる。 続けるとスレチになるし、おそらく現状の理解からvectorの例までを理解するのにはそれなりにやりとりが必要になるような気がするので、詳しくはC/C++初心者スレッドみたいなところで質問してほしい。 : [sage] 2017/08/17(木) 02:17:20.86:PTK6O3Ph つかマジでvectorのサイズ変えるくらいなら新しい変数作ればよくね? : [sage] 2017/08/17(木) 08:27:33.84:uDwfQQpB >>708 おまえ馬鹿じゃね? おまえの書いてる時点で、vectorとのメモリ管理が違うことが明確になってるだろ。 それが分からないなんて、知能がたりない。 : [sage] 2017/08/17(木) 08:38:10.08:Rjw/N7cG 2chのプログラム関連はそんなもんだろ それが分からないなんて、知能がたりない : [sage] 2017/08/17(木) 08:58:46.16:uDwfQQpB 知能がたりないかどうかは、一旦保留にしておいて、、、 vectorのメモリ管理とMatのメモリ管理が明確に違うんだから、 cloneいるかいらないか、の判断の道筋を明確にして欲しいです。 >mt = cv::Mat(height*2, width, CV_8U); みたいな書き方をvectorでやると、 スコープ抜けると、実態が吹っ飛ぶと思うんですが。 Matは参照カウントか何か細工してますか? : [sage] 2017/08/17(木) 09:00:17.65:uDwfQQpB クラス変数にしてるので、そうできない局面で。 : [sage] 2017/08/17(木) 10:37:36.74:Rjw/N7cG > mt = cv::Mat(height, width, CV_8U).clone() これを分かりやすく展開したらこんな風に二度newした挙句memcpyまでするだろ tmp = new byte[height*width*CV_8U]; ZeroMemory(tmp, sizeof(tmp)); mt = new byte[sizeof(tmp)]; memcpy(mt, tmp, sizeof(tmp); メモリ管理連呼してるくせにメモリ管理まったくわかってないんじゃないか : [sage] 2017/08/17(木) 10:51:32.35:uDwfQQpB あ、そうなの? .cloneしなかったら、 右辺はnewしないので、 スコープ抜けたら右辺の実態は消えるということ? なら、.clone必要になるんですが。 : [sage] 2017/08/17(木) 10:58:32.69:LViMArV/ Mat mt(height, width, CV_8U); Mat new_mt(new_height, new_width, CV_8U); mt = new_mt.clone(); これじゃダメなの?? : [sage] 2017/08/17(木) 11:07:08.77:Rjw/N7cG じゃ必要だな。使っとけ : [sage] 2017/08/17(木) 11:20:36.76:uDwfQQpB クラス変数: Mat mt(height, width, CV_8U); としたとき、 Mat new_mt(new_height, new_width, CV_8U); mt = new_mt.clone(); で、cloneの有る無しで、メモリ管理は、どうなりますでしょうか。 : [sage] 2017/08/17(木) 11:21:15.48:JrjUJCSV どうも質問者はC++とJavaをごっちゃにしてる感あるな : [sage] 2017/08/17(木) 11:25:00.41:JrjUJCSV Mat mat(h, w, CV_8U); mat2 = mat; //mat2.data は mat.data と共有されてるので mat2 を変更すると mat も変更される mat3 = mat.clone(); //この時点でmat3の内容は mat と全く同じだがmat3はmat から独立してるので //mat3 に何をしてもmat には反映されない : [sage] 2017/08/17(木) 11:38:41.34:e+gexvbV vectorがどうしてcloneを呼ばなくていいか、Matでcloneを呼ばなきゃいけないときはどういうときか、そういうのを把握するためにC++のクラスの基礎的な理解が必要だって言ってるんだけど。 vectorがどうして呼ばなくていいか(どういう処理が実際に行われてるか)わかるようになればMatでどうすればいいかはソース読むか簡単な実験すればわかる 別に馬鹿にしてるわけでもないのに馬鹿だの知能が足りないだの短気なやつだな。 : [sage] 2017/08/17(木) 11:44:42.00:uUKVNIMC vectorでやってもおかしくならないよ。 : [sage] 2017/08/17(木) 12:02:48.59:uDwfQQpB おま、頭悪いなー。 vectorだと内容をコピー、 Matだと内容を共有。 動作の違いだと、なんどいったら、小一時間、、、 : [sage] 2017/08/17(木) 12:17:18.50:QOcYPa3W リファレンスやソース読めばその動作の違いはわかるよ もちろん問題なく使い分け出来てるけど、それが出来ないのは頭が悪いからなのでは?w : [sage] 2017/08/17(木) 13:33:11.05:uDwfQQpB しつこいんだけど。 バカなの?市ぬの? : [sage] 2017/08/17(木) 13:49:21.19:Rjw/N7cG 一連の流れで一番賢かったのはだな。だめだコイツ : [sage] 2017/08/17(木) 13:53:18.54:uDwfQQpB Pythonで import cv2 したら SAMEプロブレムになるのでわ? : [sage] 2017/08/17(木) 14:29:50.95:uDwfQQpB >mat2 = mat; //mat2.data は mat.data と共有されてるので mat2 を変更すると mat も変更される ここで、matがローカル変数で、mat2がクラス変数(つまり永続)のとき、 matがスコープ抜けた時って、 共有されているので、mat2の中身も変更(この場合、実態が破棄)されるということでしょうか。 それとも、そうならないようにOpenCVの中で工夫してくれているので、考えなくて良いのでしょうか。 : [sage] 2017/08/17(木) 16:55:00.33:JrjUJCSV 内部実装で参照カウンティングが使われていてれば問題なく mat2 を 使い続けられるだろうけどウィロウガレージの中の奴らを信頼するべきじゃない (基本ゴミ)なので危なそうな使い方は最初から避けるのが無難 : [sage] 2017/08/17(木) 17:02:48.62:uDwfQQpB 了解です。 無駄なステートメントになったとしても、.cloneを使うことにします。 参照カウンティング~ということは、OpenCVのベース部分にガベコレが何らか実装されているということですね。 : [sage] 2017/08/17(木) 21:16:47.77:vpgYUhkf だから最初から大人しくclone使えばいいって言ったやんけ 少しくらい量が多くなっても大して変わらん、メモリ管理ガーとか言ってる時間の方が無駄 : [sage] 2017/08/18(金) 12:07:02.89:eIpnBeVf 嫌なら new を再定義 : [sage] 2017/08/18(金) 15:39:27.28:EZSlBiH3 いや、そのりくつはおかしい。 動作が分かったうえで、 余分な処理を明示的に書くのならおkですが、 そうでなければ、 メモリリークだらけ!!! で、かつ原因不明!!!!! 調べようもない。 : [sage] 2017/08/18(金) 19:18:01.96:/zjZyZlS 基本的なことを押さえようとしないで最終的な方法だけショートカットして知ろうとしてるみたいだし、とりあえず1発なんとなく動けばいいレベルのプログラムが出来ればいいって考え方なんじゃないのかな そういうことが必要な状況もあるだろうから、否定はしないが : [sage] 2017/08/19(土) 15:22:28.74:vQyZjPpv いやならC使えよ : [sage] 2017/09/02(土) 01:09:37.90:/3mdn3Bp 初心者です。 今png画像からHoughCirclesで円を検出しているのですが、png画像で検出出来なくてもjpg画像にすると円を検出出来ることが度々あるのですが理由など分かりますか? 画像処理で精度求めるなら可逆圧縮のpngなど使うのが良いと思ってたので混乱してます。 : [sage] 2017/09/02(土) 18:51:13.79:AmWVvi8J それぞれのファイル形式でimreadしたときに、どんなMatが出てきてるか確認してる?同じようなものならHough変換の結果もそんなに変わらないはず。 : [sage] 2017/09/03(日) 16:52:49.56:QyuO11e3 求 ソースコードと2種の画像ファイル : [sage] 2017/09/03(日) 22:05:13.04:l2VSYqMz ノイズを除去してないからだろ : [sage] 2017/09/06(水) 18:11:42.76:gNGLiUGh 超能力でアレすると,アルファチャンネル付きのpngを扱ってるのが原因かも OpenCVはアルファチャンネルの画像の扱いがおかしい(ことがある)。 : [sage] 2017/09/21(木) 11:43:21.80:YvwuVHPl ttp://rad-base.com/wp-content/uploads/2015/08/005_ph04.jpg こういった感じで、ある範囲のピクセル値を持つ領域を、 外側(青)と内側(赤)に自動で分けたいのだけど、 OpenCVとか使うとできるものですか? : [sage] 2017/09/21(木) 12:27:46.38:1bEsMVa+ ある範囲のピクセル値を持つ領域 ↑ この定義によってはできるし、できない : [sage] 2017/09/21(木) 12:38:23.44:x6ZzXJvX どうやってコンピュータに理解させるかだわな : [sage] 2017/09/21(木) 12:52:28.53:4eUYxuUw ロバスト性考慮しなかったらadaptiveThreshold使えば5分でできる : [sage] 2017/09/21(木) 13:15:37.25:YvwuVHPl ありがとうございます。 ttp://www.hatchobori.jp/asset/naizoushibou.gif 説明不足でしたが、要はこういうことをしたいわけで。 (内側と外側は、同じ範囲のピクセル値) adaptiveThresholdという関数もありがとうございます。 OpenCVを調べてみようかと思います。 : [sage] 2017/09/21(木) 15:10:39.94:pZ67HTqZ Xcode で openCV動かしの民なんだか 今回のアプデでOpenCV動かんくなった もちソースに変更なし 解決方法しってる博識おらんか? : [sage] 2017/09/21(木) 15:12:39.22:Rn57IsrY だいたい医療画像って確か周波数領域で扱うもんだったでしょ? フーリエ変換してフィルタかけるとかの方がいいんじゃね?知らんけど : [sage] 2017/09/21(木) 15:14:22.21:Rn57IsrY 1.前ソースに戻す 2.動けば解決で修正とかパッチなり待てばよい 3.動かなければアプデのせいじゃないのでドンマイ : [sage] 2017/09/21(木) 15:23:01.98:pZ67HTqZ そ〜す変えてないから修正待ちするわ うんち サンクス : [sage] 2017/09/21(木) 15:45:53.27:0Ii6MUxg そ~すってOpenCV自体のソースのことじゃ無いの? OpenCVを以前のバージョンに戻してみるって話でしょ。 : [sage] 2017/09/21(木) 16:03:20.26:Rn57IsrY それ ついでに、望みはそんなにないけどまあヒントくらいはもしかしたら与えてやれるかも知れないから具体的にどう動かないのか教えてみて。 : [sage] 2017/09/21(木) 18:17:31.79:gMObALxl 本探してもC++で解説してるやつばっかりやな pythonで解説書いてるやつで初心者にも分かりやすいやつ教えてくれ : [sage] 2017/09/21(木) 19:11:25.47:vYu+noTX 割りとまじめに先にgoogleの使い方覚えたほうがいいと思うよ 覚えたら本買う気なんてなくなるから : [sage] 2017/09/21(木) 20:49:19.64:djJph1z5 OpenCVのバージョンも何も、変わらず ついこないだまでやってたXcodeプロジェクトをXcode 9.0にしたらエラー吐くようになったの 画像どこにうpすればいいかわからんからこれで勘弁して ttps://drive.google.com/open?id=0B1gQp0SqZRp6UnZoVlVxcGZKYlU ちょっとググったらシンボリックリンク貼り直せだの(やったけど治らん) brew doctorしたら pruneしろだの 言われて打ったけど動かない… 学生なんでこれ使えないと割と困るんでヘルプお願いします…>< : [sage] 2017/09/21(木) 21:23:31.99:vYu+noTX opencvなんも関係ないだろw もっとちゃんとエラー見ろよ : [sage] 2017/09/21(木) 21:40:35.95:Rn57IsrY 卒研かーい そして、プログラム君がimage not foundって思いっきり訴えてきてるけど? : [sage] 2017/09/21(木) 21:41:56.41:Rn57IsrY 基本的には何も変わらないよ あるとしたら、numpyの知識が若干欲しいくらい、それさえ覚えれば大体のことはどうとでもなる : [sage] 2017/09/21(木) 22:05:41.85:djJph1z5 そのimage not found の訴えの退け方がわからnいっす : [sage] 2017/09/21(木) 22:20:43.69:vYu+noTX www : [sage] 2017/09/22(金) 03:18:08.30:fjr8SzvJ ・・・何だろう・・・社会に出ちゃっていいのかな・・・? : [sage] 2017/09/22(金) 12:32:35.88:rbqMopce そう思っていた時期がわたしにもありました : [sage] 2017/09/22(金) 15:14:03.43:W/9VGrE5 OpenCV使わずに自力で書いた方が早い気もするw : [sage] 2017/09/23(土) 08:35:19.56:5Hpz6Jfl spyder使ってるんだけどwebカメラ起動するコード書いて実行するとフリーズするんだけど軽くする方法教えて : [sage] 2017/09/23(土) 08:45:21.28:u4bHlQKH どうせそのコードが悪いんだろ。エスパーじゃなきゃわからん : [sage] 2017/09/23(土) 09:22:06.18:3cuY+qEf まずはコードをうぷれ : [sage] 2017/09/23(土) 11:03:29.94:W5G2i5Oo そう思ってた時期が俺にもありました : [sage] 2017/09/24(日) 14:57:29.04:EP+fvRXu だけど ttps://www.messiahworks.com/archives/7852 このサイトのコードです : [sage] 2017/09/24(日) 15:16:29.64:EP+fvRXu 何回かやったらカメラは起動できたけど顔は認識されないしグレースケールにもなってない、、 : [sage] 2017/09/24(日) 15:24:39.90:KdVNcd4v 数行しかないんだから何やってるか読めよ : [sage] 2017/09/24(日) 20:38:19.42:nbM/UkzU while で意図的に無限ループ作るやつは所々 sleep 入れると動くこともある : [sage] 2017/09/25(月) 11:23:45.06:8qLoQ9vT カメラのfps内でsleep入れた方がいいよな 画像取得するまでひたすら無限ループをブン回すのは暴走の元 : [sage] 2017/09/25(月) 12:04:53.81:JnK94/2y こういう糞なテストコードをまともに動く形に持って行くのって大変だよな : [sage] 2017/09/25(月) 15:57:29.86:DS9STyAc ウェイトを入れないのもどうかと思うけど、 イベント通知やら何やらの仕組みが無いのも問題っちゃー問題ではあるんだよな : [sage] 2017/09/25(月) 21:59:03.88:aRrgPtbQ 嫌なら使うな : [sage] 2017/09/26(火) 01:10:29.20:SlBInbkD 嫌 != 大変 != 問題 : [sage] 2017/10/07(土) 21:15:49.05:taSaJaQU 画像内に写る要素の微小領域を統合したい どうすれば統合できるかな? 今はラベリングでやろうとしてるけどそれ以外の方法もあるのかな? : [sage] 2017/10/07(土) 21:44:58.48:VGyrO9v6 バラバラに散らばった領域を太らせて一個の領域にするということ?? 言ってることがよくわからないな : [sage] 2017/10/07(土) 22:34:36.02:taSaJaQU 隣り合ってるような微少領域要素を統合していって大まかなラベル分けをしたい : [sage] 2017/10/08(日) 07:50:51.35:22ZPOjtu 統合とラベリングって割と相反する概念だと思うんだけど : [sage] 2017/10/08(日) 09:18:49.15:00HukpVD こういう緑の線みたいな感じで領域統合して大まかなラベルつけたい なんかないかな : [sage] 2017/10/08(日) 09:31:06.07:ZliA/0nd どういうルールで小さいやつはどちらに分けるか決めるの? : [sage] 2017/10/08(日) 10:02:37.04:00HukpVD 特徴が類似してるほう : [sage] 2017/10/08(日) 19:10:35.72:mjOcXoyF 特徴を決める尺度により過ぎるとしか。 画像みたいに近いものでまとめるなら物体毎の重心点でk平均取るとかでいいやろうけど。 : [sage] 2017/10/10(火) 06:25:27.23:MWrCwf/c こういうやつ? ttp://docs.opencv.org/3.0-last-rst/modules/ximgproc/doc/superpixels.html サンプルでは背景からクマを分離してるけど : [sage] 2017/10/10(火) 07:42:25.30:E6iIl46r そうそうこういう感じ! : [sage] 2017/10/10(火) 09:39:21.88:NEhUrJL6 SLICまんまやん、ならそのまま使えばいいよね : [sage] 2017/10/10(火) 10:27:57.22:6ZkkQWOq 使い方わからん : [sage] 2017/10/10(火) 10:40:35.00:Hmt4/j8e じゃぁ諦めるか金出して作ってもらえ : [sage] 2017/10/10(火) 10:50:52.47:NEhUrJL6 何でやねんw784に全部書いてあるやんけw : [sage] 2017/10/10(火) 13:25:12.71:seBlNaJU ネットワークカメラの映像を流す(ストリーミング)Windowsフォームを作りたいです。 この分野は全くの初心者でざっと調べてみたらOpenCVを使うのがよさげなのでこちらで質問させてください。 そもそも、上記目的にはOpenCVが最適なのでしょうか? 取得した動画や画像で何かを処理するとかはないのでオーバースペックのような気もしています。 開発言語はVS2013のC#を考えています。 : [sage] 2017/10/10(火) 13:55:35.29:Hmt4/j8e opencvに配信機能なんかあるのか? 配信だけならmsとかのツール使えばすぐだろ : [sage] 2017/10/10(火) 14:17:41.70:IAzrS1Nq まずネットワークカメラの機種が固定でライブラリが有るかどうか あればライブラリとC#だけで出来る 汎用のWebカメラとかだったら、Directshowをラップしたり、OpenCVSharpを使うが、最初が意外と面倒 OpenCVは画像処理がメインだけども、C#のWinFormにWebカメラライブラリが無い : [sage] 2017/10/10(火) 14:41:23.40:seBlNaJU レスありがとうございます。 AXIS社製のカメラなのですが、ライブラリがなさそうな気がします。 > OpenCVは画像処理がメインだけども、C#のWinFormにWebカメラライブラリが無い OpenCVで画像(動画)を取得してもWinFormでは扱えないということでしょうか? : [sage] 2017/10/10(火) 14:57:31.39:IAzrS1Nq 言葉足らずですいません、 OpenCVで画像を取得すれば、C#のWinFormで画像を扱えます WinFormにはWebカメラのライブラリが無いので、何らかの外部ライブラリ(OpenCV等)が必要ってことです : [sage] 2017/10/10(火) 14:57:36.08:IAzrS1Nq 言葉足らずですいません、 OpenCVで画像を取得すれば、C#のWinFormで画像を扱えます WinFormにはWebカメラのライブラリが無いので、何らかの外部ライブラリ(OpenCV等)が必要ってことです : [sage] 2017/10/11(水) 00:17:39.63:nDtE4t5M ネットワークカメラと通信して画像データを取り出すところは、OpenCVの範囲ではないような気がするな AXISのVAPIXってAPIか、libvlcとか、gstreamerとか、Windows詳しくないんでよくわからないけどDirectShowとかWMFとか、その辺を触らないといけないと思う ごく標準的なWebカメラであれば、OpenCVのVideoCaptureで開けたと思うけど、Skypeとかのカメラ一覧に出てくる範囲とかそのレベルが選べるだけだと思う。 : [sage] 2017/10/11(水) 07:40:46.23:DjyQ9XYK ちなみに opencv superpixel でぐぐったらすぐ出てきたので superpixel って言葉覚えておくといいです : [sage] 2017/10/11(水) 14:01:31.60:rDStqhBV もはやOpenCV関係ないな : [sage] 2017/10/21(土) 19:29:48.36:pUWAFaS6 手持ちのVC++2010でOpenCV導入しようと思ったのに いくらプロジェクトの設定いじっても「外部参照が未解決です」みたいなエラーが出まくって 1週間くらい苦しんだ挙句VS2017をインスコして同じようにプロジェクト作り直したらあっさりエラー消えた マジファック : [] 2017/11/05(日) 22:58:47.69:usqcDD8H 失礼します。OpenCV(c++)を始めようとしているものですが早速詰まりました。 1.「brew install opencv3」で入れる 2. サンプルコードを丸コピ。`pkg-config --cflags opencv` `pkg-config --libs opencv`をつけてコンパイル。 3. すると「ld: library not found for -llibopencv_stitching.3.3.1.dylib」という文章が 4. pkg-config --libs opencvで調べたが確かにそこにlibopencv_stitching.3.3.1.dylibはある。どちてnot found? こういった感じです。ネットで調べても有力な情報が見つからなかったのでわかる方いればよろしくお願いします : [sage] 2017/11/05(日) 23:43:57.19:rdt/gOFy LD_LIBRARY_PATHが指定されてないんだろ : [] 2017/11/06(月) 10:23:29.78:RyIEypXM ぼくのOpenCV日記の始まりです : [] 2017/11/06(月) 16:11:15.68:6e1Qi6xs export LD_LIBRARY_PATH=/use/local/Cellar/opencv/3.3.1_1/lib で試したのですが何も変わりませんでした。 ちなみにこのパスはの4で出てきたやつです。 : [sage] 2017/11/06(月) 17:50:18.13:E1rpmMzq Macは入れるの楽でいいよな。 : [] 2017/11/06(月) 21:09:38.78:opoHmSqm 入れるだけなら楽なんですけどね・・・ ライブラリがnot foundのせいでネットにある導入方法が通用しなくて困る。特に変なことした覚えないのになぁ : [sage] 2017/11/07(火) 08:52:22.52:MA3TKC+1 ビルド済のばいなり落として来い : [sage] 2017/11/07(火) 20:30:57.86:JC+Xd9TU detectorでcomputeした際のdescriptが空の時(多分特徴点が見つからない時)、bfmatcherでマッチングするとエラーになるのですが、これを回避する方法はなんかいい案ありませんか? カメラから連続フレームで処理してると特徴点がない時に止まります。 簡単な回避法としてcatchとかtry-except系で例外を捕まえるのは、こちらの都合的にあまり望ましくないので、出来ればアルゴリズムで何とかしたいのですが。 : [sage] 2017/11/08(水) 10:52:56.96:71QCxxre 特徴点見つからない時にマッチングしなきゃいい : [sage] 2017/11/08(水) 18:04:00.88:N2+NmdF5 1フレーム前の特徴点も取っておいてとりあえず適用とか : [sage] 2017/11/09(木) 14:15:07.34:PLp41HOg ああ、ありがとうございますそれいいですね。 : [] 2017/11/10(金) 15:31:11.19:R4AIGq6h ver2.4だけどデフォルトで特定の色をラベリングする方法ない? : [sage] 2017/11/10(金) 16:49:51.40:5Db1u5mc デフォルトの意味が分からんけど1つの関数でってこと? 素直に色検出とラベリングに分けたらいいのに : [] 2017/11/27(月) 12:22:21.40:Wz99dXP5 顔認識ではなくて図形の認識を行いたいのですがどんな方法があるでしょうか? 認識する図形は形は同じで大きさが異なるものです。 : [sage] 2017/11/27(月) 13:43:59.68:RTSnkZuD hough変換 テンプレートマッチング : [sage] 2017/11/28(火) 19:26:07.57:/eBPJ/C2 Webカメラで顔を認識してそれをそのまま画像に保存するって言うのはopencvでは難しいですか? その辺に強いライブラリあったら教えてください : [sage] 2017/11/28(火) 20:57:44.65:LyHL9BqZ opencv使えよ 3行で出来そう : [sage] 2017/11/28(火) 21:01:14.14:LyHL9BqZ すまん認識なら3行じゃ無理だな 検出なら出来る(3行とは言ってない) : [sage] 2017/11/30(木) 01:52:38.62:gej5eZFc 顔認識はあるし保存するだけだから、 環境さえ揃っていれば数分で出来るな : [sage] 2017/11/30(木) 09:02:36.25:pAiE6DGc 認識がデフォであるわけねーだろ ぽまえらの顔はフリー素材か何かなのか?w : [sage] 2017/11/30(木) 09:04:45.62:/IB/XhDr 個人認識じゃなくて汎用の顔認識でしょ。デフォだよ : [sage] 2017/11/30(木) 09:04:50.64:pAiE6DGc まあ顔認識のワードが先行してるしトーシロちゃんが間違うのも無理ないか 簡単に言うと顔がどこにあるのか見つけるのが検出、その顔が誰のものかが分かるのが認識 : [sage] 2017/11/30(木) 09:17:26.73:pAiE6DGc それとも何だ?一般物体認識としての顔認識の分類モデルがデフォで存在するんか? まあそうだとしてもこのタスクの場合は検出とやってるレベル同じだけど : [sage] 2017/11/30(木) 09:25:53.20:/IB/XhDr 例えば↓から3.3.1落としたら、そんな中にhaarcascade_frontalface_default.xmlとか入ってるだろ その調子だとおまえにかかったらこういうのは顔認識でもモデルでもないんだろうけどさ ttps://opencv.org/releases.html : [sage] 2017/11/30(木) 09:37:28.63:pAiE6DGc haarlikeでやってるのは顔検出なんだよってに カメラとかで顔のとこに四角形が出るのがそれ 顔の場所だけを見つけるのが検出 認識つったら文字認識とか言うみたいに何の文字かまで、顔で言えば誰の顔なのかまで言い当てないと認識にはならない : [sage] 2017/11/30(木) 09:39:53.35:pAiE6DGc まあこうやって講釈たれても実際一般人には顔検出のことを顔認識で通ってしまうから何も言えねえなのが辛いところ まあでもせめてこういうスレくらいでは、ね? : [sage] 2017/11/30(木) 09:40:18.59:/IB/XhDr うん。わかってるよ。だから「無い」が正しいなww : [sage] 2017/11/30(木) 09:46:08.78:pAiE6DGc うぃっすうぃっす : [] 2017/12/01(金) 00:25:06.80:mKjNhYqE 誰の顔かってのは認識じゃなくて認証だと思ってたけど : [sage] 2017/12/01(金) 00:38:38.21:MbMxE9OK 認証ってのは、単に誰かじゃなくて、 「本人確認」して、さらに権限の認可とかにつなげることでしょ。 認識してもただ行動追跡するだけみたいなのは認証じゃない。 : [] 2017/12/01(金) 20:54:59.49:Y4Yq7bhT 日本の歯医者は途上国以下の水準。 : [] 2017/12/02(土) 13:52:20.06:XRYOyseR それな : [sage] 2017/12/02(土) 15:51:35.82:WBDDDTAk 特に駅前の○○の指定(私鉄の沿線で鉄道会社の指定とかな)だとか何とか書いてあるとことか、 わざと一定期間でダメになったり、隣の歯の治療で穴が開通する様に細工するのが上手いからな 国民の金を回させる為に水道にフッ素入れない様にとか、おかしな国だよ : [] 2017/12/21(木) 18:52:39.90:oHjju0ec カメラで物体を撮影して正確に物体の座標を特定したいです 今は物体にLEDを取り付けて閾値を用いて特定していますがより良い方法はありますか? 正確な座標と誤認識の少なさを両立させたいです : [sage] 2017/12/21(木) 19:13:42.11:RmyYVKbd そういうのは撮影環境や物体の動きとかの条件次第だからなんとも言えない グリーンバックにして環境光も変えてってできるならそうすればいいし、 物体にLEDをつけれるほどならカメラにこだわらずレーザー測距視野に入れちゃってもいいと思う : [] 2017/12/21(木) 19:33:17.15:oHjju0ec 撮影中動く物は検出したい物体のみです 環境はどんな部屋でも特定できるようにしたいのでグリーンバックなどは厳しいです : [sage] 2017/12/21(木) 19:56:58.27:RmyYVKbd 動くのが物体だけだったら諧調落としてフレームの差分とるだけで終わりそう : [] 2017/12/21(木) 21:09:06.24:oHjju0ec フレームの差分とるだけだと動く前と動いた後両方検出してしまう気がします 動く前を除けたら最高なんですが : [sage] 2017/12/21(木) 21:29:27.49:RmyYVKbd なんかもう無理そうな気がしてきた。今のLEDを輝度下げるとか小さいのにするとかそんなんで誤差小さくしたら? : [sage] 2017/12/22(金) 13:50:19.95:bIblLVHq 動く物体が「存在しない画像」を基準にすればいいんじゃね? : [] 2017/12/22(金) 21:59:17.04:FB9Qy9HR なぜか盲点でした 最初のフレームは背景だけでそれと差分取れば常に物体だけ追従できそうですね LEDの閾値と組み合わせれば誤認識少なくなりそうです : [sage] 2017/12/23(土) 09:41:48.24:4NINcBhk 背景差分ってやつだな。実際には照明の大域/局所的 変動や熱などから生じる不規則ノイズがあるので何も考えずに 差分を取るとドッタンバッタン大騒ぎになる。 というわけでロバスト背景差分が必要になるわけ。 : [sage] 2018/01/24(水) 05:55:28.59:WIw3jn1Q 顕微鏡で取得した画像に対して、OpenCVでデータ処理をしようと思っています。 まずは、フォーカス合成をした全焦点画像を作ろうと思いますが、 OpenCVにはそれに向いている関数がありますか? ご存知の方がいましたら、教えてください。 : [sage] 2018/01/24(水) 14:17:06.04:WbhmIxQ2 多数の画像があってある画像では右隅にピントが合ってるが 別の画像では真ん中にピントがあっていて…みたいのを全部 がっちゃんこして「ピントが合った部分」だけで新しい画像を作る ということでしょうか : [sage] 2018/01/24(水) 15:27:25.48:9/LCTUcH そういうことだろ。標準機能じゃできなさそうだな それだけやりたいってなら俺ならphotoshopに突っ込んで自動処理するツールつくるな。そっちの方が簡単かつ生成画像の品質もいい : [sage] 2018/01/26(金) 14:39:12.68:W0qpdmWb デコンボリューションってOpenCVに実装されてないよな? ImageJとかの方が良さそう : [sage] 2018/02/01(木) 23:11:15.72:Z+9xQhMd じゃないんだけど画像にフォーカスが合っているかとうかなんて判定出来るのかな。 特徴点検出を掛けて多い方がシャープさが高いとか?少なくとも同じ視点で撮影していることが保証されてないと厳しそう。 あとPhotoshopだと出来ると書いた人の理論も聞いてみたい : [sage] 2018/02/01(木) 23:42:52.68:eqwpdzrc 理論も何もphotoshop標準で機能あるから・・・ : [] 2018/02/02(金) 07:38:27.25:sggyuymU >画像にフォーカスが合っているかとうかなんて判定 出来る : [sage] 2018/02/02(金) 13:27:46.46:A0N74Rg+ ググりました。 2014年にPhotoshopに「焦点領域」という機能が追加されてるんですね。 なるほど、複数の画像に焦点領域で取得した画像を重ね合わせれば作れるという事だったんですね。納得です。 : [sage] 2018/02/02(金) 13:29:08.63:A0N74Rg+ OpenCVでの解決法に繋がらなくて申し訳ないです。 : [] 2018/02/02(金) 16:35:09.53:UHwa6yjc ttps://www.pyimagesearch.com/2015/09/07/blur-detection-with-opencv/ ttps://stackoverflow.com/questions/11067402/focus-testing-in-python : [sage] 2018/02/02(金) 17:11:07.25:NAEfRvIa そうやってもいいけど、画像の整列かなんかのメニュー一発でできる : [sage] 2018/02/03(土) 11:32:16.09:jcEuZ+bz memo ttps://dotapps.jp/articles/qkzakqweffl1k5qp ttp://www.gazo.co.jp/shohin_gazoum_vlfc.htm ttp://www.eyepp.com/download/pdf/EasyFocus2.pdf ttps://www.mitutoyo.co.jp/products/gazoukogaku/menu/gazosokuteikiso.pdf ttp://www.faicha.com/vision/05focus/ ピントの合い具合 同じ対象を撮影していて、ピントがあった画像と合っていない画像を比べれば、 1つ1つの輝度差(となりの画素との明るさの差)が短距離で変化するものが、よりピントがあっていると言えそうです。 1ドット右に進むごとに10づつ輝度が変わる4ドットのエリアより、 一発で40輝度変わる2ドットのエリアはクッキリしています。 これを指数化すればよいので、何も考えず、 focus = (画素輝度 - 隣画素輝度)2乗 を画面全体で計算し、これをfocusindexとしています。 この数値、映像対象が変われば当然変化しますので、混在できないとか、 あと動画に使用できないといった問題がありますが、 静止対象のピントを合わせる場合などには結構使えます。 ピント位置を追い込む 上記focusindexをZ軸を少しづつ変化させながら求めると、正規分布のようなベルカーブを描きます。 今、Z0からZnの間にピントがあう位置があると仮定し、この区間を10分割なら10分割して、 Z軸を移動させながら画像を撮影、そのfocusindexを求めます。 すると、どこかの地点で最高値が求まるので、この前後2区間(3点)の範囲にピントがあう位置があるものとします。 これをまた10分割なりして、区間を狭めていき、最終的に、Z軸の分解能で再現できなくなるまで行えば、 ピントのあう画像となります。 問題点としては、縞模様などの場合、ベルカーブにある種の振動波のようなものが観測でき、 正確に合わせられないことがあるということ。 また、ピントの追い込み方が原始的で時間がかかることなどがあげられます。 : [sage] 2018/02/03(土) 11:55:31.95:FhluCmMv どの画像がいちばんフォーカスあってそうかってのはすぐ求まるけど 1枚の画像に合成するとこで俺がやったら汚いモザイク絵になっちまうだろうなw (ひと昔前の使えないパノラマ合成をさらに酷くした状態) : [] 2018/02/10(土) 12:36:39.42:jClKPuF3 撮った後でも自由にフォーカス ttps://www.youtube.com/watch?v=te5Hd4EpZZs 後半 : [] 2018/02/10(土) 16:01:24.44:nWdR2ssV それやるなら超解像顕微鏡を使った方がいいと思う : [sage] 2018/02/10(土) 16:22:08.58:A/uZfZpr 電子顕微鏡の方がいいだろ どっちも用途違いすぎてお呼びじゃないがw : [] 2018/02/10(土) 16:25:17.78:nWdR2ssV 電子顕微鏡は画像のフォーカスがあってる部分の合成をやってないけど超解像顕微鏡はやってる 何で電子顕微鏡が出てきたのか分からん : [sage] 2018/02/10(土) 17:02:20.01:A/uZfZpr 電子顕微鏡は深度が深いから合成不要になる : [sage] 2018/02/11(日) 01:04:39.80:WMQeXuiD 波動方程式 : [sage] 2018/02/15(木) 21:16:24.20:VhZncE5y 質問失礼します。 カラー画像同士の差分を取るには、3原色に分けてから差分を取ればいいのでしょうか? : [sage] 2018/02/15(木) 21:41:15.24:soH0s4OR 「差分」の定義がそうならそれでいいんじゃね? : [sage] 2018/02/15(木) 23:01:26.70:9YODWFh5 何の差分を取るかわからんが、 とりあえずならそうなるな : [sage] 2018/02/16(金) 14:56:50.23:dBpGhFbZ それぞれ白黒にしたうえで白黒同士で差分 : [sage] 2018/02/25(日) 13:08:52.75:jgVb1mDl カラーのRGBの各要素には色がない したがって白黒にする必要ないやろう : [sage] 2018/03/02(金) 11:25:10.29
:xRs/79xP 二値化したいってことかなぁ : [sage] 2018/03/03(土) 11:57:54.05:U/tQdu7q 1. python 3.6.3 で複数(20体ほど)の生物(オタマジャクシみたいに特徴が少ないもの)の追跡を差分法でやろうとしてるのですが、前のフレームの ある一つの動体と今のフレームの ある一つの動体が同じであるか求める方法ってありますか? もしくは、他にいい追跡方法はありますか? 2. 追跡対象が方向転換するとき等、速度が落ちるときに認識が外れてしまうのですが、解決方法はありますか? プログラミングも動画処理も初めてで、動体の座標を求めてバウンディングボックスを描くところまで作りました 自分で調べてみても、近くに別の動体が来たら認識がおかしくなるような方法しかなくて… ベクトルから推測するにも、やっぱり最初に判別出来ないと意味がないだろうし… 5日くらい悩んでも分からなかったので、お願いします : [sage] 2018/03/03(土) 12:03:21.45:U/tQdu7q 抜けました カメラの位置は固定します 経時変化による光の影響はほぼ無いです : [] 2018/03/03(土) 13:05:53.25:Cp/R2Wou フレーム間隔は? サンプルの画像数枚貼れる? : [sage] 2018/03/03(土) 14:30:35.23:lnxI/7eV 2回分の検出で物体が重なった面積が大きい方が同じものとしちゃう 動きが小さい&被写体が大きいなら簡単かつ効果的だよ : [sage] 2018/03/03(土) 16:07:29.60:U/tQdu7q 返答ありがとうございます フレーム間隔について、すみません、よく分からないので、やってる方法を書きます cap.read()で3フレーム読み込んでグレースケールにしたあち、1フレーム目と2フレーム目、2フレーム目と3フレーム目の差の絶対値を取って、bitwise_andで白いところを抜き出してます すみません、公表していいのか分からない画像なので、使いたい画像は乗せられないです… 一応それっぽい画像を挙げます 大きさもこんな感じで、真っ黒なやつが動きます これを全部追跡します ttps://i.imgur.com/km9auMT.jpg そうしようと思って一度考えたのですが、画像みたいに移動した時、別の動体と重なってしまうと、別の動体同士が認識しあってしまうんです… ttps://i.imgur.com/yra8iZt.jpg : [sage] 2018/03/03(土) 16:12:11.94:iJZ2zPOp |1フレーム目 - 2フレーム目| and |2フレーム目 - 3フレーム目| ってことかな : [sage] 2018/03/03(土) 16:20:53.47:U/tQdu7q そうです。 : [sage] 2018/03/04(日) 10:12:15.34:K2njBMWG バイオ系でopencv使うならこのサイト見るのがオススメですよ お金を払えばオーダーメイドでプログラム作成もしてくれるみたいです ttp://www.cellstat.net : [sage] 2018/03/04(日) 10:57:07.58:+LBimNhC 募集してないのにうちによく作ってくれって依頼くるけど 1万2万で請け負ってもらえると思ってる奴が多すぎるw : [sage] 2018/03/04(日) 11:02:52.51:8KjE9Kl8 最低ロット50万円からですね : [sage] 2018/03/04(日) 16:18:06.12:9bUhlbFW おまえらもインテルにお金払えよな。 なんでもタダだと思ってんじゃねーよ。 : [sage] 2018/03/04(日) 16:37:51.81:+LBimNhC なんのために、どういう送金手段で、いくら、インテルに払えばいいんだ? : [sage] 2018/03/04(日) 17:13:02.33:9bUhlbFW なんのためにってやっぱりタダが当たり前だと思ってんのか。readmeすら読んでないとかありえん。 ttps://opencv.org/ [Donate]をクリックして進め。おまえは馬鹿だからまず1万ドル払え。 : [sage] 2018/03/04(日) 17:27:20.07:+LBimNhC Donate ↑この意味調べてから書けよ・・・ : [sage] 2018/03/04(日) 19:44:19.46:7GbP/ecV この人現役大学生なのに凄いよね 仮想通貨を使ったビジネスも始めてるみたいだし : [sage] 2018/03/04(日) 23:05:20.43:LZR9dBvJ まずは君が払った証拠を持って来てよ : [sage] 2018/03/07(水) 08:42:49.07:3giPn1xI カラー動画を0と255の2値動画に変換して出力たのですが、実際出力された動画の画素を分析すると2値になっておらず、中途半端な値がかなり混ざっています これはどうしようもないことなのでしょうか : [sage] 2018/03/07(水) 08:47:06.43:HKdkc2d0 変換処理もしくは分析処理にバグがあるだけでしょw : [sage] 2018/03/07(水) 08:58:33.04:HKdkc2d0 「出力」か。jpgだとjpg化処理で色変わるぞ : [sage] 2018/03/07(水) 09:06:56.66:3giPn1xI jpgというより、動画で出力しているのでmp4です 形式がまずいとかそういう事なのでしょうか 処理は間違っていない気がするのですが…(画素値には0と255以外入れていないので…) : [sage] 2018/03/07(水) 10:07:44.62:kIj9vkCx mp4はjpegと同じで劣化するだろ。フレーム単位で2値化なんかしたら、HDDいくつあっても足りんわ。 : [sage] 2018/03/07(水) 10:13:12.85:3giPn1xI 劣化させない方法ありますか? : [] 2018/03/07(水) 10:38:55.00:4T48SgsL png 動画も可能 : [sage] 2018/03/07(水) 23:13:46.94:TgI6DfYx 圧縮しなければいい しても可逆圧縮 : [sage] 2018/03/07(水) 23:26:53.22:MzP8rhu8 詳解openCV3.0はまだ? : [sage] 2018/03/08(木) 06:41:23.88:lmdxw4R7 優秀な人だけが質問し回答すれば劣化しない : [] 2018/03/08(木) 10:09:46.81:ue18PqKi お帰り下さい : [sage] 2018/03/09(金) 17:15:10.42:2PlJUe+0 Python3.6.3で Pyinstaller を使い.exeにして、コンソールに直接 動画ファイル名を打ち込んで動画処理しようとしていたのですが、動画ファイルだけ読み込んでくれません 何故なんでしょう? webカメラはキャプチャ&処理してくれるし、.pyの状態だと動画ファイルも読み込んで目的通りに動くので、アルゴリズム自体は大丈夫なんだと思います import cv2 import os x = os.path.dirname(sys.argv[0]) os.chdir(x) Device = input('file:') if Device == '0': Device = int(Video) cap = cv2.VideoCaputure(Device) ret ,frame = cap.read() if not ret : print('cannot read video') cap.release() cv2.destroyAllwindows() スクリプトがあるディレクトリを指定し、動画も同じディレクトリにいれて、コンソール画面でファイル名等を打ち込み、キャプチャしようとしてます そうすると、.exeだと cannnot read video と出力されてしまって… : [sage] 2018/03/09(金) 17:29:30.02:x113zZI2 パスが悪いんだろ。ファイル名入れるときは絶対パスでいれたら? : [sage] 2018/03/09(金) 18:24:10.54:2PlJUe+0 そう思って、一度動画ファイルの絶対パスを入れてやってみたんですが、それでもダメでした… .pyとの違いって何や…エラーも出てないですし… : [sage] 2018/03/09(金) 18:25:06.79:goWJjV3D 895が言ってる問題かどうか切り分けるために動画が置いてある場所に(動画じゃない)jpgとか 置いて開けるか試したら? : [sage] 2018/03/09(金) 19:00:06.63:2PlJUe+0 .exeの方でやってみたら、cvrColorがエラーしてるって出ました。 .pyだと、cannnot read videoです。 cv2.videocaputureをcv2.imreadに変えたら.exeでも.pyでも表示されました 絶対パスじゃなくても、 ファイル名.jpg だけでもどちらでも開けました videocaputureに問題があるのかな… : [sage] 2018/03/09(金) 23:17:54.44:CIfBOObq exeなんて使わんから知らんけど.pyで動いてるのに.exeにしたら動かないならそのpyinstallerとやらが悪さしてるんだろ : [sage] 2018/03/09(金) 23:19:53.75:CIfBOObq 実行ファイルにするなら普通にc++で書けよ、わざわざpythonで書く意味なくね : [sage] 2018/03/10(土) 00:03:20.98:Fc7JY5v5 ですかね…他のexe化モジュールも何かエラー吐きすぎて無理そうだったし、時間ももったいないから諦めます python 入れてもらおう… 元々自分用に作ってて使ってたら、横で見てたプログラミングの知識の無い人が、それ欲しいといったから、配布しようとしたんですよね プログラミングを知らない人って、あの文字列を見ただけで怯むから、アプリにして、後は数値やら動画ファイルだけを突っ込むだけにしようかと思ってまして : [sage] 2018/03/10(土) 01:34:41.65:G7HWt9L5 opencvの動画周りってffmpeg使ってたと思うけど、pyinstallerではそのあたりのdllも一緒にまとめてくれるのかな。 : [sage] 2018/03/10(土) 12:33:23.68:fQg9dcpA そういうの時間と労力のの無駄になるよ。 口に餌を運んであげたら、その猫の糞も始末する 責任が生じるんだ。 : [] 2018/03/10(土) 12:39:54.84:TTti/WSS +1 : [sage] 2018/03/10(土) 12:44:27.65:MMBWY1KZ これがありそう : [sage] 2018/03/10(土) 13:41:12.50:ZHQZnt9p 普通にクラ側にpython環境入れるかc++で書くかの2択だろ pyinstallerの中身調べるとかナンセンスすぎる : [sage] 2018/03/10(土) 14:09:42.64:MMBWY1KZ って理由出してるのにその二択にするのはナンセンスよ : [sage] 2018/03/10(土) 14:13:05.19:Fc7JY5v5 Python を入れて貰うことにしました 結構使えるプログラムだと思うから、これで我慢してもらおう 調べたらこれっぽいです…w 解決策もあったけど、opencvが何かマルウェアみたいでちょっと怖いですね…諦めたほうがいいみたいです 一応お世話になってるし、色々権力があるから媚び売りたい って言うのは内緒です ですね… 最初、使い方を調べたら一瞬でできるみたいだったからやってみたはいいけど、opencv を入れたスクリプトには向いてないみたいです 他の同じような方の参考にもなれば : [] 2018/03/10(土) 15:43:56.99:GkfRicR7 反面教師かよ : [] 2018/03/10(土) 20:26:38.44:2uc/dzDb つか業務でソフト開発して詰まったら5chで質問とか終わってるエンジニアだな : [sage] 2018/03/10(土) 22:22:49.59:9iAajXjm 5chで質問でも解決しようとしてるだけマシ : [] 2018/03/11(日) 10:09:08.45:zWe+i43K 質問するだけで意外と解決するからな : [sage] 2018/03/11(日) 10:28:55.93:wWFsao1Q 質問しようとするだけで思考がまとまるし、じっとしてるだけより何でも行動すべきでしょ : [] 2018/03/11(日) 14:45:50.34:vNegY1zF ネットで質問して回答通りにやってうまくいったからOK みたいな開発者になると最悪だが、 得た回答を元に公式のドキュメント読み直すなり 再度情報を整理して、正しく理解できるならそれでいい : [sage] 2018/03/11(日) 15:04:38.03:qC+CBm/n 5chなんて無能とキチガイしかいないからな 煽ったり無知装ったりなにしても情報とれりゃそれでいいんだよ : [sage] 2018/03/11(日) 16:15:24.52:xYekkBDX レスポンスが一番早いのは5chだしな 煽られてもその中に正解が入ってたりするし : [sage] 2018/03/11(日) 16:27:58.94:5zOh4BZk まあ社会人として業務知識みたいなのをSNSで聞くのどうなんですかって話じゃないかな : [sage] 2018/03/11(日) 16:55:03.93:qC+CBm/n 業務知識ってなんだよw 社外秘のデータや方法出してるわけでもあるまいしどうでもいいじゃん : [sage] 2018/03/11(日) 23:43:36.95:229ElWIS エスパーするとおれが答えられない質問はするな、ということですな。 : [] 2018/03/12(月) 18:09:21.49:IkK1NW+e ゲェジ丸出し : [sage] 2018/03/12(月) 21:43:43.45:yCds6qtp opencv でPCの特定のウィンドウをビデオキャプチャすることはできますか? 普通にバンディカムの方がいいかな… : [] 2018/03/13(火) 15:23:28.24:MHQfuTqc できるよ : [sage] 2018/03/24(土) 09:59:45.15:kRga3xpS python版opencv で I1 I2 I3 の3つの画像(全て.png)を一つのマルチTIFFファイルにしたいんですが、cv2.imwrite だと複数指定できなくて困ってます 何か方法はありませんか? : [sage] 2018/03/24(土) 10:19:44.14:HVeGf4kL tiffとか使ったことないけど 普通に3枚pngを出力してからtiffにしたらええやろ : [] 2018/03/24(土) 12:10:52.48:5hh+Vua5 この本読んだ人いる? 感想おしえて ttps://www.amazon.co.jp/dp/4061538292 : [sage] 2018/03/24(土) 12:42:31.44:kRga3xpS すみません、出力して、どう1ファイルにまとめるのかが分からないのです : [sage] 2018/03/24(土) 13:08:28.71:vw8qMkfM 「マルチtiff 変換」 ↑ これでぐぐればいいだろ。それも分からないのか・・・ : [sage] 2018/03/24(土) 13:26:05.40:kRga3xpS 調べて見つからなかったから質問してるんです どれもこれも読み込みのことしかなくて、マルチTIFFファイルとしての出力がないんです : [] 2018/03/24(土) 14:11:09.85:5hh+Vua5 ttp://raymondlo84.blogspot.jp/2015/09/how-to-write-multipage-tiff-file.html ttps://github.com/opencv/opencv/issues/8729 : [sage] 2018/03/24(土) 14:12:32.27:vw8qMkfM 「マルチtiff 変換」でぐぐって一つ目のリンククリックして、開いたとこの先頭に > (BMP,JPEG,JPEG2000,GIF,TIFF,PCX,FPX,PNG)からのダイレクト変換可 > 1つのファイルに複数の画像を収めることができるマルチページTIFFの一括作成に特化された ってあるが、これ使ってもできないのか? : [] 2018/03/24(土) 14:13:57.20:5hh+Vua5 ttps://stackoverflow.com/questions/18446804/python-read-and-write-tiff-16-bit-three-channel-colour-images : [] 2018/03/24(土) 14:15:42.02:5hh+Vua5 ttps://github.com/opencv/opencv/pull/10367 : [sage] 2018/03/24(土) 14:37:06.91:nKlKWZZe コマンドラインでtiff変換するやつとか適当に使えばいいだろ 保存した3つのpngのパスは分かってるんだから その3つを入力して適当にtiffで出力して終わり コマンドライン操作?何それ?ってレベルならお勉強して下さいとしか・・ : [] 2018/03/24(土) 16:00:18.70:RN0GX0Rk sox : [sage] 2018/03/24(土) 16:04:43.37:KNKwWkOj いくらでも出てくるぞ ttps://www.scivision.co/writing-multipage-tiff-with-python/ : [] 2018/03/25(日) 22:45:30.51:TPJYUSzf すいませんお教え願えませんでしょうか? ガタガタのドッド絵画像の線をある程度直線で近似してなめらかな線にして 頂点位置の取得をしたいのですが 途中でつまずいてしまいました やってみたのは openCVのチュートリアルサイトにあったのを ttp://labs.eecs.tottori-u.ac.jp/sd/Member/oyamada/OpenCV/html/py_tutorials/py_imgproc/py_contours/py_contour_features/py_contour_features.html for (i,cnt) in enumerate(contours): epsilon = 0.01*cv2.arcLength(cnt,True) approx = cv2.approxPolyDP(cnt,epsilon,True) img=cv2.drawContours(img,[approx],0,(0,0,0),0,lineType=cv2.LINE_AA) をやってみたのですがなめらかな線はcv2.LINE_AAで出るのですが 元のドット絵みたいな線がガタガタな所と きれいな直線になっているところがばらばらでした そこでcornerHarrisで角になっているところを表示してみました でもcornerHarrisででた頂点をdrawContoursで繋ぐ方法が分かりませんでした この方法でいいのかもちょっとわからず・・・すいません、どうしたら良いのでしょうか? : [sage] 2018/03/26(月) 00:05:18.20:W+zxXBoo ちょっと意味が理解できなかった なめらかな直線に近似したら頂点の座標なんて分からないと思うが : [] 2018/03/26(月) 00:50:07.07:N7ZMfeIe 説明へたくそですいません ttps://imgur.com/a/ImM2E オーバーに描くとこんな感じです。 元画像の白と黒の境界のギザギザ部分は滑らかな線にして(cv2.LINE_AAでできた) 形自体は直線で近似するので頂点ができるので その頂点の座標も知りたいという感じです。 : [sage] 2018/03/26(月) 01:24:26.81:NBtGWsLw ゴミだったよ その次に出た応用編は良かった : [] 2018/03/26(月) 05:10:27.60:OxsjGzhh フーリエ変換だな
凡例:
レス番
100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている
名前
名無しさん (青) → sage のレス
名無しさん (緑) → age のレス
ID
ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID
このページは2ch勢いランキング が作成したアーカイブです。削除についてはこちら 。