opencv使用Halcon标定的相机内参和外参

由于opencv开源的性质,所以一些细节做的不好,在标定细节上面不够完善,因此Halcon标定的结果明显优于opencv等开源标定包。
这里存在一个问题,就是如何把Halcon标定的结果输入到opencv中或者大部分开源体系的相机包。
这里给出我的经验,有些也是蒙的,因为详细了解要推导矫正公式。
先上一张halcon标定结果图
opencv使用Halcon标定的相机内参和外参_第1张图片
来一张opencv的内参图
opencv使用Halcon标定的相机内参和外参_第2张图片其中焦距
opencv_fx = halcon_f / sx *1000
opencv_fy = halcon_f / sy *1000
举例 :
1866.53 = 4.10644 / 2.2 * 1000.0

其中畸变参数
opencv_k1 = halcon_kappa * halcon_f * halcon_f / 1000000;
举例:
-0.23265… = -13796.8 * 4.10644 *4.10644 / 1000000;

真的百度不到,bing了一下有了一个结果,讨论十分激烈有时间细看,halcon官方声明不可转换,但是有人测试发现可以这么用,良心篇,参考如下:
https://stackoverflow.com/questions/58606394/halcon-to-opencv-distortion-coefficients-convertion
登陆不上的请耐心,实在登陆不上的请科学上网。

你可能感兴趣的:(Halcon图像处理)