|
LabVIEW とVision 開発モジュール(Vision Development Module)で画像処理を行うプログラムを作成しようとしています。
オリジナルの画像を残したまま、画像の一部分を抜き出して処理をしたいのですが、どのようにしたらいいですか?
さらに、抜き出す部分を自由に移動したり、サイズを変更したりもしたいと思っています。
また、オリジナルの画像上のどの部分を抜き出したか分かるように、オリジナルの画像上に枠を表示させたいと思います。どのようにしたらいいですか?
オリジナルの画像を残したまま画像の一部分を抜き出して処理する場合、IMAQ Create を使って抜き出した画像用のメモリを確保する必要があります。Image Name端子に入力するイメージ名が重ならないように注意してください。
画像を抜き出すには、IMAQ Extract を使用します。画像上のどの範囲を抜き出すかは、左上右下の4つの座標を要素とした数値配列で指定します。それぞれの値を配列連結追加で配列にして、Optional Rectangle 端子に入力してください。
オリジナルの画像上に抜き出した部分の枠線を表示させるには、IMAQ Overlay Rectangle を使用します。IMAQ Overlay Rectangle での枠の指定は、IMAQ Extract と異なり、左上右下の4つの座標を要素としたクラスタで指定します。それぞれの値をバンドル関数でクラスタ化するか、IMAQ Extract などのほかの関数用に配列があるならば、配列からクラスタに変換などの関数でクラスを作成し、Rectangle 端子に接続してください。
以下のサンプルは、これらの内容を含んだVIになりますので、参考にしてください。
サンプルVIは、LabVIEW8.2とVision開発モジュール8.2で作成しました。
|