適用 Area Camera, 使用 CCTV 鏡頭
CalPath := 'C:/Program Files/MVTec/HALCON-12.0/calib/自建/calplate_big.cpd' '校正版檔案路徑
StartCamPar := [0.016,0,0.0000074,0.0000074,320,240,640,480] '相機初始參數
'開始建立 相機校正create_calib_data ('calibration_object', 1, 1, CalibDataID)
set_calib_data_cam_param (CalibDataID, 0, 'area_scan_division', StartCamPar)
set_calib_data_calib_object (CalibDataID, 0,CalplateFile)
* Image Acquisition 02: Code generated by Image Acquisition 02
list_files ('D:/Study/Image/CCD1', ['files','follow_links'], ImageFiles)
tuple_regexp_select (ImageFiles, ['\\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima|hobj)$','ignore_case'], ImageFiles)
for I := 0 to |ImageFiles| - 1 by 1
read_image (Image, ImageFiles[I])
dev_display (Image)
find_calib_object (Image, CalibDataID, 0, 0, I, [], [])
get_calib_data_observ_contours (Caltab, CalibDataID, 'caltab', 0, 0, I)
get_calib_data_observ_points(CalibDataID, 0, 0, I, Row, Column, Index, Pose1)
*disp_cross(WindowHandle,Row,Column,6,0)
get_calib_data_observ_pose (CalibDataID, 0, 0, I, ObjInCameraPose)
disp_caltab (WindowHandle, CalplateFile, StartCamPar, ObjInCameraPose, 0)
disp_3d_coord_system (WindowHandle, StartCamPar, Pose1, 0.05)
disp_3d_coord_system (WindowHandle, StartCamPar, ObjInCameraPose, 0.1)
*dev_set_color ('green')
*dev_display (Caltab)
stop()
endfor
calibrate_cameras (CalibDataID, Error)
get_calib_data (CalibDataID, 'camera', 0, 'params', CamParam)
get_calib_data(CalibDataID,'calib_obj_pose',[0,1],'p ose',Pose)
set_origin_pose(Pose,0, 0, 0.0034, Pose)
dev_set_colored(12)
disp_3d_coord_system (WindowHandle, CamParam, Pose, 0.05)
ObjInCameraPose := []
for I := 0 to |ImageFiles| - 1 by 1
get_calib_data_observ_pose(CalibDataID, 0, 0, I, ObjInCameraPose)
disp_3d_coord_system (WindowHandle, StartCamPar, ObjInCameraPose, 0.05)
* disp_3d_coord_system (WindowHandle, CamParam, ObjInCameraPose, 0.1)
endfor
留言列表