halcon自标定

概念

该算法可以在不使用标定板的情况下计算相机内参,从而进行畸变校正,适用于畸变较大的情况。算法很简单:
1.求出图像边缘应进行分割。
2.基于筛选线段的自标定radial_distortion_self_calibration。
3.得到标定区域。
4.根据指定的径向畸变确定新的相机参数change_radial_distortion_cam_par。
5.改变图像的径向失真,从而得到新图像。
需要注意:
1.保证在图像的四周边缘有足够的直线线段
2.保证运行环境内存>=2G。

例子

read_image (Image, 'D:/TestBMP/Test_2D_S4.png')
edges_sub_pix(Image, Edges, 'canny', 1, 20, 40)
segment_contours_xld(Edges, ContoursSplit, 'lines_circles', 5, 4, 2)
select_shape_xld(ContoursSplit, SelectedXLD, 'width', 'and', 200, 99999)
radial_distortion_self_calibration(SelectedXLD, SelectedContours, 3024, 4032, 0.02, 50, 'division', 'variable', 0, CameraParam)
get_domain(Image, Domain)
change_radial_distortion_cam_par('fixed', CameraParam, 0, CamParamOut)
change_radial_distortion_image(Image, Domain, ImageRectified, CameraParam, CamParamOut)

猜你喜欢

转载自blog.csdn.net/baidu_35536188/article/details/115110815
今日推荐