カメラ接続・パラメータ調整・画像収集

ここでは、Windows OS で connect_to_camera_and_capture_images サンプルプログラムを使用してカメラ接続とパラメータ調整、画像収集の方法を説明します。

HALCON サンプルプログラムの使用ガイドをお読み、サンプルプログラムを入手してください。

サンプルプログラムの実行

以下の操作を実行します:

  1. HALCON でサンプルプログラムを開きます:HALCON を起動し、サンプルプログラムを HALCON のプログラムウィンドウにドラッグします。

  2. 変数検査:MechEyeCameras ウィンドウが表示されるまでプログラムを 1 ステップずつ実行します(ツールバーのstep overボタンをクリックしてください)。

  3. このウィンドウには全ての接続可能カメラが表示されます。カメラを選択してダブルクリックし、unique_name: あるいは user_name: の後につくカメラ名をコピーします。

    camera name
    user_name はユーザーにより指定されたカメラ名です。Mech-Eye Viewer で設定できます。
  4. 以下の行で MechEyeunique_name あるいは user_name に取り替えます。

    DeviceInfo := 'MechEye'
  5. ツールバーのrunをクリックするか、F5を押してサンプルプログラムを実行します。

  6. グラフィックスウインドウに取得した点群が表示されます。Continue をクリックして続けて実行します。

  7. 実行完了後にツールバーのresetをクリックしてサンプルプログラムの実行をリセットします。

    HALCON でプログラムの実行をリセットしなければ、Mech-Eye Viewer はカメラに接続できません。
  8. サンプルプログラムフォルダには取得した 2D 画像と点群ファイルが確認できます。デフォルトのファイル名は image2d.bmpPointCloud.ply です。

  • 画像取得の時間を短縮したい場合、MTU 値を大きくし、かつジャンボフレームに設定してください。

  • ネットワークの不具合によりデータが失われた場合に、以下のコマンドを使用して失われるパケットの最大許容数を増やすことができます。ParameterValues を損失パケットの新しい最大許容数に取り替えます。

    set_framegrabber_param (AcqHandle, '[Stream]GevStreamMaxPacketGaps', ParameterValues)

パラメータの調整

より高品質な画像を取得するために、関連するパラメータを調整します。

  • カメラがパラメータグループ設定機能に対応できます。パラメータグループを切り替えることで簡単にカメラに異なるパラメータ値を使用することができます。ただし、指定されたパラメータグループでなければパラメータを設定できません。

  • パラメータグループを追加/削除する場合、Mech-Eye Viewer で設定してください。

パラメータを調整するために以下のステップを実行してください。

  1. 以下の演算子を使用して接続可能なカメラリストを表示します。

    get_framegrabber_param (AcqHandle, 'UserSetSelector_values', ParameterGroupNames)
  2. 制御変数ParameterGroupNames で全てのパラメータ値を確認します。

  3. 以下の演算子を使用して変更するパラメータグループを選択します。UserSetSelectorUserSetLoad はカメラパラメータで、それぞれパラメータグループの選択とロードに使用されます。ParameterGroupName を実際のパラメータグループ名に取り換えてください。

    HALCON に表示されたパラメータグループ名は Mech-Eye Viewer のパラメータグループの順序に対応しています。例えば、HALCON の UserSet0 は Mech-Eye Viewer の一番目のパラメータグループです。 HALCON でパラメータグループを選択を参照してください。
    set_framegrabber_param (AcqHandle, 'UserSetSelector','ParameterGroupName')
    set_framegrabber_param (AcqHandle, 'UserSetLoad','ParameterGroupName')
  4. 以下の演算子を使用して指定されたパラメータの値を取得します。ParameterName を実際のパラメータグループ名に取り換えてください。ParameterValues は取得したパラメータ値を保存する変数で、必要に応じて調整することができます。変数を引用符で囲む必要はありません。

    get_framegrabber_param (AcqHandle, 'ParameterName', ParameterValues)
  5. 制御変数ParameterValues でパラメータ値を確認します。

  6. 以下の演算子を使用してパラメータ設定を変更します。ParameterName を実際のカメラパラメータ名に、NewParameterValue を新しいパラメータ値に取り換えます。

    set_framegrabber_param (AcqHandle, 'ParameterName', 'NewParameterValue')
  7. 以下の演算子を使用してパラメータ設定の変更をパラメータグループに保存します。UserSetSave はカメラパラメータで、パラメータの設定をパラメータグループに保存するために使用されます。ParameterGroupName を実際のパラメータグループ名に取り換えてください。

    set_framegrabber_param (AcqHandle, 'UserSetSave', 'ParameterGroupName')

参考情報

  • GenICam 対応のソフトウェアで使用可能なカメラパラメータは、Mech-Eye Viewer のパラメータとはほとんど一致しています。詳しい対応関係は GenICam 対応のソフトウェアで使用できるカメラパラメータをお読みください。

  • 自動露出 ROI深度範囲ROI などのパラメータを調整する時、調整の効果を確認するために、直観的なソフトウェアを必要とします。GenICam 対応のソフトウェアでは画像の変化を即時に確認することはできませんが、Mech-Eye Viewerを使用してこれらのパラメータを直感的に設定できます。詳細については、Mech-Eye Viewer でカメラのパラメータを調整するをお読みください。

    Mech-Eye Viewer でカメラを接続する前に、カメラと HALCON との接続を切断してください。接続できない場合に、HALCON を終了して再度接続してください。

Mech-Mindは、お客様のプライバシーを重視しています

このサイトでは最高の体験を提供するために Cookie を使用しています。サイトの閲覧を続ける場合、Cookie の使用に同意したことになります。「拒否する」を選択すると、このサイトを訪れた際に追跡や記憶が行われないように単独の Cookie が使用されます。