キーワードから探す

※スペースで区切って複数検索が可能です。

カテゴリで絞り込む

よく検索されるキーワード

ID:475
作成日: 2024/10/15

【AcaPy】カラーカメラ画像の取込

カテゴリ AcaPy


工業用のカラーカメラで画像を撮影しても、ほとんどの場合、カメラからはBayerと呼ばれるグレースケールの画像としてデータが出力されてます。

AcaPy カラーカメラ Bayer AcaPy カラーカメラ Bayer
カラーデータ Bayerデータ


そのため、カラー画像を取得するには、このBayerデータからカラーデータへ変換する必要があります。
変換には、OpenCVのcvtColor関数を用います。

以下は、snap(カメラから1枚だけ画像を撮影)を行い、取得したBayerデータからカラーデータへ変換するサンプルです。

import acapy
import cv2

# AcaPyクラスのインスタンス capture = acapy.AcaPy() # capture = acapy.AcaPy("GigE") # GigEカメラのとき
# 画像入力ボードの設定 # GigEカメラのとき、load_inifile()は不要です。 capture.load_inifile("./AreaSensor_mono.ini")
# 画像取込 ret, frame = capture.snap()

# Bayer -> カラー変換
frame_color = cv2.cvtColor(frame, cv2.COLOR_BayerBGGR2BGR)
# 画像表示(Bayerデータ) cv2.imshow("Image", frame)
# 画像表示(カラーデータ)
cv2.imshow("ImageColor", frame_color) cv2.waitKey()

# 解放
capture.release()

cvtColor関数の第二引数には、

cv2.COLOR_BayerBGGR2BGR, cv2.COLOR_BayerGBRG2BGR,
cv2.COLOR_BayerRGGB2BGR, cv2.COLOR_BayerGRBG2BGR

のいづれかの値を指定する必要があります。
この値は、使用するカメラやカメラの撮影位置(ROI、センサのどの部分を使って撮影するか?)によって異なります。

この内容は参考になりましたか?
ご回答いただきまして、ありがとうございます。
今後の参考にさせていただきます。
ご意見・ご感想、ありがとうございます。

関連するご質問

Now Loading...

Now Loading...