Image Watchの使い方

OpenCV 2.4.5リリースと同じタイミングでMS製のMatの中身をプレビューできるプラグインImage Watchが発表されました.MS製ということで簡単に使ってみました.

以降の説明はVisual Studio 2012を使って説明します(プラグインも2012版のみの配布です).
※注意:Visual Studio Professional以上のエディションでしかプラグインは使えないようです.

■ダウンロード
配布ページからImageWatch.vsixをダウンロードします.

■インストール
ダウンロードしたImageWatch.vsixをダブルクリックすると以下のようなインストール画面が表示されます.ここで「インストール」ボタンを押すとインストール完了です.

■サンプルコード
なんてこともない2値化のサンプルです.このサンプルを用いて使い方の説明を行います.

■実際に使ってみる
例として以下のブレークポイントで止めている場合の例を示します.

デバッグ状態を見るためにはVS2012のメニューから【表示】―【その他のウィンドウ】―【Image Watch】を選択しておきましょう.そしてデバッグ実行するとローカル変数のMatのプレビューを見ることができます.

ウィンドウ右側にプレビュー画像が表示されていますが,マウスのホイール操作で拡大縮小も可能です.また,以前紹介したNativeViewerに比べてローカル変数が一覧でプレビューできたり,アルファチャンネルにサポートしているのはメリットだと思います.

■アンインストール
「拡張機能と更新プログラム」画面から「Image Watch」を選択して,「アンインストール」ボタンを押すことでプラグインをアンインストールすることができます.

■おわりに
より詳細な情報を知りたい場合はImage Watch公式ヘルプを読むと良いでしょう.また,OpenCVのサイトにもチュートリアルページがあるため参考になります.ツールをうまく活用してより良いデバッグライフを!

NativeViewerの使い方

この記事はComputer Vision Advent Calendar 2012の12/8の記事兼@sakanazensenさんへの誕生日プレゼントとして書いたものです.

つい最近,OpenCVプログラムのデバッグ中にMatの中身をプレビューできるプラグイン「NativeViewer」のv1.0がリリースされました.このプラグインの使い方について解説記事の要望があったので(30分くらいでてきとーに)書いてみました.基本的に公式のQuickStartGuideとほぼ同じ内容です.

以降の説明はVisual Studio 2012を使って説明します(Visual Studio 2010版のプラグインも用意されています).
※注意:Visual Studio Professional以上のエディションでしかプラグインは使えないようです.

■ダウンロード
配布ページからNativeViewer_VS2012_v1.0.0.vsixをダウンロードします.

■インストール
ダウンロードしたNativeViewer_VS2012_v1.0.0.vsixをダブルクリックすると以下のようなインストール画面が表示されます.ここで「インストール」ボタンを押すとインストール完了です.

■サンプルコード
なんてこともない2値化のサンプルです.このサンプルを用いて使い方の説明を行います.

■実際に使ってみる
この例では2値化結果をウィンドウに描画していますが,デバッグの時に2値化の前のグレースケールが正しい結果なのか知りたいような場合もあって,従来はグレースケール用にnamedWindowとimshowを追加し,リビルド・再実行する必要がありました.地味に面倒くさいです。。。この例ではリビルドしてもそんなに時間はかかりませんがそれなりの規模のプログラムだとビルド時間がもったいないです.

NativeViewerを使うとデバッグ用に新たにnamedWindowとimshowを追加してリビルドするといった面倒な作業から解放されます.やるのはデバッグ中にCtrlキーを押しながらプレビューしたいMatクラスの変数にマウスカーソルを合わせるだけです.

ここではデバッグ中にCtrlキーを押しながら「gray」という変数にマウスカーソルを合わせてみます.すると,以下のようなプレビュー画面が表示され,grayの描画内容を視覚的に確認することができます.デバッグ時にとても便利なのでVisual Studio使いにはオススメのプラグインです!

■オプション
また,Visual Studioのオプション画面からNativeViewerに関するレイアウト等の設定を行うことができます.

■アンインストール
「拡張機能と更新プログラム」画面から「NativeViewer」を選択して,「アンインストール」ボタンを押すことでプラグインをアンインストールすることができます.

■余談
12/22あたりにComputer Vision Advent Calendar 2012向けの別の記事公開予定です(他人事).過度な期待はせずにお待ちください。。。