Comments
Description
Transcript
gTOP で取り込んだ画像を OpenCV で処理する. 準備するもの
gTOP で取り込んだ画像を OpenCV で処理する. 準備するもの: パソコン(Windows),gTOP 一式(iCAP), OpenCV, VisualBasicASICExpressEdition,Microsoft Platform SDK VisualBasicExpressEdition ダウンロードサイト http://www.microsoft.com/japan/msdn/vstudio/express/past/2005/ Intel OpenCV サイト http://www.intel.com/technology/computing/opencv/ ダウンロードサイト http://sourceforge.net/projects/opencvlibrary/ 公式情報サイト http://opencv.jp/ 各ソフトウエアはすでにコンピュータにセットアップされていることを前提に話を進めま す.次に以下の 5 つの手順で動かします. ① iCAP を動作させ,gTOP の動作を確認する.画像をサンプルとして保存する. ② プロジェクトを作成 ③ インクルードファイルのディレクトリを設定 ④ リンクライブラリのディレクトリとライブラリを設定 ⑤ サンプルプログラムを動かす. 以下の説明は,C ドライブに Windows がインストールされていて,C:¥Program Files に ソフトウエアがインストールされている場合の例を示します. ①iCAP を動作させ動作を確認する. gTOP に付属しているソフトウエア,iCAP をマニュアルの通りに動かし,カメラからサ ンプル画像を取り込みボードとカメラ全体が正確に動作していることを確認.(図 1) カメラから取得した画像を bmp 形式で保存します.例では default_img.bmp で保存してい ます. 図1 ※注意:iCAP のコンフィグレーションファイル curren.txt の#6 に SH 用の mot ファイル名が設定されています.また,#7 にの PLD のフ ァイル名が設定されています.PLD を使わない場合は#7 はありません.これらの設定は各 ソフトウエアからの相対パスで呼び出されます.そこで,今回のようにオリジナルプログ ラムからコントロールする場合は,C:¥からのフルパスで設定してください. オリジナル 修正後 #6 gtop4 ・・・ #6 c:¥iCAP¥sh¥gtop4 ・・・ #7 ..¥..¥cfg¥ ・・・ #7 c:¥iCAP¥cfg¥ ・・・ 図2 ②プロジェクトの作成 Visual Basic では,プロジェクトを作成してからプログラムを記述します.そこで,まずプ ロジェクトを作成します.Microsoft Visual Basic 2005 Express Edition を起動します. プルダウンメニューの[ファイル]→[新規作成]→[プロジェクト]を開きます.(図 3) プロジェクトの種類 ------ Windows アプリケーション テンプレート ------------ Windows アプリケーション プロジェクト名 ---------- (入力する)例:test3_vb として、OK ボタンをクリックします.(図 4) 図3 図4 ③モジュールファイルについて OpenCV の画像処理関数を使うためのモジュール(OpenCVUtility.vb ファイル)とメソッド 定義ファイル(OpenCVDefine.vb ファイル)のを指定します.さらに iCAP の画像取得関数 を使うためのモジュール(Module1.vb)を指定します.ファイルの内容はテキストエディタ などで見ることが出来ます.プロジェクトを作成しておきます.例では②で作成した test3_vb としています. 次にプルダウンメニューの[プロジェクト]→[既存項目の追加]を開きます.(図 5) Module1.vb を選択し,[追加]ボタンを押します.(図 6) 図5 図6 ④モジュール宣言について OpenCV の画像処理関数を使うために OpenCVUtility.vb ファイルと Form1.vb ファイルに は,モジュール宣言を記述しなければなりません.プロジェクト名 test3_vb の場合は,下 記のように編集します.同じ内容を両ファイルに記述しなければなりませんので,注意し て編集してください.(図 7) Option Explicit On Option Strict On Imports System.Runtime.InteropServices Imports test3_vb Imports test3_vb.cxTypes Imports test3_vb.cvTypes Imports test3_vb.Cv Imports test3_vb.CxCore Imports test3_vb.HighGUI 図7 ⑤Form1.vb を以下のように編集します. C:¥Program Files¥OpenCV¥samples¥c¥edge.c とほとんど同じ内容で VisualBasic メソ ッドとして呼び出すようなにプログラムとなっています.(図 8-1~図 8-3)名前が cv で始ま るメソッドは OpenCV の関数です.これらの説明は公式サイトのマニュアルを見てくださ い. プログラムのビルド(コンパイルとリンク) 1)プルダウンメニューから,[ビルド]→[test3_vb のビルド]を選択します. 2)画面の下部の出力ウインドウにエラーや警告が表示されます. 3)エラーが出た場合は,修正して再び[ビルド]→[test3_vb のビルド]を選択します. プログラムの実行 1)メニューから[デバッグ]→[デバッグなしで開始]を選択します. 2)プログラムが実行され,正常終了のメッセージがコマンドプロンプト画面で出力され て終わります.終わった後は,カメラで取得した画像が画面に連続表示されます. 図 8-1 図 8-2 図9 最後にディレクトリ構造を示しておきます.Form1.vb ファイルのみを編集します. test test3_vb default_img.bmp 初期画像ファイル など 図 10