カテゴリ |
|
AcaPyクラスにて画像入力ボードのパラメータを設定するには、基本的に
AcapLib2で使用している設定ファイル(*.ini)を
load_inifile()メソッドによりiniファイル読込を行い、設定を行ってください。
iniファイルの読込後、個別に値の取得/設定を行う場合は、AcaPyクラスの各種プロパティにより、値の取得/設定を行います。
プロパティの説明については
PyPI のサイトを参照ください。
プロパティの値の設定を行った場合、最後に
reflect_param() メソッドを実行し、画像入力ボードへ値の変更を反映させる必要があります。
(プロパティ値の設定は、クラス内の値を設定するのみとなります。)
reflect_param() メソッドの実行を忘れると、画像取込開始時(snap()メソッド、grab_start()メソッドの実行時)にクラス内で reflect_param() メソッドを実行するため、画像の取込開始時間が遅れます。
以下に、画像の取込サイズ(width, heightプロパティ)を取得/設定する例を示します。
◆ サンプルプログラム
import sys
import acapy # AcaPyクラス
# AcaPyクラスのインスタンス
capture = acapy.AcaPy()
if capture.is_opened is False:
# 画像入力ボードが見つからないときは終了
del capture
print("Board or Camera not recognized.")
sys.exit(0)
# iniファイル(ボード設定ファイル)の読込、AcapLib2のiniファイルと共通です。
# iniファイルは実際に使用するカメラ用のファイルを指定してください。
capture.load_inifile("./AreaSensor_mono.ini")
# ボードの設定例(AcaPyクラスのプロパティで値を設定)
capture.width = 640
capture.height = 480
capture.reflect_param() # 値を設定したときは、reflect_param()メソッドを実行する
# ボードの設定値の取得例(AcaPyクラスのプロパティで値を取得)
capture_width = capture.width # 画像の幅
capture_height = capture.height # 画像の高さ
capture_camera_bit = capture.camera_bit # 画像のビット数
# 取込む画像情報を表示
print(f"Capture Image Info: {capture_width} x {capture_height} x {capture_camera_bit}bit")
|
※設定する値によっては、別途、カメラの設定の変更が必要なパラメータもあります。
例えば、露光時間(exposureプロパティ)の設定は、画像入力ボードからカメラへ与える
制御信号(CC信号、トリガパケット)の設定を変更します。
このとき、カメラ側は、この制御信号を使用する/使用しないの設定が必要になります。
◆ 関連情報
Iniファイルとは何ですか?またそのIniファイルはどこにありますか?CameraLink/SDK-AcapLib2対応ボードで設定の保存を行いたい。Xサイズ、Yサイズに制限はありますか?PyPIサイト