情報詳細Q:「通常、一つのカメラで固定角度からキャリブレーションを行う場合は、キャリブレーションプレートの撮影は1枚でいいでしょうか?」【詳細】HALCONリファレンスには下記の様にキャリブレーションプレートを複数枚撮るようにと書いていますが、3.でget_calib_data_observ_pose 引数に[CalibObjPoseIdx:観測されるキャリブレーションオブジェクト姿勢のインデックス]を指定しなければなりませんので、複数枚キャリブレーションプレートを撮影しても、結局1枚のプレートでしか補正に使用しないなら、複数枚撮影する必要がないのかと思うのですが。A:まずはじめにレンズの歪を取らなければPose情報は正確には取れません。レンズ歪を取るためには10枚~20枚程度の画像が必要でして、そのために複数枚の画像を撮影してキャリブレーションしています。精度を求めないのでよければ例えば1枚目のキャリブレーションプレートの画像のPoseの場合はfind_calib_objectを実行した後に下記のようなオペレータで取得できます。get_calib_data_observ_pose (CalibDataID, 0, 0, 0, PoseCalib)2枚目でしたら下記です。get_calib_data_observ_pose (CalibDataID, 0, 0, 1, PoseCalib)ただし、精度を求めるのであれば複数回find_calib_objectを実行した後にcalibrate_cameras (CalibDataID, Error)を実行し、その後に1枚目の例)get_calib_data (CalibDataID, 'calib_obj_pose',[0, 0], 'pose', Pose)を呼ぶことが正しい方法です。12枚目の例)*0番目のカメラの11番目(0番目が1枚目)の画像のPoseget_calib_data (CalibDataID, 'calib_obj_pose',[0, 11], 'pose', Pose)したがって、「通常、一つのカメラで固定角度からキャリブレーションを行う場合は、キャリブレーションプレートの撮影は1枚でいいでしょうか?」に対する回答は、精度を求めなくてよいのであれば1枚でもよいです。うまく変換できなかったり、エラーが発生する場合は原因が精度にあるケースもありますのできちんと正しい手順でキャリブレーションを行った後にPose情報を取得するべきになります。添付ファイルcalib_rule.zipタイトル1枚のキャリブレーションプレート画像から画像の正対補正が行えるか?URL 名000005819公開状況公開済み検証状況公開済み