Mobile Keplerは、Tegra"Logan"に搭載され、2014に出荷される予定である
残念ながら、Mobile Keplerのデモは、OpenGLの機能を示すデモだったが、Mobile KeplerはCUDAをサポートするため、モバイルでのOpenCVの処理速度の増加が期待できる
ニュースは、ここ
OpenCV、機械学習、はやりのDeep learningの環境構築の方法、サンプルの動かし方、APIの使い方、Tipsなどをすぐに忘れてしまうので、備忘録として記録している。記憶がなくなるスピードが、早いのでメモしておかないと再現できなくなる確率が高まっている。 最近、再度HDDを飛ばしてしまい、過去の自分のページに再度助けられた。 また、DNNモジュールを触る機会が増えているので、C++からPyhonへと鞍替え中。 内容を気にいっていただければ、twitterで紹介願います。
2013年7月25日木曜日
2013年7月24日水曜日
GPU Tech ConferenceでのOpenCV CUDAのプレゼン資料とビデオが公開された
OpenCVニュースでGPU Tech Conferenceでのスライドとビデオが公開されたと案内されていた。
双方ともダウンロード可能なので取得して見てみるつもりである
今回は、技術的内容が少なかったが、7月に行われる2回目では、OpenCV on GPUのコードのサンプルが示されるだろうとのこ
補足
ニュースにWebinarと聞きなれない単語が出てきたので調べてみると、
ウェビナー/Webinar
WebとSeminarを組み合わせた造語。ネット上で行われるWebセミナーのことを指す
だそうだ
補足
ニュースにWebinarと聞きなれない単語が出てきたので調べてみると、
ウェビナー/Webinar
WebとSeminarを組み合わせた造語。ネット上で行われるWebセミナーのことを指す
だそうだ
2013年7月18日木曜日
OpenCVのチュートリアルが 9th International Conference on Computerで行われる
イベントに関してはここ
チュートリアルの概要を読むと、
- iOS and Androidのサポート
- モバイル機での開発のポイント
- 既存コードの移植
- サンプル tipsの紹介
が話されるようだ
海外のイベントなので聞くことができないが、そこで使用される資料が公開されている
2013年7月12日金曜日
OpenCV 2.4.6でHOGを試してみた
人物検出器として有名なHOGDescriptorがOpenCVで提供されている
sampleが samples\cpp\peopledetect.cppで提供されているので試してみた
説明はここ。GPUが付かないオリジナルの説明はない
パラメータを調整しないと性能は出ない。
検出結果を増やすには、hit_threshold とgroup_threshold の値を下げる。
オリジナル
hog.detectMultiScale(img, found, 0, Size(8,8), Size(32,32), 1.05, 2);
padding は、must be (0,0)と説明があるが、sampleでは他の値が設定されている
パラメータ調整
hog.detectMultiScale(img, found, -0.5, Size(4,4), Size(0,0), 1.05, 1);
相違は少ない
パラメータ調整 2
hog.detectMultiScale(img, found, -0.5, Size(4,4), Size(0,0), 1.05, 0);
グループ閾値が0だと結果がグルーピングされない
2013年7月11日木曜日
OpenCVのロードマップが更新されている 続き
昨日ロードマップが更新されたばかりだが、今日見てみるとさらに更新されていた。
変更点
2.4.7が 11/1から10/1に
対応予定のチケットを減らしてリリースを速めたようだ
3.0-alpha 10/1
3.0-beta 12/1 がリリースされ、正式版が 2014/2/1に延期
alpha、betaの内容は記載がないので、機能限定になるのか、安定性の違いになるのかは不明
また2.4.8が新たに追加され 2014/3/1にリリース予定
内容は未定
変更点
2.4.7が 11/1から10/1に
対応予定のチケットを減らしてリリースを速めたようだ
3.0-alpha 10/1
3.0-beta 12/1 がリリースされ、正式版が 2014/2/1に延期
alpha、betaの内容は記載がないので、機能限定になるのか、安定性の違いになるのかは不明
また2.4.8が新たに追加され 2014/3/1にリリース予定
内容は未定
2013年7月10日水曜日
OpenCV2.4.6のsampleを眺めてみた
2.4.6と2.4.5の samples\cppを眺めてみた
tutorialは見ていないが、変更されたソースは4点
大した変更ではない
tutorialは見ていないが、変更されたソースは4点
- freak_demo.cpp バグ修正
- latentsvm_multidetect.cpp windowsコンパイル条件の変更
- lkdemo.cpp バグ修正
- stereo_calib.cpp コメント変更
大した変更ではない
2013年7月9日火曜日
OpenCVのロードマップが更新されている
2.4.6のリリースが1月遅れてしまった。その影響で3.0の予定が遅れると思っていたが、変わりがなかった。
しかし、今日ロードマップを見てみると、3.0のリリースが12/1になっており、また、2.4.7が追加され、11/1にリリース予定となっている
チケットの一覧が表示されているが数が多い。画面右側にカテゴリで分類されているので、気になる項目を確認してみるとよいだろう
Windows7 64bit版にOpenCV 2.4.6の開発環境を構築した
検索などでこのページを訪れる人が、数は少ないけど、コンスタントにいる。
ちょうどこの上にあるG+1のボタンを押してもらうと、Goolgeの検索に見つかりやすくなるので、ご協力いただきたい。
Windows版は、OpenGLやOpenNIを使用しなければ、ダウンロードしたファイルを展開して設定すれば使用できるので、30分もかからず環境ができる。
(ダウンロード時間や、Visual Studio 2010 Express Editionのインストールを除く)
2.4.4からVisual Studio 2012がサポートされるようになったが、以下は、Windows7 64bit版上で、Visual Studio 2010 Express Editionでプログラムを開発するためのものである
(Windows7 32bit版でも同じ手順でできる)
1 ここからWindows版をダウンロードする
2 OpenCV-2.4.6.0.exeを実行しインストールディレクトリc:\を指定する
3 展開後、ディレクトリ名をopencvからopencv246に変更する
4 OSの環境変数の設定(要管理者権限)
コントロールパネル、システムとセキュリティ、システムを開き
システムの詳細設定の環境変数ボタンを押し
システム環境変数のPathの編集
末尾に";C:\opencv246\build\x86\vc10\bin"を追加
(この作業後、一度ログオフし、再度ログインする)
5 Visual C++ 2010 Expressのパスの設定を行う
この記事を参考
ただし、各パスは、C:\opencv246\build\includeと、C:\opencv246\build\x86\vc10\libに変更する
6 手持ちのサンプルをビルドし動作確認する
参考 古いバージョンの記事
Windows7 64bit版にOpenCV 2.4.5の開発環境を構築した
Windows7 64bit版にOpenCV 2.4.4の開発環境を構築した
Windows7 64bit版にOpenCV 2.4.3の開発環境を構築した
Windows7 32bit版にOpenCV 2.4.2の開発環境を構築した
ちょうどこの上にあるG+1のボタンを押してもらうと、Goolgeの検索に見つかりやすくなるので、ご協力いただきたい。
Windows版は、OpenGLやOpenNIを使用しなければ、ダウンロードしたファイルを展開して設定すれば使用できるので、30分もかからず環境ができる。
(ダウンロード時間や、Visual Studio 2010 Express Editionのインストールを除く)
2.4.4からVisual Studio 2012がサポートされるようになったが、以下は、Windows7 64bit版上で、Visual Studio 2010 Express Editionでプログラムを開発するためのものである
(Windows7 32bit版でも同じ手順でできる)
1 ここからWindows版をダウンロードする
2 OpenCV-2.4.6.0.exeを実行しインストールディレクトリc:\を指定する
3 展開後、ディレクトリ名をopencvからopencv246に変更する
4 OSの環境変数の設定(要管理者権限)
コントロールパネル、システムとセキュリティ、システムを開き
システムの詳細設定の環境変数ボタンを押し
システム環境変数のPathの編集
末尾に";C:\opencv246\build\x86\vc10\bin"を追加
(この作業後、一度ログオフし、再度ログインする)
5 Visual C++ 2010 Expressのパスの設定を行う
この記事を参考
ただし、各パスは、C:\opencv246\build\includeと、C:\opencv246\build\x86\vc10\libに変更する
6 手持ちのサンプルをビルドし動作確認する
参考 古いバージョンの記事
Windows7 64bit版にOpenCV 2.4.5の開発環境を構築した
Windows7 64bit版にOpenCV 2.4.4の開発環境を構築した
Windows7 64bit版にOpenCV 2.4.3の開発環境を構築した
Windows7 32bit版にOpenCV 2.4.2の開発環境を構築した
OpenCV Manager 2.4.6のrev2がリリースされていた
isw11scのOpenCV Managerを 2.4.6に更新したらサンプルが動作しなくなったので、手動で2.4.5に戻していたが、その後rev2がリリースされていた
コメントには、いくつかのHWでロードされないバグを修正とあったので、再度更新したところ、2.4.6のサンプルが無事に動作した。
コメントには、いくつかのHWでロードされないバグを修正とあったので、再度更新したところ、2.4.6のサンプルが無事に動作した。
2013年7月8日月曜日
OpenCVのライブラリーのビルドに関して
Windows用のOpenCVはバイナリーで提供されており、試すだけなら自分でビルドする必要はない
しかし、
Qt
OpenGL
OpenNI
TBB
OpenMP
CUDA
OpenCL
などを使用したい場合は、自分でCMakeのOptionを設定して、ビルドを行う必要がある
各モジュールの組み込み方は、tutorialドキュメントの P18以降の
Installation by Making Your Own Libraries from the Source Files
に記載されている
しかし、
Qt
OpenGL
OpenNI
TBB
OpenMP
CUDA
OpenCL
などを使用したい場合は、自分でCMakeのOptionを設定して、ビルドを行う必要がある
各モジュールの組み込み方は、tutorialドキュメントの P18以降の
Installation by Making Your Own Libraries from the Source Files
に記載されている
OpenCV 2.4.6の Build情報を表示させてみた
cv::getBuildInformation()を使用し、OpenCV2.4.6のビルド条件を表示させてみた。
VideoIOのインタフェースが追加されている
参考に2.4.5を
モジュールが追加されている
以前のはこちら
VideoIOのインタフェースが追加されている
参考に2.4.5を
モジュールが追加されている
以前のはこちら
2013年7月4日木曜日
OpenCVforAndroid 2.4.6を試してみた
サンプルのプロジェクトをimportしてビルドしてみたが、native-activityのndkでエラーが生じた
プロパティを見てみるとC++の${NDKROOT}/ndk-build に””がついており、削除することで解決した
また、OpenCV2.4.6のリリースにあわせてOpenCV Managerも2.4.6に更新されていたので、更新してみたが、サンプルプログラムが動作しない
デバッガで見たところ、onManagerConnectedのイベントが呼ばれていないので、サービスと接続できていないようだ
いろいろ試したところ、OpenCV Manager 2.4.6に問題があることがわかり、isw11scのOpenCV Managerは2.4.5に戻している
(通常一旦更新すると戻すことはできない。そのため携帯から一旦削除し、OpenCV-2.4.5-Android-sdkのapkのフォルダーに含まれている OpenCV_2.4.5_Manager_2.7_armv7a-neon.apk を USB 経由でinstallすることで戻している)
プロパティを見てみるとC++の${NDKROOT}/ndk-build に””がついており、削除することで解決した
また、OpenCV2.4.6のリリースにあわせてOpenCV Managerも2.4.6に更新されていたので、更新してみたが、サンプルプログラムが動作しない
デバッガで見たところ、onManagerConnectedのイベントが呼ばれていないので、サービスと接続できていないようだ
いろいろ試したところ、OpenCV Manager 2.4.6に問題があることがわかり、isw11scのOpenCV Managerは2.4.5に戻している
(通常一旦更新すると戻すことはできない。そのため携帯から一旦削除し、OpenCV-2.4.5-Android-sdkのapkのフォルダーに含まれている OpenCV_2.4.5_Manager_2.7_armv7a-neon.apk を USB 経由でinstallすることで戻している)
OpenCV 2.4.6のドキュメントを取得した
ようやく公式ページで2.4.6のリリースがアナウンスされた
OpenCV 2.4.6のDocフォルダーには、2.4.4同様にマニュアルなどのPDFがなかったので、http://docs.opencv.org/ から関連するPDFを取得した。
The OpenCV User Guide Release 2.4.6.0
P19 2013/7/1
2.4.5とページ数は変わらず
The OpenCV Tutorials Release 2.4.6.0
P421 2013/7/1
2.4.5から増加
The OpenCV Reference Manual Release 2.4.6.0
P813 2013/7/1
2.4.5から増加
以上
OpenCV 2.4.6のDocフォルダーには、2.4.4同様にマニュアルなどのPDFがなかったので、http://docs.opencv.org/ から関連するPDFを取得した。
The OpenCV User Guide Release 2.4.6.0
P19 2013/7/1
2.4.5とページ数は変わらず
The OpenCV Tutorials Release 2.4.6.0
P421 2013/7/1
2.4.5から増加
The OpenCV Reference Manual Release 2.4.6.0
P813 2013/7/1
2.4.5から増加
以上
2013年7月3日水曜日
OpenCVforAndroid 2.4.6
2.4.6をダウンロードしたついでに開発環境を構築しなおした
eclipseはAndoridのページから自分のOSに合うものをダウンロード
ダンロード後、展開してeclipseのフォルダーをhome直下に移動
terminalを起動して、eclipseのフォルダーに移動し、eclipseを起動する
2.4.5のプロジェクトがあるとややこしくなるので、すべて削除
最初に、importでOpenCV-2.4.6-android-sdk/sdk/javaを登録
その後に、
OpenCV-2.4.6-android-sdk/samples/tutorial-1-camerapreview
OpenCV-2.4.6-android-sdk/samples/tutorial-2-mixedprocessing
OpenCV-2.4.6-android-sdk/samples/tutorial-3-cameracontrol
を順番にimport
また、ndlのビルド用のバッチがwindowsになっているため、
プロジェクトのプロパティを開きC++buildの
ndk-build.cmdをndk-buildに直す
以上でサンプルアプリができている
eclipseはAndoridのページから自分のOSに合うものをダウンロード
ダンロード後、展開してeclipseのフォルダーをhome直下に移動
terminalを起動して、eclipseのフォルダーに移動し、eclipseを起動する
2.4.5のプロジェクトがあるとややこしくなるので、すべて削除
最初に、importでOpenCV-2.4.6-android-sdk/sdk/javaを登録
その後に、
OpenCV-2.4.6-android-sdk/samples/tutorial-1-camerapreview
OpenCV-2.4.6-android-sdk/samples/tutorial-2-mixedprocessing
OpenCV-2.4.6-android-sdk/samples/tutorial-3-cameracontrol
を順番にimport
また、ndlのビルド用のバッチがwindowsになっているため、
プロジェクトのプロパティを開きC++buildの
ndk-build.cmdをndk-buildに直す
以上でサンプルアプリができている
OpenCV for Android SDK 2.4.6
OpenCV2.4.6のリリースにあわせて、Android版のSDKも2.4.6がリリースされた
ここからダウンロードできる
zipのファイルサイズは、2.4.5の時の 97.6M から 97.2Mに減っている。
また展開後はサイズは、218Mとなりこちらは増えている
sampleのフォルダーのチュートリアルは、
tutorial-1-camerapreview
tutorial-2-mixedprocessing
tutorial-3-cameracontrol
と2.4.5の変わっていない
これからいろいろ見てみる
ここからダウンロードできる
zipのファイルサイズは、2.4.5の時の 97.6M から 97.2Mに減っている。
また展開後はサイズは、218Mとなりこちらは増えている
sampleのフォルダーのチュートリアルは、
tutorial-1-camerapreview
tutorial-2-mixedprocessing
tutorial-3-cameracontrol
と2.4.5の変わっていない
これからいろいろ見てみる
OpenCV 2.4.6のWindows版がリリースされた
Windows版だけリリースが遅れているがここからダウンロードできるようになっている
ダウンロード数が4なので、5番目である
(と思っていたら、リアルタイムの更新されるのではなく、日単位であることがわかったので少しがっかり)
うれしので、画面のスナップを
圧縮ファイルサイズは
2.4.5 278,901,549 バイト から
2.4.6 305,568,500 バイト
と1割増加している
ダウンロードには20分以上かかったが、環境依存である
ダウンロード数が4なので、5番目である
(と思っていたら、リアルタイムの更新されるのではなく、日単位であることがわかったので少しがっかり)
うれしので、画面のスナップを
圧縮ファイルサイズは
2.4.5 278,901,549 バイト から
2.4.6 305,568,500 バイト
と1割増加している
ダウンロードには20分以上かかったが、環境依存である
2013年7月2日火曜日
画像認識のセミナーを調べてみた 6
前回のものと重複もあるが、今後3ヶ月以内に開催される画像認識に関連するセミナーを調べてみた。
以下はすべて有料である。
デジタル画像の基礎、カラー画像の微分幾何モデル、偏微分方程式(PDE)に基づく画像処理技術と応用への留意点
2013年7月4日(木) 10:30-17:30
http://www.j-techno.co.jp/infos/view/6632/
歩容解析とその応用
2013年7月5日(金) 10:30-16:30
http://www.catnet.ne.jp/triceps/sem/s130705k.html
~TRECVID2012にみる~映像検索技術の最新動向
2013年7月5日(金)13:30-16:30
http://www.catnet.ne.jp/triceps/sem/s130419a.html
人物画像センシング技術の基礎と応用
2013年7月10日(水)10:00-17:00
http://www.catnet.ne.jp/triceps/sem/s130509a.html
進化的・知的画像処理 / 認識技術
2013年7月11日(木) 10時30分 ~ 16時30分
http://www.catnet.ne.jp/triceps/sem/s130415k.html
多様体学習(Manifold Learning)を用いた画像処理・画像認識
2013年7月12日(金)10:30-16:30
http://www.catnet.ne.jp/triceps/sem/s130527a.html
入門 サポートベクターマシン(SVM)
2013年7月17日(水)10:30-16:30
http://www.catnet.ne.jp/triceps/sem/s130717a.html
ステレオ画像・動画像の処理 ~3次元形状復元を中心に~
2013年7月19日(金)13:00-17:00
http://www.catnet.ne.jp/triceps/sem/s130719a.html
パターン識別・機械学習の基礎と画像処理への応用
2013年7月22日(月)10:30-17:30
http://www.j-techno.co.jp/infos/view/6714/
パターン認識・検索技術の基礎と応用
2013年7月23日(火) 10時00分 ~ 17時00分
http://www.catnet.ne.jp/triceps/sem/s130723a1.html
画像処理の基礎と産業応用への実践的活用講座
2013年8月23日(金)10:30-17:30
http://www.j-techno.co.jp/infos/view/6728/
超解像技術による画像・映像の高精細・高解像度化の基礎と応用
2013年9月6日(金)10:30-17:30
http://www.j-techno.co.jp/infos/view/6744/
画像処理の基礎と冗長変換・スパース表現
2013年9月12日(木) 10:30-17:30
http://www.j-techno.co.jp/infos/view/6607/
テンプレートマッチングの基礎と産業応用および最新技術
2013年9月17日(火) 10:30-17:30
http://www.j-techno.co.jp/infos/view/6560/
パターン認識の基礎とSVM(サポートベクトルマシン)の活用法
2013年9月30日(月)10:30-17:30
http://www.j-techno.co.jp/infos/view/6617/
以下はすべて有料である。
デジタル画像の基礎、カラー画像の微分幾何モデル、偏微分方程式(PDE)に基づく画像処理技術と応用への留意点
2013年7月4日(木) 10:30-17:30
http://www.j-techno.co.jp/infos/view/6632/
歩容解析とその応用
2013年7月5日(金) 10:30-16:30
http://www.catnet.ne.jp/triceps/sem/s130705k.html
~TRECVID2012にみる~映像検索技術の最新動向
2013年7月5日(金)13:30-16:30
http://www.catnet.ne.jp/triceps/sem/s130419a.html
人物画像センシング技術の基礎と応用
2013年7月10日(水)10:00-17:00
http://www.catnet.ne.jp/triceps/sem/s130509a.html
進化的・知的画像処理 / 認識技術
2013年7月11日(木) 10時30分 ~ 16時30分
http://www.catnet.ne.jp/triceps/sem/s130415k.html
多様体学習(Manifold Learning)を用いた画像処理・画像認識
2013年7月12日(金)10:30-16:30
http://www.catnet.ne.jp/triceps/sem/s130527a.html
入門 サポートベクターマシン(SVM)
2013年7月17日(水)10:30-16:30
http://www.catnet.ne.jp/triceps/sem/s130717a.html
ステレオ画像・動画像の処理 ~3次元形状復元を中心に~
2013年7月19日(金)13:00-17:00
http://www.catnet.ne.jp/triceps/sem/s130719a.html
パターン識別・機械学習の基礎と画像処理への応用
2013年7月22日(月)10:30-17:30
http://www.j-techno.co.jp/infos/view/6714/
パターン認識・検索技術の基礎と応用
2013年7月23日(火) 10時00分 ~ 17時00分
http://www.catnet.ne.jp/triceps/sem/s130723a1.html
画像処理の基礎と産業応用への実践的活用講座
2013年8月23日(金)10:30-17:30
http://www.j-techno.co.jp/infos/view/6728/
超解像技術による画像・映像の高精細・高解像度化の基礎と応用
2013年9月6日(金)10:30-17:30
http://www.j-techno.co.jp/infos/view/6744/
画像処理の基礎と冗長変換・スパース表現
2013年9月12日(木) 10:30-17:30
http://www.j-techno.co.jp/infos/view/6607/
テンプレートマッチングの基礎と産業応用および最新技術
2013年9月17日(火) 10:30-17:30
http://www.j-techno.co.jp/infos/view/6560/
パターン認識の基礎とSVM(サポートベクトルマシン)の活用法
2013年9月30日(月)10:30-17:30
http://www.j-techno.co.jp/infos/view/6617/
OpenCV 2.4.6がリリースされた
当初の予定から1月遅れて2.4.6がリリースされた。ただし、Windows版は、まだであるため限定的なリリースである
変更点を見てみると
WindowsRTのビデオIOの対応、カメラアプリのサンプル追加、TBBによる並列化など
CUDA ARMの対応
Qt5のサポート
OpenCLの対応機能追加
TBBのみから他の並列化技術への変更
iOS バグ修正
UIImage and cv::Matの変換機能の追加を喜ぶ人がおおいのでは
Android
SDK r22サポート
いくつかのバグ修正
カメラ周りの修正(しかしデバイス依存の問題が残っている)
上記変更点に興味がなければ急いで差し替える必要はないかと思われる。
変更点を見てみると
WindowsRTのビデオIOの対応、カメラアプリのサンプル追加、TBBによる並列化など
CUDA ARMの対応
Qt5のサポート
OpenCLの対応機能追加
TBBのみから他の並列化技術への変更
iOS バグ修正
UIImage and cv::Matの変換機能の追加を喜ぶ人がおおいのでは
Android
SDK r22サポート
いくつかのバグ修正
カメラ周りの修正(しかしデバイス依存の問題が残っている)
上記変更点に興味がなければ急いで差し替える必要はないかと思われる。
2013年7月1日月曜日
OpenCVを1ボードコンピュータで試してみた 2
1ボードコンピュータと呼ぶべきかはわからないが、BeagleBoardに始まり、多種多様なARM搭載の評価ボードが手ごろな値段で販売されている
2年前のボードであるが、Pandaboard ESにubunut12.04の環境を構築し、OpenCVをインストールしてみた
環境構築に3時間かかったため、OpenCVは出来合いの2.3.1のパッケージを
sudo apt-get install libopencv-dev
でインストールした。
V4Lはデフォルトで準備されているので、特に何もしていない
インストール後、raspberry pi用に作成したカメラ入力のfpsのプログラムをmakeし試してみた
VGA入力 VGA表示 約17fps 遅延 小
QVGA入力 QVGA表示 31fps 遅延なし
やはりCPUの能力の差は出ているが、期待したほどではなかった。
デュアルコアだが、システムモニターで確認すると、CPUの使用率双方90%を超えている。
また、システムモニターさえも負荷となり、2fpsくらい低下する。
2年前のボードであるが、Pandaboard ESにubunut12.04の環境を構築し、OpenCVをインストールしてみた
環境構築に3時間かかったため、OpenCVは出来合いの2.3.1のパッケージを
sudo apt-get install libopencv-dev
でインストールした。
V4Lはデフォルトで準備されているので、特に何もしていない
インストール後、raspberry pi用に作成したカメラ入力のfpsのプログラムをmakeし試してみた
VGA入力 VGA表示 約17fps 遅延 小
QVGA入力 QVGA表示 31fps 遅延なし
やはりCPUの能力の差は出ているが、期待したほどではなかった。
デュアルコアだが、システムモニターで確認すると、CPUの使用率双方90%を超えている。
また、システムモニターさえも負荷となり、2fpsくらい低下する。
登録:
投稿 (Atom)