【HALCON】open_framegrabber 関数について - フレームグラバーのオープン

【HALCON】open_framegrabber 関数について - フレームグラバーのオープン

2024-09-06

2024-09-06

HALCONopen_framegrabber関数は、フレームグラバー(カメラやビデオキャプチャデバイス)をオープンして、画像を取得するための関数です。この関数を使うことで、カメラからの画像データをリアルタイムで取得し、さまざまな画像処理や解析に利用することができます。画像処理システムにおいて、カメラの設定や動作の制御を行う上で重要な役割を果たします。

open_framegrabber 関数の概要

open_framegrabber関数は、指定されたフレームグラバー(例えば、カメラデバイス)をオープンし、画像取得の準備を行います。この関数を使って、カメラの解像度、カラーフォーマット、画像のキャプチャモードなどを設定し、フレームグラバーを制御します。オープンされたフレームグラバーは、リアルタイムの画像取得や動画ストリーム処理に利用されます。

基本構文

open_framegrabber(Name, HorizontalResolution, VerticalResolution, StartRow, StartColumn, Field, BitsPerChannel, ColorSpace, CameraType, Device, Port, LineIn, GrabberHandle)
  • Name
    使用するフレームグラバーの名前(例: 'GigEVision', 'DirectShow')。

  • HorizontalResolution, VerticalResolution
    カメラの水平および垂直方向の解像度。

  • StartRow, StartColumn
    画像取得を開始する行および列の座標。

  • Field
    画像のフィールドタイプ(例: 'progressive')。

  • BitsPerChannel
    1チャンネルあたりのビット数。

  • ColorSpace
    画像の色空間(例: 'gray', 'rgb')。

  • CameraType
    カメラの種類(例: 'area_scan', 'line_scan')。

  • Device, Port, LineIn
    デバイス、接続ポート、入力ラインに関する設定。

  • GrabberHandle
    オープンされたフレームグラバーのハンドル。カメラ制御や画像取得に使用されます。

使用方法

以下に、open_framegrabber関数を使ってカメラデバイスをオープンし、画像を取得する基本的な例を示します。

* フレームグラバーをオープン
Name := 'DirectShow'
HorizontalResolution := 640
VerticalResolution := 480
StartRow := 0
StartColumn := 0
Field := 'progressive'
BitsPerChannel := 8
ColorSpace := 'rgb'
CameraType := 'area_scan'
Device := 0
Port := 0
LineIn := 0
open_framegrabber(Name, HorizontalResolution, VerticalResolution, StartRow, StartColumn, Field, BitsPerChannel, ColorSpace, CameraType, Device, Port, LineIn, GrabberHandle)

* 画像の取得
grab_image(Image, GrabberHandle)

* 取得した画像を表示
disp_image(Image, WindowHandle)

* フレームグラバーをクローズ
close_framegrabber(GrabberHandle)

この例では、DirectShowタイプのフレームグラバーをオープンし、カメラから640x480の解像度でRGB画像を取得しています。取得した画像は、ウィンドウに表示されます。処理が終了したら、close_framegrabber関数を使ってフレームグラバーをクローズします。

主なパラメータ

  • Name: 使用するフレームグラバーのドライバ名を指定します。使用するカメラの種類や接続方法に応じて選択します(例: 'GigEVision', 'USB3Vision')。
  • Resolution: 画像の解像度を設定します。指定しない場合、カメラのデフォルト解像度が使用されます。
  • ColorSpace: 取得する画像の色空間を選択します。'rgb''gray'など、処理に合わせて選択します。
  • Field: フレームのフィールドタイプ(例: 'progressive', 'interlaced')。

応用例

open_framegrabber関数は、以下のような場面で特に役立ちます。

  • 製造ラインでの品質検査
    リアルタイムで画像を取得し、製造物の欠陥検出や寸法測定を自動的に行う際に使用されます。

  • 監視システム
    カメラを使って監視映像を取得し、物体認識や動体検出の解析に活用できます。

  • 医療画像処理
    カメラデバイスから医療用のリアルタイム画像を取得し、手術支援や診断システムに応用できます。

まとめ

HALCONopen_framegrabber関数は、フレームグラバーをオープンしてカメラから画像を取得し、リアルタイム画像処理や監視システムでの使用に最適なツールです。カメラの設定や動作を制御し、効率的な画像取得と処理が可能です。

Recommend