CN113822937B - 一种图像校正方法、装置、设备及存储介质 - Google Patents
一种图像校正方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113822937B CN113822937B CN202010562132.9A CN202010562132A CN113822937B CN 113822937 B CN113822937 B CN 113822937B CN 202010562132 A CN202010562132 A CN 202010562132A CN 113822937 B CN113822937 B CN 113822937B
- Authority
- CN
- China
- Prior art keywords
- coordinates
- groups
- image
- corner
- curvature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000003702 image correction Methods 0.000 title claims abstract description 74
- 238000012937 correction Methods 0.000 claims abstract description 170
- 238000012545 processing Methods 0.000 claims description 56
- 238000004422 calculation algorithm Methods 0.000 claims description 55
- 238000004891 communication Methods 0.000 claims description 11
- 238000009825 accumulation Methods 0.000 claims description 4
- 230000008878 coupling Effects 0.000 abstract description 8
- 238000010168 coupling process Methods 0.000 abstract description 8
- 238000005859 coupling reaction Methods 0.000 abstract description 8
- 238000004364 calculation method Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4023—Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请公开了一种图像校正方法,该方法包括:通过所述图像采集单元对预设拍摄对象进行图像采集,得到标定图像;其中,所述标定图像为棋盘格图像;对所述标定图像进行计算处理,确定校正中心的中心坐标和校正系数;基于所述中心坐标和所述校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像;其中,所述待处理图像是所述图像采集单元采集到的,从而实现了独立求解校正中心参数和校正系数,降低了耦合误差,提高了校正图像质量。本申请还提供了一种图像校正装置、设备和存储介质。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种图像校正方法、装置、设备及存储介质。
背景技术
随着科技水平的不断发展,视频监控以及拍照等在各行各业的应用范围逐渐扩大。但是光学成像系统中的透镜表面存在弧度和透镜中心点偏移等问题,导致监控系统或拍照系统的镜头存在不同程度的畸变,例如径向畸变、切向畸变和薄棱镜畸变等,使得拍摄得到的图像存在失真,导致拍摄得到的图像在图像质量要求严格的场景中不符合成像质量要求。目前,为了解决上述问题,视频监控系统或者拍照系统目前常用的校正方法有:采用标定算法和张正友算法进行标定求解出系统的校正系数从而在监控设备侧实现图像校正。
但是,上述目前采用的校正方法在进行镜头校正系数求解时,默认图像中心为畸变中心,导致校正中心参数和校正系数求解不独立,耦合误差大,造成目前校正后图像质量较差。
申请内容
为解决上述技术问题,本申请期望提供一种图像校正方法、装置、设备及存储介质,解决了目前校正方法校正后的图像质量较差的问题,实现了独立求解校正中心参数和校正系数,降低了耦合误差,提高了校正图像质量。
本申请的技术方案是这样实现的:
第一方面,一种图像校正方法,所述方法应于图像校正设备,所述图像校正设备包括图像采集单元,所述方法包括:
通过所述图像采集单元对预设拍摄对象进行图像采集,得到标定图像;其中,所述标定图像为棋盘格图像;
对所述标定图像进行计算处理,确定校正中心的中心坐标和校正系数;
基于所述中心坐标和所述校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像;其中,所述待处理图像是所述图像采集单元采集到的。
可选的,所述对所述标定图像进行处理,确定校正中心的中心坐标和校正系数,包括:
在所述标定图像中确定第一预设数量个第一目标角点,并提取所述第一预设数量个第一目标角点的角点坐标;其中,所述第一目标角点为所述标定图像中相邻格子相交的交点;
对所述第一预设数量个第一目标角点的角点坐标进行分类,得到m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标;其中,m和n均为大于或等于2的正整数,每一组横轴方向上的角点坐标至少包括三个,每一组纵轴方向上的角点坐标至少包括三个;
基于所述m组横轴方向上的角点坐标和所述n组纵轴方向上的角点坐标,分别确定第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标;其中,所述第二预设数量大于或者等于2,所述第三预设数量大于或者等于2;
基于所述第二预设数量组横轴方向上的角点坐标和所述第三预设数量组纵轴方向上的角点坐标,确定所述校正中心的中心坐标;
基于所述校正中心的中心坐标,确定所述校正系数。
可选的,所述基于所述m组横轴方向上的角点坐标和所述n组纵轴方向上的角点坐标,分别确定第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标,包括:
基于所述m组横轴方向上的角点坐标,分别计算每一组横轴方向上的角点坐标对应的横轴曲线的曲率,得到m个横轴曲线曲率;
基于所述n组纵轴方向上的角点坐标,分别计算每一组纵轴方向上的角点坐标对应的纵轴曲线的曲率,得到n个纵轴曲线曲率;
基于所述m个横轴曲线曲率和所述m组横轴方向上的角点坐标,确定所述第二预设数量组横轴方向上的角点坐标,并基于所述n个纵轴曲线曲率和所述n组横轴方向上的角点坐标,确定所述第三预设数量组纵轴方向上的角点坐标。
可选的,所述基于所述m组横轴方向上的角点坐标,分别计算每一组横轴方向上的角点坐标对应的横轴曲线的曲率,得到m个横轴曲线曲率,包括:
基于所述m组横轴方向上的角点坐标,分别对每一组横轴方向上的角点坐标进行直线拟合,得到每一组横轴方向上的角点坐标对应直线的第一直线方程;
获取所述第一直线方程的第一斜率和第一截距;
计算每一组横轴方向上的每一角点坐标的横坐标与所述第一斜率的乘积,得到第一数值;其中,所述每一组横轴方向上的每一角点坐标的横坐标与所述第一斜率具有对应关系;
计算每一组横轴方向上的每一角点坐标的纵坐标减去所述第一数值和所述第一截距,得到第二数值;其中,所述纵坐标与计算得到所述第一数值的横坐标对应;
计算所述第二数值的平方,得到第三数值;
计算所述每一组横轴方向上的角点坐标对应的第三数值的累加和后计算平均值,得到所述m个横轴曲线曲率。
可选的,所述基于所述n组纵轴方向上的角点坐标,分别计算每一组纵轴方向上的角点坐标对应的纵轴曲线的曲率,得到n个纵轴曲线曲率,包括:
基于所述n组纵轴方向上的角点坐标,分别对每一组纵轴方向上的角点坐标进行直线拟合,得到每一组纵轴方向上的角点坐标对应直线的第二直线方程;
获取所述第二直线方程的第二斜率和第二截距;
计算每一组纵轴方向上的每一角点坐标的横坐标与所述第二斜率的乘积,得到第四数值;其中,所述每一纵轴方向上的每一角点坐标的横坐标与所述第二斜率具有对应关系;
计算每一组纵轴方向上的每一角点坐标的纵坐标减去所述第四数值和所述第二截距,得到第五数值;其中,所述纵坐标与计算得到所述第四数值的横坐标对应;
计算所述第五数值的平方,得到第六数值;
计算所述每一组纵轴方向上的角点坐标对应的所述第六数值的累加和后计算平均值,得到所述n个纵轴曲线曲率。
可选的,所述基于所述m个横轴曲线曲率和所述m组横轴方向上的角点坐标,确定所述第二预设数量组横轴方向上的角点坐标,并基于所述n个纵轴曲线曲率和所述n组横轴方向上的角点坐标,确定所述第三预设数量组纵轴方向上的角点坐标,包括:
从所述m个横轴曲线曲率中,获取第二预设数量个曲率最小的横轴曲线曲率;
从所述m组横轴方向上的角点坐标中,获取与所述第二预设数量个曲率最小的横轴曲线曲率对应的所述第二预设数量组横轴方向上的角点坐标;
从所述n个纵轴曲线曲率中,获取第三预设数量个曲率最小的纵轴曲线曲率;
从所述n组横轴方向上的角点坐标中,获取与所述第三预设数量个曲率最小的纵轴曲线曲率对应的所述第三预设数量组纵轴方向上的角点坐标。
可选的,所述基于所述第二预设数量组横轴方向上的角点坐标和所述第三预设数量组纵轴方向上的角点坐标,确定所述校正中心的中心坐标,包括:
对2组横轴方向上的角点坐标进行插值处理,得到第一插值点的坐标;其中,所述第二预设数量为2,所述第一插值点包括至少三个;
基于所述第一插值点的坐标和所述2组横轴方向上的角点坐标,确定第一目标直线方程;
对2组纵轴方向上的角点坐标进行插值处理,得到第二插值点的坐标;其中,所述第三预设数量为2,所述第二插值点包括至少三个;
基于所述第二插值点的坐标和所述2组纵轴方向上的角点坐标,确定第二目标直线方程;
计算所述第一目标直线方程和所述第二目标直线方程的交点,得到所述校正中心的中心坐标。
可选的,所述对2组横轴方向上的角点坐标进行插值处理,得到第一插值点的坐标,包括:
对所述2组横轴方向上的角点坐标进行分类,得到在同一纵轴上的p组两个角点坐标组;其中,p为大于或者等于3的整数;
获取所述p组两个角点坐标组中的每一两个角点坐标组中的第一横坐标值和第二横坐标值;
计算2个曲率最小的横轴曲线曲率的差值的绝对值与所述2个曲率最小的横轴曲线曲率的和值的比值,得到第七数值;
计算所述第二横坐标值与所述第一横坐标值的差值与所述第七数值的乘积,得到第八数值;
计算所述第八数值与所述第二横坐标值的和值,得到所述第一插值点的坐标中的横坐标值;
获取所述p组两个角点坐标组中的每一两个角点坐标组中的第一纵坐标值和第二纵坐标值;其中,所述第二纵坐标值大于所述第一纵坐标值,所述第一纵坐标值与所述第一横坐标值对应,所述第二纵坐标值与所述第二横坐标值对应;
计算所述第二纵坐标值与所述第一纵坐标值的差值与所述第七数值的乘积,得到第九数值;
计算所述第九数值与所述第二纵坐标值的和值,得到所述第一插值点的坐标中的纵坐标值。
可选的,所述基于所述第一插值点的坐标和所述2组横轴方向上的角点坐标,确定第一目标直线方程,包括:
基于所述第一插值点的坐标,计算所述第一插值点对应的第一曲率;
若所述第一曲率大于所述第一预设曲率,则从所述2组横轴方向上的角点坐标对应的2组横轴曲线曲率和所述第一曲率中,获取曲率最小的两个第二曲率;
从所述2组横轴方向上的角点坐标和所述第一插值点的坐标中,获取所述第二曲率对应的2组第一坐标;
在横轴方向基于所述2组第一坐标进行插值处理,得到第三插值点的坐标;其中,所述第三插值点包括至少三个;
基于所述第三插值点的坐标,计算所述第三插值点对应的第三曲率;
若所述第三曲率大于所述第一预设曲率,则从所述2组第一坐标对应的曲率和所述第三曲率中,获取曲率最小的两个第四曲率;
从所述2组第一坐标和所述第三插值点的坐标中,获取所述第四曲率对应的2组第二坐标,在横轴方向基于所述2组第二坐标进行插值处理,得到第四插值点的坐标,如此重复循环操作直至得到的第五插值点对应的第五曲率小于或等于所述第一预设曲率,并基于所述第五插值点的坐标进行直线拟合,得到所述第一目标直线方程;
若所述第一曲率小于或者等于所述第一预设曲率,则基于所述第一插值点的坐标进行直线拟合,得到所述第一目标直线方程。
可选的,所述对2组纵轴方向上的角点坐标进行插值处理,得到第二插值点的坐标,包括:
对所述2组纵轴方向上的角点坐标进行分类,得到在同一横轴上的q组两个角点坐标组;其中,q为大于或者等于3的整数;
获取所述q组两个角点坐标组中的每一两个角点坐标组中的第三横坐标值和第四横坐标值;
计算2个曲率最小的纵轴曲线曲率的差值的绝对值与所述2个曲率最小的纵轴曲线曲率的和值的比值,得到第十数值;
计算所述第四横坐标值与所述第三横坐标值的差值与所述第十数值的乘积,得到第十一数值;其中,所述第四横坐标值大于所述第三横坐标值;
计算所述第十一数值与所述第四横坐标值的和值,得到所述第二插值点的坐标中的横坐标值;
获取所述q组两个角点坐标组中的每一两个角点坐标组中的第三纵坐标值和第四纵坐标值;其中,所述第三纵坐标值与所述第三横坐标值对应,所述第四纵坐标值与所述第四横坐标值对应;
计算所述第四纵坐标值与所述第三纵坐标值的差值与所述第十数值的乘积,得到第十二数值;
计算所述第十二数值与所述第四纵坐标值的和值,得到所述第二插值点的坐标中的纵坐标值。
可选的,所述基于所述第二插值点的坐标和所述2组纵轴方向上的角点坐标,确定第二目标直线方程,包括:
基于所述第二插值点的坐标,计算所述第二插值点对应的第六曲率;
若所述第六曲率大于所述第二预设曲率,则从所述2组纵轴方向上的角点坐标对应的2组纵轴曲线曲率和所述第六曲率中,获取曲率最小的两个第七曲率;
从所述2组纵轴方向上的角点坐标和所述第二插值点的坐标中,获取所述第七曲率对应的2组第三坐标;
在纵轴方向基于所述2组第三坐标进行插值处理,得到第六插值点的坐标;其中,所述第六插值点包括至少三个;
基于所述第六插值点的坐标,计算所述第二插值点对应的第八曲率;
若所述第八曲率大于所述第二预设曲率,则从所述2组第三坐标对应的曲率和所述第八曲率中,获取曲率最小的两个第九曲率;
从所述2组第三坐标和所述第六插值点的坐标中,获取所述第九曲率对应的2组第四坐标,在纵轴方向基于所述2组第四坐标进行插值处理,得到第七插值点的坐标,如此重复循环操作直至得到的第八插值点对应的第十曲率小于或等于所述第二预设曲率,并基于所述第八插值点的坐标进行直线拟合,得到所述第二目标直线方程;
若所述第六曲率小于或者等于所述第二预设曲率,则基于所述第二插值点的坐标进行直线拟合,得到所述第二目标直线方程。
可选的,所述基于所述校正中心的中心坐标,确定所述校正系数,包括:
确定所述校正中心的中心坐标在所述标定图像中所属的格子区域,并获取构成所述格子区域的四个角点的第一目标角点坐标;
基于校正特性和所述第一目标角点坐标,得到所述校正系数。
可选的,所述校正特性包括:四条边相等、相邻边互相垂直、边与经过校正中心的拟合直线平行或垂直;所述基于校正特性和所述目标角点坐标,得到所述校正系数,包括:
从所述第一目标角点坐标中选取三个角点对应的角点坐标,得到第一角点坐标、第二角点坐标和第三角点坐标;
基于所述第一角点坐标、所述第二角点坐标、所述第三角点坐标三者之间的位置关系,将所述第一角点坐标、所述第二角点坐标、所述第三角点坐标代入所述校正特性对应的四个算法中,得到四个目标子算法;
将所述四个目标子算法进行累加后,得到目标算法;
基于所述目标算法,得到在所述目标算法得到最小值时对应的横轴偏移量和纵轴偏移量;
基于所述横轴偏移量和所述纵轴偏移量,对所述第一目标角点坐标进行校正,得到第二目标角点坐标;
基于所述中心坐标、所述第一目标角点坐标中的至少三个角点坐标和对应的所述第二目标角点坐标中的至少三个角点坐标,以及畸变模型算法,计算得到所述校正系数。
可选的,所述基于所述中心坐标和所述校正系数,对所述待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像,并存储所述目标图像,包括:
将所述中心坐标、所述校正系数和所述待处理图像中每一像素的像素坐标,采用畸变模型算法进行计算,得到校正后的每一像素的像素坐标;
基于所述校正后的每一像素的像素坐标对所述待处理图像中对应的每一像素进行校正,得到所述目标图像,并存储所述目标图像。
第二方面,一种图像校正装置,所述装置包括:图像采集单元、处理单元和校正单元;其中:
所述图像采集单元,用于对预设拍摄对象进行图像采集,得到标定图像;其中,所述预设拍摄对象为棋盘格图像;
所述处理单元,用于对所述标定图像进行处理,确定校正中心的中心坐标和校正系数;
所述图像采集单元,还用于采集待处理图像;
所述校正单元,用于基于所述中心坐标和所述校正系数,对所述待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像,并存储所述目标图像。
第三方面,一种图像校正设备,所述设备包括图像采集器、存储器、处理器和通信总线;其中:
图像采集器,用于对预设拍摄对象进行图像采集,得到标定图像;其中,所述标定图像为棋盘格图像;
所述通信总线,用于实现所述处理器、所述存储器和所述图像采集器之间的通信连接;
所述处理器,用于对所述标定图像进行计算处理,确定校正中心的中心坐标和校正系数;基于所述中心坐标和所述校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像;其中,所述待处理图像是所述图像采集器采集到的。
第四方面,一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述任一项所述的图像校正方法的步骤。
本申请提供的图像校正方法、装置、设备及存储介质,通过图像采集单元对预设拍摄对象进行图像采集,得到标定图像,并对标定图像进行计算处理,确定校正中心的中心坐标和校正系数,然后基于中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像。这样,对包括棋盘格的标定图像进行处理,独立计算得到校正中心的中心坐标和校正系数后,中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到目标图像,解决了目前采用的校正方法校正后的图像质量较差的问题,实现了求解校正中心参数和校正系数,降低了耦合误差,提高了校正图像质量。
附图说明
图1为本申请实施例提供的一种图像校正方法的流程示意图;
图2为本申请实施例提供的另一种图像校正方法的流程示意图;
图3为本申请实施例提供的又一种图像校正方法的流程示意图;
图4为本申请实施例提供的一种应用场景示意图;
图5为本申请实施例提供的另一种应用场景示意图;
图6为本申请实施例提供的又一种应用场景示意图;
图7为本申请实施例提供的一种图像校正系统的结构示意图;
图8为本申请实施例提供的另一种图像校正系统的结构示意图
图9为本申请实施例提供的一种图像校正装置的结构示意图;
图10为本申请实施例提供的一种图像校正设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请的实施例提供一种图像校正方法,参照图1所示,方法应用于图像校正设备,该方法包括以下步骤:
步骤101、通过图像采集单元对预设拍摄对象进行图像采集,得到标定图像。
其中,标定图像为棋盘格图像。
在本申请实施例中,预设拍摄对象可以是由相同正方形格子构成的标准图像。其中,相邻的格子上可以填充不同的颜色,在一些应用场景中,预设拍摄对象可以是由黑白棋盘格构成的黑白棋盘格图像,黑白格均为边长相等的正方形格子。标定图像可以是彩色的,也可以是黑白的。图像采集单元可以是摄像头,对应的图像校正设备为具备拍照或者拍摄功能的设备,图像校正设备的摄像头可以与图像校正设备是一体的,也可以是与图像校正设备具备通信连接的,例如图像校正设备可以是智能手机、具备摄像头的计算机设备、便携计算机设备、具备处理功能的照相机或者摄像机、或者摄像监控设备等。标定图像是由填充不同颜色的预设拍摄对象进行拍摄得到的时,可以是图像校正设备对预设拍摄对象进行黑白图像采集得到的,也可以是直接对黑白棋盘格图像进行采集到的图像。
步骤102、对标定图像进行计算处理,确定校正中心的中心坐标和校正系数。
在本申请实施例中,由于校正中心附近畸变特性最小,因此可以对标定图像采用曲率插值的方法对标定图像进行计算处理,确定校正中心的中心坐标,然后基于确定的校正中心的中心坐标对标定图像进行图像重构处理,从而得到校正系数。
步骤103、基于中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像。
其中,待处理图像是图像采集单元采集到的。
在本申请实施例中,待处理图像是可以是图像采集单元当前采集到的图像,也可以是图像采集单元采集到的历史图像。这样,在待处理图像是图像采集单元当前采集到的图像时,图像校正设备实时对待处理图像校正,保证了图像校正的实时性。基于中心坐标和校正系数,采用畸变模型算法对待处理图像中每一像素的像素坐标进行校正,从而可以得到无畸变到的目标图像,并将目标图像存储至本地存储单元,或者与图像校正设备具有通信连接的存储单元中,与图像校正设备具有通信连接的存储单元包括云存储。在一些应用场景中,可以根据实际应用场景,校正得到目标图像后,可以在图像校正设备对应的显示区域中进行显示,并根据用户对显示的目标图像进行存储操作后,才进行存储,或者,校正得到目标图像后,在图像校正设备对应的显示区域中进行显示,并直接进行存储。
本申请实施例提供了一种图像校正方法,通过图像采集单元对预设拍摄对象进行图像采集,得到标定图像,并对标定图像进行计算处理,确定校正中心的中心坐标和校正系数,然后基于中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像。这样,对包括棋盘格的标定图像进行处理,独立计算得到校正中心的中心坐标和校正系数后,中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到目标图像,解决了目前采用的校正方法校正后的图像质量较差的问题,实现了求解校正中心参数和校正系数,降低了耦合误差,提高了校正图像质量。
基于前述实施例,本申请的实施例提供一种图像校正方法,参照图2所示,方法应用于图像校正设备,该方法包括以下步骤:
步骤201、通过图像采集单元对预设拍摄对象进行图像采集,得到标定图像。
其中,标定图像为棋盘格图像。
在本申请实施例中,以预设拍摄对象为黑白棋盘格标准图像为例进行说明,图像校正设备通过图像校正设备的图像采集单元对黑白棋盘格标准图像进行图像采集,得到标定图像。
步骤202、在标定图像中确定第一预设数量个第一目标角点,并提取第一预设数量个第一目标角点的角点坐标。
其中,第一目标角点为标定图像中相邻格子相交的交点。
在本申请实施例中,第一预设数量为根据大量实验或者理论得到的经验值,在实际应用场景中,用户可以根据自己的需求对第一预设数量进行调整,第一预设数量至少取值为8。在标定图像中确定第一预设数量个第一目标角点时,第一目标角点尽量不包括标定图像边缘上的角点。在横轴方向上的第一目标角点在至少2个不同横轴上进行确定,且同一横轴上的第一目标角点至少包括3个,且至少2个不同横轴上的第一角点至少有两组在同一纵轴上,同理,在纵轴方向上的第一目标角点在至少2个不同纵轴上进行确定,且同一纵轴上的第一目标角点至少包括3个,且至少2个不同纵轴上的第一角点至少有两组在同一横轴上。需说明的是,在横轴方向上的第一目标角点和在纵轴方向上的第一目标角点可以有部分相同。在标定图像中,在标定图像上建立二维坐标系,对应的坐标原点为标定图像的左上角的角点,对应的竖直方向为y轴方向,横轴方向为x方向,对应的第一目标角点的角点坐标为第一目标角点对应的像素坐标。
步骤203、对第一预设数量个第一目标角点的角点坐标进行分类,得到m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标。
其中,m和n均为大于或等于2的正整数,每一组横轴方向上的角点坐标至少包括三个,每一组纵轴方向上的角点坐标至少包括三个。
在本申请实施例中,可以根据第一预设数量个第一目标角点的角点坐标在标定图像上的位置来实现分类,得到m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标,其中,一组横轴方向上的角点坐标在同一横轴上,一组纵轴方向上的角点坐标在同一纵轴上。
步骤204、基于m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标,分别确定第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标。
其中,第二预设数量大于或者等于2,第三预设数量大于或者等于2。
在本申请实施例中,第二预设数量和第三预设数量可以相同,也可以不同。以第二预设数量和第三预设数量均为2为例进行说明,从m组横轴方向上的角点坐标中选出符合预设条件的2组横轴方向上的角点坐标,从n组纵轴方向上的角点坐标中选出符合预设条件的2组纵轴方向上的角点坐标。
步骤205、基于第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标,确定校正中心的中心坐标。
在本申请实施例中,对2组横轴方向上的角点坐标进行分析处理,确定校正中心的中心坐标的横坐标,对2组纵轴方向上的角点坐标进行分析处理,确定校正中心的中心坐标的纵坐标。
步骤206、基于校正中心的中心坐标,确定校正系数。
在本申请实施例中,基于正方形特性对校正中心的中心坐标所在的局部区域进行区域校正,区域校正后的局部区域结合图像畸变模型算法,简称畸变模型算法可求解出校正系数。
步骤207、获取通过图像采集单元采集的待处理图像。
在本申请实施例中,以待处理图像为图像校正设备通过图像采集单元对当前拍摄对象进行拍摄进行得到的为例进行说明。
步骤208、将中心坐标、校正系数和待处理图像中每一像素的像素坐标,采用畸变模型算法进行计算,得到校正后的每一像素的像素坐标。
在本申请实施例中,将中心坐标、校正系数和待处理图像中每一像素的像素坐标代入畸变模型算法中进行计算,即可得到每一像素的校正后像素坐标。
步骤209、基于校正后的每一像素的像素坐标对待处理图像中对应的每一像素进行校正,得到目标图像,并存储目标图像。
在本申请实施例中,将待处理图像中的每一像素移动至对应的每一像素的校正后的像素坐标处,即可实现校正,从而得到目标图像。
需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。
本申请实施例提供了一种图像校正方法,通过图像采集单元对预设拍摄对象进行图像采集,得到标定图像,并对标定图像进行计算处理,确定校正中心的中心坐标和校正系数,然后基于中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像。这样,对包括棋盘格的标定图像进行处理,独立计算得到校正中心的中心坐标和校正系数后,中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到目标图像,解决了目前采用的校正方法校正后的图像质量较差的问题,实现了求解校正中心参数和校正系数,降低了耦合误差,提高了校正图像质量。
基于前述实施例,本申请的实施例提供一种图像校正方法,参照图3所示,方法应用于图像校正设备,该方法包括以下步骤:
步骤301、通过图像采集单元对预设拍摄对象进行图像采集,得到标定图像。
其中,标定图像为棋盘格图像。
在本申请其他实施例中,得到的标定图像可以如图4所示,为黑白格相间的黑白棋盘格图像,其中,图4中包括对应的二维坐标系,对应的标定图像的左上角为坐标原点O,横轴为x轴,纵轴为y轴。需说明的是,图4中所示的二维坐标系仅距离说明,在其他一些应用场景中,二维坐标系的坐标原点可以根据需求发生改变。
步骤302、在标定图像中确定第一预设数量个第一目标角点,并提取第一预设数量个第一目标角点的角点坐标。
其中,第一目标角点为标定图像中相邻格子相交的交点,第一预设数量大于或等于8。
步骤303、对第一预设数量个第一目标角点的角点坐标进行分类,得到m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标。
其中,m和n均为大于或等于2的正整数,每一组横轴方向上的角点坐标至少包括三个,每一组纵轴方向上的角点坐标至少包括三个。
步骤304、基于m组横轴方向上的角点坐标,分别计算每一组横轴方向上的角点坐标对应的横轴曲线的曲率,得到m个横轴曲线曲率。
在本申请实施例中,由于一组横轴方向上的角点在标定图像中的同一横轴上,所以可以采用曲线坐标曲率计算公式基于每一组横轴方向上的角点坐标进行计算,得到每一组横轴方向上的角点坐标对应的横轴曲线的曲率,从而得到m组横轴方向上的角点坐标对应的m个横轴曲线曲率。
在本申请其他实施例中,步骤304可以由以下步骤a11至a16来实现:
步骤a11、基于m组横轴方向上的角点坐标,分别对每一组横轴方向上的角点坐标进行直线拟合,得到每一组横轴方向上的角点坐标对应直线的第一直线方程。
在本申请实施例中,每一组横轴方向上的角点坐标对应直线的第一直线方程可以记为:yi=kix+bi,i=1,2,……,m。
步骤a12、获取第一直线方程的第一斜率和第一截距。
在本申请实施例中,第一斜率为ki,对应的第一截距为bi。
步骤a13、计算每一组横轴方向上的每一角点坐标的横坐标与第一斜率的乘积,得到第一数值。
其中,每一组横轴方向上的每一角点坐标的横坐标与第一斜率具有对应关系。
在本申请实施例中,每一组横轴方向上的每一角点坐标,即第i组横轴方向上的每一角点坐标可以记为(Xi,a,Yi,a),其中,L为第i组横轴方向上确定的角点坐标的总数,对应的,a=0,1,2,……,L-1。因此,第一数值可以记为kiXi,a。
步骤a14、计算每一组横轴方向上的每一角点坐标的纵坐标减去第一数值和第一截距,得到第二数值。
其中,纵坐标与计算得到第一数值的横坐标对应。
在本申请实施例中,第二数值可以记为Yi,a-kiXi,a-bi。
步骤a15、计算第二数值的平方,得到第三数值。
在本申请实施例中,第三数值可以记为(Yi,a-kiXi,a-bi)2。
步骤a16、计算每一组横轴方向上的角点坐标对应的第三数值的累加和后计算平均值,得到m个横轴曲线曲率。
在本申请实施例中,每一组横轴方向上对应的横轴曲线曲率可以记为:
其中,i=1,2,……,m,a=0,1,2,……,L-1。/>
步骤305、基于n组纵轴方向上的角点坐标,分别计算每一组纵轴方向上的角点坐标对应的纵轴曲线的曲率,得到n个纵轴曲线曲率。
在本申请其他实施例中,步骤305可以由以下步骤b11至b16来实现:
步骤b11、基于n组纵轴方向上的角点坐标,分别对每一组纵轴方向上的角点坐标进行直线拟合,得到每一组纵轴方向上的角点坐标对应直线的第二直线方程。
在本申请实施例中,每一组纵轴方向上的角点坐标对应直线的第二直线方程可以记为:yj=kjx+bj,j=1,2,……,n。
步骤b12、获取第二直线方程的第二斜率和第二截距。
在本申请实施例中,第二斜率为kj,对应的第二截距为bj。
步骤b13、计算每一组纵轴方向上的每一角点坐标的横坐标与第二斜率的乘积,得到第四数值。
其中,每一组纵轴方向上的每一角点坐标的横坐标与第二斜率具有对应关系。
在本申请实施例中,每一组纵轴方向上的每一角点坐标,即第j组纵轴方向上的每一角点坐标可以记为(Xj,b,Yj,b),其中,P为第j组纵轴方向上确定的角点坐标的总数,对应的,b=0,1,2,……,P-1。因此,第四数值可以记为kjXj,b。
步骤b14、计算每一组纵轴方向上的每一角点坐标的纵坐标减去第四数值和第二截距,得到第五数值。
其中,纵坐标与计算得到第四数值的横坐标对应。
在本申请实施例中,第五数值可以记为Yj,b-kjXj,b-bj。
步骤b15、计算第五数值的平方,得到第六数值。
在本申请实施例中,第六数值可以记为(Yj,b-kjXj,b-bj)2。
步骤b16、计算每一组纵轴方向上的角点坐标对应的第六数值的累加和后计算平均值,得到n个纵轴曲线曲率。
在本申请实施例中,每一纵轴方向上对应的纵轴曲线曲率可以记为:
其中,j=1,2,……,n,b=0,1,2,……,P-1。
步骤306、基于m个横轴曲线曲率和m组横轴方向上的角点坐标,确定第二预设数量组横轴方向上的角点坐标,并基于n个纵轴曲线曲率和n组横轴方向上的角点坐标,确定第三预设数量组纵轴方向上的角点坐标。
其中,第二预设数量大于或者等于2,第三预设数量大于或者等于2。
在申请其他实施例中,步骤306可以由以下步骤c11至c14来实现:
步骤c11、从m个横轴曲线曲率中,获取第二预设数量个曲率最小的横轴曲线曲率。
步骤c12、从m组横轴方向上的角点坐标中,获取与第二预设数量个曲率最小的横轴曲线曲率对应的第二预设数量组横轴方向上的角点坐标。
步骤c13、从n个纵轴曲线曲率中,获取第三预设数量个曲率最小的纵轴曲线曲率。
步骤c14、从n组横轴方向上的角点坐标中,获取与第三预设数量个曲率最小的纵轴曲线曲率对应的第三预设数量组纵轴方向上的角点坐标。
步骤307、对2组横轴方向上的角点坐标进行插值处理,得到第一插值点的坐标。
其中,第二预设数量为2,第一插值点包括至少三个。
在本申请实施例中,由于每一组横轴方向上的角点坐标包括至少三个,且第三预设数量中至少2组横轴方向上的角点坐标两两对应,因此得到的第一插值点包括至少三个。插值处理可以采用简单插值算法例如将两个坐标的中点作为插值点,或者具有权重系数的插值算法在两个坐标间确定一个点作为插值点。
在本申请其他实施例中,步骤307可以由以下步骤d11至d18来实现:
步骤d11、对2组横轴方向上的角点坐标进行分类,得到在同一纵轴上的p组两个角点坐标组。
其中,p为大于或者等于3的整数。
在本申请实施例中,示例性的如图5所示,确定得到的两组横轴方向上的角点坐标可以记为(A1,A2,A3)和(B1,B2,B3),对应的,进行分类得到在同一纵轴线上的p组两个角点坐标组为(A1,B1)、(A2,B2)和(A3,B3),对应的p为3。
步骤d12、获取p组两个角点坐标组中的每一两个角点坐标组中的第一横坐标值和第二横坐标值。
在本申请实施例中,以(A1,B1)组两个角点坐标组为例进行说明,第一横坐标记为XA1和第二横坐标值XB1。
步骤d13、计算2个曲率最小的横轴曲线曲率的差值的绝对值与2个曲率最小的横轴曲线曲率的和值的比值,得到第七数值。
在本申请实施例中,假设(A1,A2,A3)为i=1的横轴方向上的角点坐标,(B1,B2,B3)为i=2的横轴方向上的角点坐标,对应的第七数值可以记为
步骤d14、计算第二横坐标值与第一横坐标值的差值与第七数值的乘积,得到第八数值。
在本申请实施例中,第八数值可以记为
步骤d15、计算第八数值与第二横坐标值的和值,得到第一插值点的坐标中的横坐标值。
在本申请实施例中,第一插值点中(A1,B1)组两个角点坐标组对应的插值点的横坐标值可以记为
步骤d16、获取p组两个角点坐标组中的每一两个角点坐标组中的第一纵坐标值和第二纵坐标值。
其中,第二纵坐标值大于第一纵坐标值,第一纵坐标值与第一横坐标值对应,第二纵坐标值与第二横坐标值对应。
在本申请实施例中,(A1,B1)组两个角点坐标组对应的第一纵坐标记为YA1和第二纵坐标值YB1。其中,YB1的值大于YA1。
步骤d17、计算第二纵坐标值与第一纵坐标值的差值与第七数值的乘积,得到第九数值。
在本申请实施例中,第九数值可以记为
步骤d18、计算第九数值与第二纵坐标值的和值,得到第一插值点的坐标中的纵坐标值。
在本申请实施例中,第一插值点中(A1,B1)组两个角点坐标组对应的插值点的纵坐标值可以记为如此,如图5所示,第一插值点包括C1,C2和C3,对应的,C1为(A1,B1)组的插值点,C2为(A2,B2)组的插值点,C3为(A3,B3)组的插值点,这样,即可求得C1,C2和C3的坐标。
步骤308、基于第一插值点的坐标和2组横轴方向上的角点坐标,确定第一目标直线方程。
在本申请实施例中,第一目标直线方程可以记为y=a1x+c1。
在本申请其他实施例中,步骤308可以由以下步骤e11至e18来实现:
步骤e11、基于第一插值点的坐标,计算第一插值点对应的第一曲率。
在本申请实施例中,计算第一插值点对应的第一曲率的公式可以参照步骤a11至a16或步骤b11至b16中曲率计算方法来实现,此处不再详细赘述。
需说明的是,图像校正设备执行步骤e11之后,可以选择执行步骤e12至e17,或者步骤e18;其中,若第一曲率大于第一预设曲率选择执行步骤e12至e17,若第一曲率小于或者等于第一预设曲率选择执行步骤e18:
步骤e12、若第一曲率大于第一预设曲率,则从2组横轴方向上的角点坐标对应的2组横轴曲线曲率和第一曲率中,获取曲率最小的两个第二曲率。
在本申请实施例中,第一预设曲率是一个根据大量实验计算得到的或者根据用户需求进行设置得到经验值,第一预设曲率越趋向于0,表示第一预设曲率代表的曲线越接近经过校正中心的横轴直线。第一预设曲率记为r,对应的比较r,r1,r2三者之间的大小,从中获取曲率值最小的两个曲率,记为第二曲率,假设得到的第二曲率为r和r2。
步骤e13、从2组横轴方向上的角点坐标和第一插值点的坐标中,获取第二曲率对应的2组第一坐标。
在本申请实施例中,对应的获取第二曲率为r和r2对应的2组第一坐标为(C1,C2,C3)和(B1,B2,B3)。
步骤e14、在横轴方向基于2组第一坐标进行插值处理,得到第三插值点的坐标。
其中,第三插值点包括至少三个。
在本申请实施例中,继续基于2组第一坐标为(C1,C2,C3)和(B1,B2,B3)采用步骤d12至d18所描述的方法进行插值处理,从而得到第三插值点的坐标,记为(D1,D2,D3)。
步骤e15、基于第三插值点的坐标,计算第三插值点对应的第三曲率。
步骤e16、若第三曲率大于第一预设曲率,则从2组第一坐标对应的曲率和第三曲率中,获取曲率最小的两个第四曲率。
在本申请实施例中,若第三曲率小于或者等于第一预设曲率,则对第三插值点的坐标进行直线拟合,得到第一目标直线方程。
步骤e17、从2组第一坐标和第三插值点的坐标中,获取第四曲率对应的2组第二坐标,在横轴方向基于2组第二坐标进行插值处理,得到第四插值点的坐标,如此重复循环操作直至得到的第五插值点对应的第五曲率小于或等于第一预设曲率,并基于第五插值点的坐标进行直线拟合,得到第一目标直线方程。
步骤e18、若第一曲率小于或者等于第一预设曲率,则基于第一插值点的坐标进行直线拟合,得到第一目标直线方程。
步骤309、对2组纵轴方向上的角点坐标进行插值处理,得到第二插值点的坐标。
其中,第三预设数量为2,第二插值点包括至少三个。
在本申请其他实施例中,步骤309可以由以下步骤f11至f18来实现:
步骤f11、对2组纵轴方向上的角点坐标进行分类,得到在同一横轴上的q组两个角点坐标组。
其中,q为大于或者等于3的整数。
步骤f12、获取q组两个角点坐标组中的每一两个角点坐标组中的第三横坐标值和第四横坐标值。
步骤f13、计算2个曲率最小的纵轴曲线曲率的差值的绝对值与2个曲率最小的纵轴曲线曲率的和值的比值,得到第十数值。
步骤f14、计算第四横坐标值与第三横坐标值的差值与第十数值的乘积,得到第十一数值。
其中,第四横坐标值大于第三横坐标值。
步骤f15、计算第十一数值与第四横坐标值的和值,得到第二插值点的坐标中的横坐标值。
步骤f16、获取q组两个角点坐标组中的每一两个角点坐标组中的第三纵坐标值和第四纵坐标值。
其中,第三纵坐标值与第三横坐标值对应,第四纵坐标值与第四横坐标值对应。
步骤f17、计算第四纵坐标值与第三纵坐标值的差值与第十数值的乘积,得到第十二数值。
步骤f18、计算第十二数值与第四纵坐标值的和值,得到第二插值点的坐标中的纵坐标值。
步骤310、基于第二插值点的坐标和2组纵轴方向上的角点坐标,确定第二目标直线方程。
在本申请实施例中,第二目标直线方程可以记为y=a2x+c2。
在本申请其他实施例中,步骤310可以由以下步骤g11至g18来实现:
步骤g11、基于第二插值点的坐标,计算第二插值点对应的第六曲率。
需说明的是,图像校正设备执行步骤g11之后,可以选择执行步骤g12至g17,或者步骤g18;其中,若第六曲率大于第二预设曲率选择执行步骤g12至g17,若第六曲率小于或者等于第二预设曲率,选择执行步骤g18:
步骤g12、若第六曲率大于第二预设曲率,则从2组纵轴方向上的角点坐标对应的2组纵轴曲线曲率和第六曲率中,获取曲率最小的两个第七曲率。
步骤g13、从2组纵轴方向上的角点坐标和第二插值点的坐标中,获取第七曲率对应的2组第三坐标。
步骤g14、在纵轴方向基于2组第三坐标进行插值处理,得到第六插值点的坐标。
其中,第六插值点包括至少三个。
步骤g15、基于第六插值点的坐标,计算第二插值点对应的第八曲率。
步骤g16、若第八曲率大于第二预设曲率,则从2组第三坐标对应的曲率和第八曲率中,获取曲率最小的两个第九曲率。
步骤g17、从2组第三坐标和第六插值点的坐标中,获取第九曲率对应的2组第四坐标,在纵轴方向基于2组第四坐标进行插值处理,得到第七插值点的坐标,如此重复循环操作直至得到的第八插值点对应的第十曲率小于或等于第二预设曲率,并基于第八插值点的坐标进行直线拟合,得到第二目标直线方程。
步骤g18、若第六曲率小于或者等于第二预设曲率,则基于第二插值点的坐标进行直线拟合,得到第二目标直线方程。
步骤311、计算第一目标直线方程和第二目标直线方程的交点,得到校正中心的中心坐标。
在本申请实施例中,可以采用公式计算得到校正中心的中心坐标,其中,U表示校正中心的横坐标,V表示校正中心的纵坐标。
步骤312、确定校正中心的中心坐标在标定图像中所属的格子区域,并获取构成格子区域的四个角点的第一目标角点坐标。
在本申请实施例中,如图6所示,校正中心B处位置为校正中心的中心坐标,对应的,图6中的阴影区域D为中心坐标所属的格子区域,对应的D区域的四个角点D1、D2、D3和D4对应的像素坐标为第一目标角点坐标。其中,图6中的校正中心为B、四个角点D1、D2、D3和D4均为一个像素坐标的位置示意。
步骤313、基于校正特性和第一目标角点坐标,得到校正系数。
其中,校正特性包括:四条边相等、相邻边互相垂直、边与经过校正中心的拟合直线平行或垂直。
在本申请实施例中,校正特性又可以称为正方形特性,因为对第一目标角点校正后的四个点可以构成一个正方形,对应的校正特性可以采用以下四个公式算法p1、p2、p3和p4来表示:
/>
其中,(x1,y1)和(x2,y2)在标定图像中的同一横轴上,(x1,y1)和(x2,y2)在标定图像中的同一纵轴上,对应的,Δx1=Δx2=Δx3=Δx,Δy1=Δy2=Δy3=Δy,Δx表示横轴偏移量,Δy表示纵轴偏移量。
在本申请其他实施例中,步骤313可以由以下步骤h11至h16来实现:
步骤h11、从第一目标角点坐标中选取三个角点对应的角点坐标,得到第一角点坐标、第二角点坐标和第三角点坐标。
在本申请实施例中,从图6所示的D1、D2、D3和D4四个角点中获取的三个角点对应的角点坐标分别为:第一坐标点为D1,第二坐标点为D2,第三坐标点为D4,对应的坐标依次为(xD1、yD1)、(xD2、yD2)、(xD3、yD3)和(xD4,yD4)。
步骤h12、基于第一角点坐标、第二角点坐标、第三角点坐标三者之间的位置关系,将第一角点坐标、第二角点坐标、第三角点坐标代入校正特性对应的四个算法中,得到四个目标子算法。
在本申请实施例中,与上述校正特性公式算法对应的,第一坐标点坐标代替四个算法中的(x1,y1),第二坐标点坐标代替四个算法中的(x2,y2),第三坐标点坐标代替算法中的(x3,y3),从而得到四个目标子算法。
步骤h13、将四个目标子算法进行累加后,得到目标算法。
在本申请实施例中,将四个目标子算法进行左右两边各自累加,可以得到目标算法,并将目标算法记为p0=p1+p2+p3+p4。
步骤h14、基于目标算法,得到在目标算法得到最小值时对应的横轴偏移量和纵轴偏移量。
在本申请实施例中,目标算法中p0为因变量,Δx和Δy为未知量,因此可以对目标算法进行求导等处理,得到微分公式后进行最小值为0的计算,从而得到对应的横轴偏移量Δx和纵轴偏移量Δy。
步骤h15、基于横轴偏移量和纵轴偏移量,对第一目标角点坐标进行校正,得到第二目标角点坐标。
在本申请实施例中,第二目标角点坐标为:(xD1+Δx,yD1+Δy)、(xD2+Δx,yD2+Δy)、(xD3+Δx,yD3+Δy)和(xD4+Δx,yD4+Δy)。
在本申请其他实施例中,得到第二目标角点坐标后,还可以基于第二目标角点坐标计算出此局部校正区域的正方形边长其中
(x1 ’ ,y1 ’ ),(x2 ’ ,y2 ’ )为校正后同一轴上相邻的任意两个角点的坐标。以该校正区域为初始区域,以这个四个校正后的角点为起点,步长为l进行外围延伸,从而求出延伸线上的剩余点的坐标。并通过直线连接两个相邻的求出点,从而对标定图像进行校正。
步骤h16、基于中心坐标、第一目标角点坐标中的至少三个角点坐标和对应的第二目标角点坐标中的至少三个角点坐标,以及畸变模型算法,计算得到校正系数。
在本申请实施例中,畸变模型算法可以采用以下公式表示:
其中(XP,YP)为第二目标角点坐标,(Xd,Yd)为第一目标角点坐标,第一目标角点(Xd,Yd)采用上述方法校正后得到第二目标角点坐标(XP,YP)。其中,(k’1,k’2,p’1,p’2)代表校正系数。
步骤314、获取通过图像采集单元采集的待处理图像。
步骤315、将中心坐标、校正系数和待处理图像中每一像素的像素坐标,采用畸变模型算法进行计算,得到校正后的每一像素的像素坐标。
在本申请实施例中,畸变模型算法还可以表示为以下公式:
其中,(Xd,Yd)可以用待处理图像中每一像素的像素坐标进行替代,从而可计算得到对应的校正后的每一像素的像素坐标(XP,YP)。
步骤316、基于校正后的每一像素的像素坐标对待处理图像中对应的每一像素进行校正,得到目标图像,并存储目标图像。
基于前述实施例,本申请实施例提供一种实现上述图像校正方法的图像校正系统,如图7所示,该图像校正系统主要包括包含图像采集模块、校正中心求解模块、校正系数求解模块、图像校正模块、存储模块和图像输出模块,其中:
图像采集模块:用于获取用于标定的黑白棋盘格标定图像和用于进行校正的待处理图像。其中,标定图像和待处理图像可以存储在存储模块中。图像擦剂模块为前述实施例中的图像采集单元。
校正中心求解模块:用于对采集到的标定图像采用曲率插值法进行校正中心的求解,求解过程如下:利用校正中心附近畸变特性小的特性,在标定图像中分别确定2条曲率最小的横轴曲线和2条曲率最小的纵轴曲线,然后采用插值法分别对2条曲率最小的横轴曲线和2条曲率最小的纵轴曲线进行拟合,最终得到近似经过校正中心的横轴直线和纵轴直线,并基于近似经过校正中心的横轴直线和纵轴直线求出校正中心的中心坐标。
校正系数求解模块:用于基于求解出的校正中心的中心坐标对标定图像进行重构,从而计算出该图像校正系统的校正系数。该模块的求解过程如下:基于正方形特性即校正特性对校正中心的中心坐标所在标定图像中的格子局部区域内进行区域校正,得到局部校正区域;然后以局部校正区域为基础对整个标定图像进行重构;最后,结合图像畸变模型即畸变模型算法对重构后的标定图像进行处理求解出校正系数。
图像校正模块:该模块主要是基于图像畸变模型和校正系数,将采集到的待处理图像进行校正,得到无畸变的图像即目标图像。
存储模块:用于存储图像采集模块采集的图像,包括标定图像和校正后的图像,待处理图像可以根据用户的需求进行存储,还用于存储图像畸变模型、和求解出的校正中心的中心坐标和校正系数;
图像输出模块,用于根据用户的需求,对校正得到的目标图像进行输出显示。
其中,计算中心坐标和校正系数的过程在同一系统中可以只需实现一次,或者根据实际需要,随着时间的推移,不断的通过获取标定图像,重新计算中心坐标和校正系数,从而不断的实现对图像校正系统的相关校正参数进行修正。
其中,图像校正系统中各个模块之间的信息交互过程可以如图7所示:图像采集模块采集到标定图像或者待处理图像后,将标定图像或者待处理图像存储至存储模块中;存储模块将标定图像发送至校正中心求解模块,以便于校正中心求解模块基于标定图像进行校正中心的中心坐标进行计算,并将计算得到的中心坐标存储至存储模块中;然后通过存储模块将中心坐标和标定图像发送至校正系数求解模块,然后校正系数求解模块基于中心坐标和标定图像进行计算处理,得到校正系数,并将校正系数存储至存储模块中;存储模块将校正系数、校正中心和待处理图像发送至图像校正模块,然后图像校正模块对校正系数和校正中心的中心坐标对待处理图像进行校正处理,得到目标图像,并将目标图像发送至存储模块中进行存储;在图像显示模块需要显示目标图像时,图像显示模块从存储模块中获取对应的目标图像进行显示。
图像校正系统中各个模块之间的信息交互过程还可以如图8所示:图像采集模块采集到标定图像或者待处理图像后,将标定图像或者待处理图像存储至存储模块的同时,图像采集模块将标定图像发送至校正中心求解模块;校正中心求解模块基于标定图像进行校正中心的中心坐标进行计算,并将计算得到的中心坐标存储至存储模块的同时,将中心坐标和标定图像发送至校正系数求解模块;校正系数求解模块基于中心坐标和标定图像进行计算处理,得到校正系数,并将校正系数存储至存储模块同时,将校正系数和校正中心的中心坐标发送至图像校正模块,同时图像校正模块接收图像采集模块发送的待处理图像,或者图像校正模块从存储模块中获取待处理图像,然后图像校正模块对校正系数和校正中心对待处理图像进行校正处理,得到目标图像,并将目标图像存储至存储模块,同时发送至图像显示模块进行显示,或者在图像显示模块需要显示目标图像时,图像显示模块从存储模块中获取对应的目标图像进行显示。
需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。
本申请实施例提供了一种图像校正方法,通过图像采集单元对预设拍摄对象进行图像采集,得到标定图像,并对标定图像进行计算处理,确定校正中心的中心坐标和校正系数,然后基于中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像。这样,对包括棋盘格的标定图像进行处理,独立计算得到校正中心的中心坐标和校正系数后,中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到目标图像,解决了目前采用的校正方法校正后的图像质量较差的问题,实现了求解校正中心参数和校正系数,降低了耦合误差,提高了校正图像质量。
基于前述实施例,本申请的实施例提供一种图像校正装置,该装置可以应用于图1~3对应的实施例提供的图像校正方法中,参照图9所示,该图像校正装置4可以包括:图像采集单元41、处理单元42和校正单元43,其中:
图像采集单元41,用于对预设拍摄对象进行图像采集,得到标定图像;其中,预设拍摄对象为棋盘格图像;
处理单元42,用于对标定图像进行计算处理,确定校正中心的中心坐标和校正系数,并存储中心坐标和校正系数;
图像采集单元41,还用于采集待处理图像;
校正单元43,用于基于中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像。
在本申请其他实施例中,处理单元包括:第一处理模块、分类模块、第一确定模块、第二确定模块和第三确定模块;其中:
第一处理模块,用于在标定图像中确定第一预设数量个第一目标角点,并提取第一预设数量个第一目标角点的角点坐标;其中,第一目标角点为标定图像中相邻格子相交的交点,第一预设数量大于或等于8;
分类模块,用于对第一预设数量个第一目标角点的角点坐标进行分类,得到m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标;其中,m和n均为大于或等于2的正整数,每一组横轴方向上的角点坐标至少包括三个,每一组纵轴方向上的角点坐标至少包括三个;
第一确定模块,用于基于m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标,分别确定第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标;其中,第二预设数量大于或者等于2,第三预设数量大于或者等于2;
第二确定模块,用于基于第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标,确定校正中心的中心坐标;
第三确定模块,用于基于校正中心的中心坐标,确定校正系数。
在本申请其他实施例中,第一确定模块具体用于实现以下步骤:
基于m组横轴方向上的角点坐标,分别计算每一组横轴方向上的角点坐标对应的横轴曲线的曲率,得到m个横轴曲线曲率;
基于n组纵轴方向上的角点坐标,分别计算每一组纵轴方向上的角点坐标对应的纵轴曲线的曲率,得到n个纵轴曲线曲率;
基于m个横轴曲线曲率和m组横轴方向上的角点坐标,确定第二预设数量组横轴方向上的角点坐标,并基于n个纵轴曲线曲率和n组横轴方向上的角点坐标,确定第三预设数量组纵轴方向上的角点坐标;其中,第二预设数量大于或者等于2,第三预设数量大于或者等于2。
在本申请其他实施例中,第一确定模块具体用于实现步骤基于m组横轴方向上的角点坐标,分别计算每一组横轴方向上的角点坐标对应的横轴曲线的曲率,得到m个横轴曲线曲率时,具体通过以下步骤来实现:
基于m组横轴方向上的角点坐标,分别对每一组横轴方向上的角点坐标进行直线拟合,得到每一组横轴方向上的角点坐标对应直线的第一直线方程;
获取第一直线方程的第一斜率和第一截距;
计算每一组横轴方向上的每一角点坐标的横坐标与第一斜率的乘积,得到第一数值;其中,每一组横轴方向上的每一角点坐标的横坐标与第一斜率具有对应关系;
计算每一组横轴方向上的每一角点坐标的纵坐标减去第一数值和第一截距,得到第二数值;其中,纵坐标与计算得到第一数值的横坐标对应;
计算第二数值的平方,得到第三数值;
计算每一组横轴方向上的角点坐标对应的第三数值的累加和后计算平均值,得到m个横轴曲线曲率。
在本申请其他实施例中,第一确定模块具体用于实现步骤基于n组纵轴方向上的角点坐标,分别计算每一组纵轴方向上的角点坐标对应的纵轴曲线的曲率,得到n个纵轴曲线曲率时,具体通过以下步骤来实现:
基于n组纵轴方向上的角点坐标,分别对每一组纵轴方向上的角点坐标进行直线拟合,得到每一组纵轴方向上的角点坐标对应直线的第二直线方程;
获取第二直线方程的第二斜率和第二截距;
计算每一组纵轴方向上的每一角点坐标的横坐标与第二斜率的乘积,得到第四数值;其中,每一纵轴方向上的每一角点坐标的横坐标与第二斜率具有对应关系;
计算每一组纵轴方向上的每一角点坐标的纵坐标减去第四数值和第二截距,得到第五数值;其中,纵坐标与计算得到第四数值的横坐标对应;
计算第五数值的平方,得到第六数值;
计算每一组纵轴方向上的角点坐标对应的第六数值的累加和后计算平均值,得到n个纵轴曲线曲率。
在本申请其他实施例中,第一确定模块具体用于实现步骤基于m个横轴曲线曲率和m组横轴方向上的角点坐标,确定第二预设数量组横轴方向上的角点坐标,并基于n个纵轴曲线曲率和n组横轴方向上的角点坐标,确定第三预设数量组纵轴方向上的角点坐标时,具体通过以下步骤来实现:
从m个横轴曲线曲率中,获取第二预设数量个曲率最小的横轴曲线曲率;
从m组横轴方向上的角点坐标中,获取与第二预设数量个曲率最小的横轴曲线曲率对应的第二预设数量组横轴方向上的角点坐标;
从n个纵轴曲线曲率中,获取第三预设数量个曲率最小的纵轴曲线曲率;
从n组横轴方向上的角点坐标中,获取与第三预设数量个曲率最小的纵轴曲线曲率对应的第三预设数量组纵轴方向上的角点坐标。
在本申请其他实施例中,第二确定模块具体用于实现以下步骤:
对2组横轴方向上的角点坐标进行插值处理,得到第一插值点的坐标;其中,第二预设数量为2,第一插值点包括至少三个;
基于第一插值点的坐标和2组横轴方向上的角点坐标,确定第一目标直线方程;
对2组纵轴方向上的角点坐标进行插值处理,得到第二插值点的坐标;其中,第三预设数量为2,第二插值点包括至少三个;
基于第二插值点的坐标和2组纵轴方向上的角点坐标,确定第二目标直线方程;
计算第一目标直线方程和第二目标直线方程的交点,得到校正中心的中心坐标。
在本申请其他实施例中,第二确定模块具体用于实现步骤对2组横轴方向上的角点坐标进行插值处理,得到第一插值点的坐标时,具体通过以下步骤来实现:
对2组横轴方向上的角点坐标进行分类,得到在同一纵轴上的p组两个角点坐标组;其中,p为大于或者等于3的整数;
获取p组两个角点坐标组中的每一两个角点坐标组中的第一横坐标值和第二横坐标值;
计算2个曲率最小的横轴曲线曲率的差值的绝对值与2个曲率最小的横轴曲线曲率的和值的比值,得到第七数值;
计算第二横坐标值与第一横坐标值的差值与第七数值的乘积,得到第八数值;
计算第八数值与第二横坐标值的和值,得到第一插值点的坐标中的横坐标值;
获取p组两个角点坐标组中的每一两个角点坐标组中的第一纵坐标值和第二纵坐标值;其中,第二纵坐标值大于第一纵坐标值,第一纵坐标值与第一横坐标值对应,第二纵坐标值与第二横坐标值对应;
计算第二纵坐标值与第一纵坐标值的差值与第七数值的乘积,得到第九数值;
计算第九数值与第二纵坐标值的和值,得到第一插值点的坐标中的纵坐标值。
在本申请其他实施例中,第二确定模块具体用于实现步骤基于第一插值点的坐标和2组横轴方向上的角点坐标,确定第一目标直线方程时,具体通过以下步骤来实现:
基于第一插值点的坐标,计算第一插值点对应的第一曲率;
若第一曲率大于第一预设曲率,则从2组横轴方向上的角点坐标对应的2组横轴曲线曲率和第一曲率中,获取曲率最小的两个第二曲率;
从2组横轴方向上的角点坐标和第一插值点的坐标中,获取第二曲率对应的2组第一坐标;
在横轴方向基于2组第一坐标进行插值处理,得到第三插值点的坐标;其中,第三插值点包括至少三个;
基于第三插值点的坐标,计算第三插值点对应的第三曲率;
若第三曲率大于第一预设曲率,则从2组第一坐标对应的曲率和第三曲率中,获取曲率最小的两个第四曲率;
从2组第一坐标和第三插值点的坐标中,获取第四曲率对应的2组第二坐标,在横轴方向基于2组第二坐标进行插值处理,得到第四插值点的坐标,如此重复循环操作直至得到的第五插值点对应的第五曲率小于或等于第一预设曲率,并基于第五插值点的坐标进行直线拟合,得到第一目标直线方程;
若第一曲率小于或者等于第一预设曲率,则基于第一插值点的坐标进行直线拟合,得到第一目标直线方程。
在本申请其他实施例中,第二确定模块具体用于实现步骤对2组纵轴方向上的角点坐标进行插值处理,得到第二插值点的坐标时,具体通过以下步骤来实现:
对2组纵轴方向上的角点坐标进行分类,得到在同一横轴上的q组两个角点坐标组;其中,q为大于或者等于3的整数;
获取q组两个角点坐标组中的每一两个角点坐标组中的第三横坐标值和第四横坐标值;
计算2个曲率最小的纵轴曲线曲率的差值的绝对值与2个曲率最小的纵轴曲线曲率的和值的比值,得到第十数值;
计算第四横坐标值与第三横坐标值的差值与第十数值的乘积,得到第十一数值;其中,第四横坐标值大于第三横坐标值;
计算第十一数值与第四横坐标值的和值,得到第二插值点的坐标中的横坐标值;
获取q组两个角点坐标组中的每一两个角点坐标组中的第三纵坐标值和第四纵坐标值;其中,第三纵坐标值与第三横坐标值对应,第四纵坐标值与第四横坐标值对应;
计算第四纵坐标值与第三纵坐标值的差值与第十数值的乘积,得到第十二数值;
计算第十二数值与第四纵坐标值的和值,得到第二插值点的坐标中的纵坐标值。
在本申请其他实施例中,第二确定模块具体用于实现步骤基于第二插值点的坐标和2组纵轴方向上的角点坐标,确定第二目标直线方程时,具体通过以下步骤来实现:
基于第二插值点的坐标,计算第二插值点对应的第六曲率;
若第六曲率大于第二预设曲率,则从2组纵轴方向上的角点坐标对应的2组纵轴曲线曲率和第六曲率中,获取曲率最小的两个第七曲率;
从2组纵轴方向上的角点坐标和第二插值点的坐标中,获取第七曲率对应的2组第三坐标;
在纵轴方向基于2组第三坐标进行插值处理,得到第六插值点的坐标;其中,第六插值点包括至少三个;
基于第六插值点的坐标,计算第二插值点对应的第八曲率;
若第八曲率大于第二预设曲率,则从2组第三坐标对应的曲率和第八曲率中,获取曲率最小的两个第九曲率;
从2组第三坐标和第六插值点的坐标中,获取第九曲率对应的2组第四坐标,在纵轴方向基于2组第四坐标进行插值处理,得到第七插值点的坐标,如此重复循环操作直至得到的第八插值点对应的第十曲率小于或等于第二预设曲率,并基于第八插值点的坐标进行直线拟合,得到第二目标直线方程;
若第六曲率小于或者等于第二预设曲率,则基于第二插值点的坐标进行直线拟合,得到第二目标直线方程。
在本申请其他实施例中,第三确定模块具体用于实现以下步骤:
确定校正中心的中心坐标在标定图像中所属的格子区域,并获取构成格子区域的四个角点的第一目标角点坐标;
基于校正特性和第一目标角点坐标,得到校正系数。
在本申请其他实施例中,校正特性包括:四条边相等、相邻边互相垂直、边与经过校正中心的拟合直线平行或垂直;第三确定模块具体用于实现步骤基于校正特性和目标角点坐标,得到校正系数时,具体通过以下步骤来实现:
从第一目标角点坐标中选取三个角点对应的角点坐标,得到第一角点坐标、第二角点坐标和第三角点坐标;
基于第一角点坐标、第二角点坐标、第三角点坐标三者之间的位置关系,将第一角点坐标、第二角点坐标、第三角点坐标代入校正特性对应的四个算法中,得到四个目标子算法;
将四个目标子算法进行累加后,得到目标算法;
基于目标算法,得到在目标算法得到最小值时对应的横轴偏移量和纵轴偏移量;
基于横轴偏移量和纵轴偏移量,对第一目标角点坐标进行校正,得到第二目标角点坐标;
基于中心坐标、第一目标角点坐标中的至少三个角点坐标和对应的第二目标角点坐标中的至少三个角点坐标,以及畸变模型算法,计算得到校正系数。
在本申请其他实施例中,校正单元包括:计算模块和处理模块;其中:
计算模块,用于将中心坐标、校正系数和待处理图像中每一像素的像素坐标,采用畸变模型算法进行计算,得到校正后的每一像素的像素坐标;
处理模块,用于基于校正后的每一像素的像素坐标对待处理图像中对应的每一像素进行校正,得到目标图像。
需要说明的是,本实施例中图像校正装置所执行的步骤的具体实现过程,可以参照图1~3对应的实施例提供的图像校正方法中的实现过程,此处不再赘述。
本申请实施例提供了一种图像校正装置,通过图像采集单元对预设拍摄对象进行图像采集,得到标定图像,并对标定图像进行计算处理,确定校正中心的中心坐标和校正系数,然后基于中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像。这样,对包括棋盘格的标定图像进行处理,独立计算得到校正中心的中心坐标和校正系数后,中心坐标和校正系数,对待处理图像中每一像素的像素坐标进行校正,得到目标图像,解决了目前采用的校正方法校正后的图像质量较差的问题,实现了求解校正中心参数和校正系数,降低了耦合误差,提高了校正图像质量。
基于前述实施例,本申请的实施例提供一种图像校正设备,该图像校正设备可以应用于图1~3对应的实施例提供的图像校正方法中,参照图10所示,该图像校正设备5可以包括:处理器51、存储器52、通信总线53和图像采集器54,其中:
图像采集器54,用于对预设拍摄对象进行图像采集,得到标定图像;其中,标定图像为棋盘格图像;
通信总线53,用于实现处理器51、存储器52和图像采集器54之间的通信连接;
处理器51,用于执行存储器52中存储的图像校正程序,以实现图1~3对应的实施例提供的图像校正方法中的实现过程,此处不再赘述。
基于前述实施例,本申请的实施例提供一种计算机可读存储介质,简称为存储介质,该计算机可读存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现参照图1~3对应的实施例提供的图像校正方法中的实现过程,此处不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
Claims (16)
1.一种图像校正方法,其特征在于,所述方法应用于图像校正设备,所述图像校正设备包括图像采集单元,所述方法包括:
通过所述图像采集单元对预设拍摄对象进行图像采集,得到标定图像;其中,所述标定图像为棋盘格图像;
对所述标定图像进行计算处理,确定校正中心的中心坐标和校正系数;
基于所述中心坐标和所述校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像;其中,所述待处理图像是所述图像采集单元采集到的;
其中,所述对所述标定图像进行处理,确定校正中心的中心坐标和校正系数,包括:
在所述标定图像中确定第一预设数量个第一目标角点,并提取所述第一预设数量个第一目标角点的角点坐标;其中,所述第一目标角点为所述标定图像中相邻格子相交的交点;
对所述第一预设数量个第一目标角点的角点坐标进行分类,得到m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标;其中,m和n均为大于或等于2的正整数,每一组横轴方向上的角点坐标至少包括三个,每一组纵轴方向上的角点坐标至少包括三个;
基于所述m组横轴方向上的角点坐标和所述n组纵轴方向上的角点坐标,分别确定第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标;其中,所述第二预设数量大于或者等于2,所述第三预设数量大于或者等于2;
基于所述第二预设数量组横轴方向上的角点坐标和所述第三预设数量组纵轴方向上的角点坐标,确定所述校正中心的中心坐标;
基于所述校正中心的中心坐标,确定所述校正系数。
2.根据权利要求1所述的方法,其特征在于,所述基于所述m组横轴方向上的角点坐标和所述n组纵轴方向上的角点坐标,分别确定第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标,包括:
基于所述m组横轴方向上的角点坐标,分别计算每一组横轴方向上的角点坐标对应的横轴曲线的曲率,得到m个横轴曲线曲率;
基于所述n组纵轴方向上的角点坐标,分别计算每一组纵轴方向上的角点坐标对应的纵轴曲线的曲率,得到n个纵轴曲线曲率;
基于所述m个横轴曲线曲率和所述m组横轴方向上的角点坐标,确定所述第二预设数量组横轴方向上的角点坐标,并基于所述n个纵轴曲线曲率和所述n组纵轴方向上的角点坐标,确定所述第三预设数量组纵轴方向上的角点坐标。
3.根据权利要求2所述的方法,其特征在于,所述基于所述m组横轴方向上的角点坐标,分别计算每一组横轴方向上的角点坐标对应的横轴曲线的曲率,得到m个横轴曲线曲率,包括:
基于所述m组横轴方向上的角点坐标,分别对每一组横轴方向上的角点坐标进行直线拟合,得到每一组横轴方向上的角点坐标对应直线的第一直线方程;
获取所述第一直线方程的第一斜率和第一截距;
计算每一组横轴方向上的每一角点坐标的横坐标与所述第一斜率的乘积,得到第一数值;其中,所述每一组横轴方向上的每一角点坐标的横坐标与所述第一斜率具有对应关系;
计算每一组横轴方向上的每一角点坐标的纵坐标减去所述第一数值和所述第一截距,得到第二数值;其中,所述纵坐标与计算得到所述第一数值的横坐标对应;
计算所述第二数值的平方,得到第三数值;
计算所述每一组横轴方向上的角点坐标对应的第三数值的累加和后计算平均值,得到所述m个横轴曲线曲率。
4.根据权利要求2所述的方法,其特征在于,所述基于所述n组纵轴方向上的角点坐标,分别计算每一组纵轴方向上的角点坐标对应的纵轴曲线的曲率,得到n个纵轴曲线曲率,包括:
基于所述n组纵轴方向上的角点坐标,分别对每一组纵轴方向上的角点坐标进行直线拟合,得到每一组纵轴方向上的角点坐标对应直线的第二直线方程;
获取所述第二直线方程的第二斜率和第二截距;
计算每一组纵轴方向上的每一角点坐标的横坐标与所述第二斜率的乘积,得到第四数值;其中,所述每一组纵轴方向上的每一角点坐标的横坐标与所述第二斜率具有对应关系;
计算每一组纵轴方向上的每一角点坐标的纵坐标减去所述第四数值和所述第二截距,得到第五数值;其中,所述纵坐标与计算得到所述第四数值的横坐标对应;
计算所述第五数值的平方,得到第六数值;
计算所述每一组纵轴方向上的角点坐标对应的所述第六数值的累加和后计算平均值,得到所述n个纵轴曲线曲率。
5.根据权利要求2所述的方法,其特征在于,所述基于所述m个横轴曲线曲率和所述m组横轴方向上的角点坐标,确定所述第二预设数量组横轴方向上的角点坐标,并基于所述n个纵轴曲线曲率和所述n组纵轴方向上的角点坐标,确定所述第三预设数量组纵轴方向上的角点坐标,包括:
从所述m个横轴曲线曲率中,获取第二预设数量个曲率最小的横轴曲线曲率;
从所述m组横轴方向上的角点坐标中,获取与所述第二预设数量个曲率最小的横轴曲线曲率对应的所述第二预设数量组横轴方向上的角点坐标;
从所述n个纵轴曲线曲率中,获取第三预设数量个曲率最小的纵轴曲线曲率;
从所述n组纵轴方向上的角点坐标中,获取与所述第三预设数量个曲率最小的纵轴曲线曲率对应的所述第三预设数量组纵轴方向上的角点坐标。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第二预设数量组横轴方向上的角点坐标和所述第三预设数量组纵轴方向上的角点坐标,确定所述校正中心的中心坐标,包括:
对2组横轴方向上的角点坐标进行插值处理,得到第一插值点的坐标;其中,所述第二预设数量为2,所述第一插值点包括至少三个;
基于所述第一插值点的坐标和所述2组横轴方向上的角点坐标,确定第一目标直线方程;
对2组纵轴方向上的角点坐标进行插值处理,得到第二插值点的坐标;其中,所述第三预设数量为2,所述第二插值点包括至少三个;
基于所述第二插值点的坐标和所述2组纵轴方向上的角点坐标,确定第二目标直线方程;
计算所述第一目标直线方程和所述第二目标直线方程的交点,得到所述校正中心的中心坐标。
7.根据权利要求6所述的方法,其特征在于,所述对2组横轴方向上的角点坐标进行插值处理,得到第一插值点的坐标,包括:
对所述2组横轴方向上的角点坐标进行分类,得到在同一纵轴上的p组两个角点坐标组;其中,p为大于或者等于3的整数;
获取所述p组两个角点坐标组中的每一两个角点坐标组中的第一横坐标值和第二横坐标值;
计算2个曲率最小的横轴曲线曲率的差值的绝对值与所述2个曲率最小的横轴曲线曲率的和值的比值,得到第七数值;
计算所述第二横坐标值与所述第一横坐标值的差值与所述第七数值的乘积,得到第八数值;
计算所述第八数值与所述第二横坐标值的和值,得到所述第一插值点的坐标中的横坐标值;
获取所述p组两个角点坐标组中的每一两个角点坐标组中的第一纵坐标值和第二纵坐标值;其中,所述第二纵坐标值大于所述第一纵坐标值,所述第一纵坐标值与所述第一横坐标值对应,所述第二纵坐标值与所述第二横坐标值对应;
计算所述第二纵坐标值与所述第一纵坐标值的差值与所述第七数值的乘积,得到第九数值;
计算所述第九数值与所述第二纵坐标值的和值,得到所述第一插值点的坐标中的纵坐标值。
8.根据权利要求6或7所述的方法,其特征在于,所述基于所述第一插值点的坐标和所述2组横轴方向上的角点坐标,确定第一目标直线方程,包括:
基于所述第一插值点的坐标,计算所述第一插值点对应的第一曲率;
若所述第一曲率大于第一预设曲率,则从所述2组横轴方向上的角点坐标对应的2组横轴曲线曲率和所述第一曲率中,获取曲率最小的两个第二曲率;
从所述2组横轴方向上的角点坐标和所述第一插值点的坐标中,获取所述第二曲率对应的2组第一坐标;
在横轴方向基于所述2组第一坐标进行插值处理,得到第三插值点的坐标;其中,所述第三插值点包括至少三个;
基于所述第三插值点的坐标,计算所述第三插值点对应的第三曲率;
若所述第三曲率大于所述第一预设曲率,则从所述2组第一坐标对应的曲率和所述第三曲率中,获取曲率最小的两个第四曲率;
从所述2组第一坐标和所述第三插值点的坐标中,获取所述第四曲率对应的2组第二坐标,在横轴方向基于所述2组第二坐标进行插值处理,得到第四插值点的坐标,如此重复循环操作直至得到的第五插值点对应的第五曲率小于或等于所述第一预设曲率,并基于所述第五插值点的坐标进行直线拟合,得到所述第一目标直线方程;
若所述第一曲率小于或者等于所述第一预设曲率,则基于所述第一插值点的坐标进行直线拟合,得到所述第一目标直线方程。
9.根据权利要求6所述的方法,其特征在于,所述对2组纵轴方向上的角点坐标进行插值处理,得到第二插值点的坐标,包括:
对所述2组纵轴方向上的角点坐标进行分类,得到在同一横轴上的q组两个角点坐标组;其中,q为大于或者等于3的整数;
获取所述q组两个角点坐标组中的每一两个角点坐标组中的第三横坐标值和第四横坐标值;
计算2个曲率最小的纵轴曲线曲率的差值的绝对值与所述2个曲率最小的纵轴曲线曲率的和值的比值,得到第十数值;
计算所述第四横坐标值与所述第三横坐标值的差值与所述第十数值的乘积,得到第十一数值;其中,所述第四横坐标值大于所述第三横坐标值;
计算所述第十一数值与所述第四横坐标值的和值,得到所述第二插值点的坐标中的横坐标值;
获取所述q组两个角点坐标组中的每一两个角点坐标组中的第三纵坐标值和第四纵坐标值;其中,所述第三纵坐标值与所述第三横坐标值对应,所述第四纵坐标值与所述第四横坐标值对应;
计算所述第四纵坐标值与所述第三纵坐标值的差值与所述第十数值的乘积,得到第十二数值;
计算所述第十二数值与所述第四纵坐标值的和值,得到所述第二插值点的坐标中的纵坐标值。
10.根据权利要求6或9所述的方法,其特征在于,所述基于所述第二插值点的坐标和所述2组纵轴方向上的角点坐标,确定第二目标直线方程,包括:
基于所述第二插值点的坐标,计算所述第二插值点对应的第六曲率;
若所述第六曲率大于第二预设曲率,则从所述2组纵轴方向上的角点坐标对应的2组纵轴曲线曲率和所述第六曲率中,获取曲率最小的两个第七曲率;
从所述2组纵轴方向上的角点坐标和所述第二插值点的坐标中,获取所述第七曲率对应的2组第三坐标;
在纵轴方向基于所述2组第三坐标进行插值处理,得到第六插值点的坐标;其中,所述第六插值点包括至少三个;
基于所述第六插值点的坐标,计算所述第二插值点对应的第八曲率;
若所述第八曲率大于所述第二预设曲率,则从所述2组第三坐标对应的曲率和所述第八曲率中,获取曲率最小的两个第九曲率;
从所述2组第三坐标和所述第六插值点的坐标中,获取所述第九曲率对应的2组第四坐标,在纵轴方向基于所述2组第四坐标进行插值处理,得到第七插值点的坐标,如此重复循环操作直至得到的第八插值点对应的第十曲率小于或等于所述第二预设曲率,并基于所述第八插值点的坐标进行直线拟合,得到所述第二目标直线方程;
若所述第六曲率小于或者等于所述第二预设曲率,则基于所述第二插值点的坐标进行直线拟合,得到所述第二目标直线方程。
11.根据权利要求6所述的方法,其特征在于,所述基于所述校正中心的中心坐标,确定所述校正系数,包括:
确定所述校正中心的中心坐标在所述标定图像中所属的格子区域,并获取构成所述格子区域的四个角点的第一目标角点坐标;
基于校正特性和所述第一目标角点坐标,得到所述校正系数。
12.根据权利要求11所述的方法,其特征在于,所述校正特性包括:四条边相等、相邻边互相垂直、边与经过校正中心的拟合直线平行或垂直;所述基于校正特性和所述目标角点坐标,得到所述校正系数,包括:
从所述第一目标角点坐标中选取三个角点对应的角点坐标,得到第一角点坐标、第二角点坐标和第三角点坐标;
基于所述第一角点坐标、所述第二角点坐标、所述第三角点坐标三者之间的位置关系,将所述第一角点坐标、所述第二角点坐标、所述第三角点坐标代入所述校正特性对应的四个算法中,得到四个目标子算法;
将所述四个目标子算法进行累加后,得到目标算法;
基于所述目标算法,得到在所述目标算法得到最小值时对应的横轴偏移量和纵轴偏移量;
基于所述横轴偏移量和所述纵轴偏移量,对所述第一目标角点坐标进行校正,得到第二目标角点坐标;
基于所述中心坐标、所述第一目标角点坐标中的至少三个角点坐标和对应的所述第二目标角点坐标中的至少三个角点坐标,以及畸变模型算法,计算得到所述校正系数。
13.根据权利要求1所述的方法,其特征在于,所述基于所述中心坐标和所述校正系数,对所述待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像,并存储所述目标图像,包括:
将所述中心坐标、所述校正系数和所述待处理图像中每一像素的像素坐标,采用畸变模型算法进行计算,得到校正后的每一像素的像素坐标;
基于所述校正后的每一像素的像素坐标对所述待处理图像中对应的每一像素进行校正,得到所述目标图像,并存储所述目标图像。
14.一种图像校正装置,其特征在于,所述装置包括:图像采集单元、处理单元和校正单元;其中:
所述图像采集单元,用于对预设拍摄对象进行图像采集,得到标定图像;其中,所述预设拍摄对象为棋盘格图像;
所述处理单元,用于对所述标定图像进行处理,确定校正中心的中心坐标和校正系数;
所述图像采集单元,还用于采集待处理图像;
所述校正单元,用于基于所述中心坐标和所述校正系数,对所述待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像,并存储所述目标图像;
其中,所述对所述标定图像进行处理,确定校正中心的中心坐标和校正系数,包括:
在所述标定图像中确定第一预设数量个第一目标角点,并提取所述第一预设数量个第一目标角点的角点坐标;其中,所述第一目标角点为所述标定图像中相邻格子相交的交点;
对所述第一预设数量个第一目标角点的角点坐标进行分类,得到m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标;其中,m和n均为大于或等于2的正整数,每一组横轴方向上的角点坐标至少包括三个,每一组纵轴方向上的角点坐标至少包括三个;
基于所述m组横轴方向上的角点坐标和所述n组纵轴方向上的角点坐标,分别确定第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标;其中,所述第二预设数量大于或者等于2,所述第三预设数量大于或者等于2;
基于所述第二预设数量组横轴方向上的角点坐标和所述第三预设数量组纵轴方向上的角点坐标,确定所述校正中心的中心坐标;
基于所述校正中心的中心坐标,确定所述校正系数。
15.一种图像校正设备,其特征在于,所述设备包括图像采集器、存储器、处理器和通信总线;其中:
图像采集器,用于对预设拍摄对象进行图像采集,得到标定图像;其中,所述标定图像为棋盘格图像;
所述通信总线,用于实现所述处理器、所述存储器和所述图像采集器之间的通信连接;
所述处理器,用于对所述标定图像进行计算处理,确定校正中心的中心坐标和校正系数;基于所述中心坐标和所述校正系数,对待处理图像中每一像素的像素坐标进行校正,得到校正处理后的目标图像;其中,所述待处理图像是所述图像采集器采集到的;
其中,所述对所述标定图像进行处理,确定校正中心的中心坐标和校正系数,包括:
在所述标定图像中确定第一预设数量个第一目标角点,并提取所述第一预设数量个第一目标角点的角点坐标;其中,所述第一目标角点为所述标定图像中相邻格子相交的交点;
对所述第一预设数量个第一目标角点的角点坐标进行分类,得到m组横轴方向上的角点坐标和n组纵轴方向上的角点坐标;其中,m和n均为大于或等于2的正整数,每一组横轴方向上的角点坐标至少包括三个,每一组纵轴方向上的角点坐标至少包括三个;
基于所述m组横轴方向上的角点坐标和所述n组纵轴方向上的角点坐标,分别确定第二预设数量组横轴方向上的角点坐标和第三预设数量组纵轴方向上的角点坐标;其中,所述第二预设数量大于或者等于2,所述第三预设数量大于或者等于2;
基于所述第二预设数量组横轴方向上的角点坐标和所述第三预设数量组纵轴方向上的角点坐标,确定所述校正中心的中心坐标;
基于所述校正中心的中心坐标,确定所述校正系数。
16.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至13中任一项所述的图像校正方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010562132.9A CN113822937B (zh) | 2020-06-18 | 2020-06-18 | 一种图像校正方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010562132.9A CN113822937B (zh) | 2020-06-18 | 2020-06-18 | 一种图像校正方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113822937A CN113822937A (zh) | 2021-12-21 |
CN113822937B true CN113822937B (zh) | 2024-01-26 |
Family
ID=78924385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010562132.9A Active CN113822937B (zh) | 2020-06-18 | 2020-06-18 | 一种图像校正方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113822937B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116228773B (zh) * | 2023-05-09 | 2023-08-04 | 华芯程(杭州)科技有限公司 | 一种晶圆检测机台的量测数据校准方法、装置及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106815823A (zh) * | 2017-02-22 | 2017-06-09 | 广东工业大学 | 一种透镜畸变标定校正方法及其装置 |
CN107871329A (zh) * | 2017-12-18 | 2018-04-03 | 横琴峰云视觉技术有限公司 | 一种相机光学中心的快速标定方法及装置 |
CN110276800A (zh) * | 2019-06-18 | 2019-09-24 | 北京影谱科技股份有限公司 | 用于图像光线方向的识别方法及系统、计算机设备、介质 |
CN110738707A (zh) * | 2019-10-16 | 2020-01-31 | 北京华捷艾米科技有限公司 | 一种相机的畸变校正方法及装置、设备、存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7204346B2 (ja) * | 2018-06-05 | 2023-01-16 | キヤノン株式会社 | 情報処理装置、システム、情報処理方法及びプログラム |
-
2020
- 2020-06-18 CN CN202010562132.9A patent/CN113822937B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106815823A (zh) * | 2017-02-22 | 2017-06-09 | 广东工业大学 | 一种透镜畸变标定校正方法及其装置 |
CN107871329A (zh) * | 2017-12-18 | 2018-04-03 | 横琴峰云视觉技术有限公司 | 一种相机光学中心的快速标定方法及装置 |
CN110276800A (zh) * | 2019-06-18 | 2019-09-24 | 北京影谱科技股份有限公司 | 用于图像光线方向的识别方法及系统、计算机设备、介质 |
CN110738707A (zh) * | 2019-10-16 | 2020-01-31 | 北京华捷艾米科技有限公司 | 一种相机的畸变校正方法及装置、设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113822937A (zh) | 2021-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110363858B (zh) | 一种三维人脸重建方法及系统 | |
US11012620B2 (en) | Panoramic image generation method and device | |
CN110276734B (zh) | 图像畸变校正方法和装置 | |
US20190098278A1 (en) | Image processing apparatus, image processing method, and storage medium | |
CN110458932B (zh) | 图像处理方法、装置、系统、存储介质和图像扫描设备 | |
US10255665B2 (en) | Image processing device and method, image capturing device, program, and record medium | |
US9025862B2 (en) | Range image pixel matching method | |
CN111008947B (zh) | 图像处理方法和装置、终端设备及存储介质 | |
CN111199518B (zh) | Vr设备的图像呈现方法、装置、设备和计算机存储介质 | |
CN106991650A (zh) | 一种图像去模糊的方法和装置 | |
KR20110014067A (ko) | 스테레오 컨텐트의 변환 방법 및 시스템 | |
CN110866882B (zh) | 基于深度置信度的分层联合双边滤波深度图修复方法 | |
Liu et al. | Shape-optimizing and illumination-smoothing image stitching | |
WO2014002521A1 (ja) | 画像処理装置及び画像処理方法 | |
WO2021232965A1 (zh) | 视频去噪方法、装置、移动终端和存储介质 | |
CN111489322A (zh) | 给静态图片加天空滤镜的方法及装置 | |
CN114862725B (zh) | 基于光流法实现运动感知模糊特效的方法及装置 | |
CN108550167B (zh) | 深度图像生成方法、装置及电子设备 | |
CN113822937B (zh) | 一种图像校正方法、装置、设备及存储介质 | |
TWI608447B (zh) | 立體影像深度圖產生裝置及方法 | |
KR101465607B1 (ko) | 어안 렌즈용 왜곡 영상 처리 방법 | |
KR20120020821A (ko) | 영상 왜곡 보정 장치 및 방법 | |
CN114640885A (zh) | 视频插帧方法、训练方法、装置和电子设备 | |
WO2012176526A1 (ja) | 立体画像処理装置、立体画像処理方法、及びプログラム | |
CN113283543B (zh) | 一种基于WebGL的图像投影融合方法、装置、存储介质和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |