OpenCV Intel INDEパッケージを使用してコンピュータービジョンアルゴリズムの操作を簡素化する

少し前まで、コンピュータービジョンアルゴリズムに精通するための最良のリソースは、コンピュータービジョンアルゴリズムのOpenCVオープンソースライブラリでした 。 これらのアルゴリズムは、 CMakeと他のクロスプラットフォームツールを同時にマスターし、独立して作成および構成する必要がありました。 最終結果は、適切なプラットフォームに適合しない可能性があります。 この場合、アルゴリズムを慎重に研究し、独自のシステム用に構成する必要がありました。これは、 OpenCLをマスターし、プラットフォームの最適化を意味しました 。 それは悪いことではありません...







これで、 Intel INDEソフトウェアパッケージを使用してコンピュータービジョンアルゴリズムの使用を開始できます。最新のアップデートには、Intelグラフィックコアを搭載したIntelプロセッサーを搭載したWindowsおよびAndroidデバイスに適した既製バージョンのOpenCVが含まれます。



以前、OpenCVライブラリに出くわしました。 それはバージョン2.4.8であり、プロセスが本当に面白くなる前に、私はそれを構成するために多くの努力をしなければなりませんでした。 Intel INDEの出現により、この作業がより便利になるかどうかを調べることにしました。 嬉しい驚きが私を待っていました。



まず、 OpenCV Intel INDEをダウンロードしてインストールする必要があります(このために、追加のベータシリアル番号も取得する必要があります)。 その中には、OpenCVアプリケーションを作成できるOpenCVウィザードと、作業の中間結果を表示できるMicrosoft Image Watchアドオンの2つの非常に便利な機能があります。



ウィザードから始めましょう。 Microsoft Visual Studioを起動します。 OpenCVを選択してから、OpenCV Project for Windowsを選択します。 OKをクリックします。







プロジェクトをビルドして実行します。 カメラを使用している場合、アプリケーションの起動時にCanny edge detectorがアクティブになります。 カメラがない場合、画面に2つのウィンドウが表示されます。



入力画像





出力画像





見た目は良いが、デフォルトの画像を表示することは特に面白くない。 私は、Cannyのエッジ検出器を、コンピューティングアーキテクトであるStephen Jankinsの犬、ヘンリーの写真に適用することにしました。







典型的なワークフローは次のとおりです。画像はグレースケールに変換され、Cannyエッジ検出器が適用されます。 各処理段階の結果は、OpenCV Intel INDEパッケージとともにインストールされたImage Watchプラグインを使用して表示できます。 これを行うには、モジュールを接続し、コードにいくつかの変更を加える必要があります。

Henryの写真を.jpgではなく.ppm形式でアップロードする必要があります。 OpenCVはさまざまな画像形式を透過的にダウンロードすることに注意してください。 さらに、Image Watchプラグインを機能させるには、コードを変更し、画像をUMat(標準OpenCV 3.0形式)からImage Watchプラグインで期待されるcv :: Mat形式に変換する必要があります。



#ifdef _DEBUG { //    ImageWatch    getMat: cv::Mat mTest = imgInp.getMat(cv::ACCESS_READ); //   break    mTest  ImageWatch: int stub = 0; //mTest.release()  ,      . } #endif
      
      







次に、3つのポイントで同様のコードを追加します。1)画像を読み込んだ後、2)グレースケールに変換した後、3)Cannyエッジ検出器を使用した後。 いずれの場合も、スタブ変数の横にブレークポイントを追加します。 次に、Microsoft Visual Studioのメニュー[表示]> [その他のウィンドウ]> [画像監視]を使用して、画像監視モジュールを接続する必要があります。







各ブレークポイントでデバッグモードでコードを操作する場合、Cannyエッジ検出器の影響下でヘンリーイメージに表示される変更を表示できます。















これはすでにはるかに興味深いです! 自分でOpenCVをビルドする必要がないだけでなく、Intelグラフィックプロセッサプラットフォーム用のOpenCVアプリケーションを開発し、追加設定なしでデバッグできます。 詳細については、以下のリンクを参照してください。

以下に、OpenCV Intel INDEに関する包括的な情報を英語で掲載しています。




All Articles