径向畸变校正

1、畸变矫正主要包括径向畸变和切向畸变

(1)径向畸变(枕形、桶形):光线在远离透镜中心的地方比靠近中心的地方更加弯曲

径向畸变校正_第1张图片

(2)切向畸变:透镜不完全平行于图像平面,即sensor装配时与镜头间的角度不准

 

2、径向畸变矫正原理

(1)矫正前后的坐标映射

输出图像(nJ,nI)--(宽高缩放比)->矫正后图像--(张氏标定法)->矫正前图像(输入图像(fOrgJ,fOrgI))

(2)映射到原图的坐标不一定是整数,双线性插值

举例:输出图像(3,4)映射到输入图像(5.25,6.75)

输出图像(3,4) = 输入图像取(5,6)、(5,7)、(6,6)、(6,7)四点像素值双线性插值

= 输入图像(5+0.25,6+0.75) 

= (1-0.25)(1-0.75)f(5,6)+(1-0.25)*0.75*f(5,6+1)+0.25*(1-0.75)f(5+1,6)+0.25*0.75*f(5+1,6+1)

 

3、径向畸变矫正算法伪代码

张氏标定法

其中(u, v)代表理想无畸变(即矫正后)的像素坐标,(˘u, ˘v)代表实际径像畸变的情况下(矫正前)的像素坐标,(u0, v0)代表理想无畸变(即矫正后)的图像主点,(u1, v1)代表实际径像畸变(即矫正前)的图像主点。x, y在这里分别代表矫正后图像中(u, v)点像素分别在行向和列向与主点的距离。

(1)输入图像主点(图像中心点坐标)--(张氏标定法)->矫正后图像主点(矫正后图像宽高)--->计算输出图像与矫正后图像宽高缩放比

(2)输出图像坐标通过宽高缩放比映射到矫正后图像坐标

(3)矫正后图像坐标通过张氏标定法映射到输入图像坐标

(4)双线性插值

 

4、优化、加速策略

(1)双线性插值

*源图像和目标图像几何中心对齐

SrcX=(dstX+0.5)* (srcWidth/dstWidth) -0.5
SrcY=(dstY+0.5) * (srcHeight/dstHeight)-0.5

*将浮点运算转换成整数运算(除法采用移位操作)

*多线程

 

 

 

 

 

 

 

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