list_files ('E:/calibration_image', 'files', ImageFiles)
for Index := 0 to |ImageFiles|-1 by 1
read_image(Image, ImageFiles[Index])
endfor
注释:'E:/calibration_image':为图像路径,图像文件索引是从0开始的,所以|ImageFiles|(文件数量)减去1。
算子:read_image(:Image :FileName):读取名称为FileName的图像Image。
二、提取图像Images中标定板上的圆形标志来确定标定板的有效区域,算子如下:
find_caltab(Image:Caltab:CalTabDescrFile,SizeGauss,MarkThresh,MinDiamMarks:)
确定标定板上圆形标志点的二维坐标,并得到摄像机外部参数的初始值,算子如下:
find_marks_and_pose (Image,CalTabRegion: :CalTabDescrFile
,StartCamParam ,StartThresh,
DeltaThresh,MinThresh,Alpha,MinContLength,MaxDiamMarks:Rcoord,Ccoord,
StartPose)
初始参数是0.0195,注意halcon里单位是mk是畸变系数,可以初始为0
sx和sy是相邻像元的水平和垂直距离,1/4"可以查得分别宽和高尺寸是3.2和2.4mm,用320×240去除,得到sx和sy分别是0.01mm,那么应该初始为sx=1.0e-005和sy=1.0e-005,Cx和Cy分别是图像中心点行和列坐标,可以初始化为160和120,最后两个参数是ImageWidth和ImageHeight直接就用320和240。还有不明白的地方,可以直接回复消息给我。
我的QQ是331098523
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)