网上有很多关于pos机镜头效果,halcon畸变标定的知识,也有很多人为大家解答关于pos机镜头效果的问题,今天pos机之家(www.poszjia.com)为大家整理了关于这方面的知识,让我们一起来看下吧!
本文目录一览:
1、pos机镜头效果
pos机镜头效果
图像的畸变由于镜头(主要是FA镜头)引起的,实际同一个点,在通过光心后成像点倾斜。
像差导致畸变
halcon畸变模型在halcon中,这个畸变可以通过division model和polynominal model来建模
division model
这种模型使用一个参数k来建模这种畸变关系
转换公式
其中
公式
畸变
polynominal model
也称多项式,使用三个参数(k1,k2,k3)来建模畸变
公式
其中
公式
透视投影
其中
世界坐标系:Xw,Yw,Zw
相机坐标系:Xc,Yc,Zc
图像坐标系统:r,c
图像像素坐标系统:u,v
标定板创建gen_calib(7,7,0.0125,0.5,’calib.descr’,’calib.ps’)
每行圆点数量
每列圆点数量
两个圆点的中心距离
圆点半径和圆点中心距离的比值
标定板描述文件
标定板图像文件
这个你可以自己生成后打印出来, 当然这种精度肯定不高的, 你也可以去某宝上买。
标定助手使用halcon的标定助手可以进行畸变标定,采集各种姿态的图片,尽量在视野的每个位置、角度都采集,最好15张以上,生成标定文件。
标定助手
我们得到内参和外参
CameraParameters := [0.0344624,-90.0854,8.31673e-006,8.3e-006,1310.66,911.681,2400,2048]
CameraPose := [-0.0160043,0.0131353,0.174315,1.28984,355.196,273.345,0]
使用标定文件畸变矫正图像
CameraParameters := [0.0344624,-90.0854,8.31673e-006,8.3e-006,1310.66,911.681,2400,2048]
CamPos1:=CameraParameters
CamPos1[1]:=0
读取图片
read_image()
建立矫正矩阵
gen_radial_distortion_map
进行矫正
map_image
像素点转换为物理点
CameraParameters := [0.0344624,-90.0854,8.31673e-006,8.3e-006,1310.66,911.681,2400,2048]
CameraPose := [-0.0160043,0.0131353,0.174315,1.28984,355.196,273.345,0]
获取像素点
P1x:=100 P1Y:=100
P2X:=100 p2Y:=200
TmpCtrl_ImgRows :=[P1X,P2X]
TmpCtrl_ImgColums := [P1y,p2y]
set_origin_pose(CameraPos,0.0,0.0,-0.001,CameraPose)
image_points_to_world_plane(CameraParameters,CameraPose,TmpCtrl_ImgRows,TmpCtrl_ImgColums,’mm’,TmpWorldX,TmpWorldY)
得到输出世界坐标点TmpWorldX,TmpWorldY
计算距离
distance_pp 输出距离值 TmpCtrol_Distance
获取单像素精度值
TmpCtrol_Distance/200
关注我 公众号 VisionManMaster
#机器视觉# #自动化# #PLC# #编程# #图像处理#
以上就是关于pos机镜头效果,halcon畸变标定的知识,后面我们会继续为大家整理关于pos机镜头效果的知识,希望能够帮助到大家!
