摄像头校正方法以及使用该方法的装置与流程

文档序号:12890231阅读:299来源:国知局
本发明涉及一种图像处理技术,特别是一种离线摄像头校正方法以及使用该方法的装置。
背景技术
::在图像拍摄上,使用镜片可带来一些好处,例如,增加进光量,缩短曝光时间等,但也带来造成非线性的图像形变的缺点。非线性的图像失真通常包含径面失真(radialdistortion)以及切向失真(tangentdistortion)。因此,需要一种离线摄像头校正以及使用该方法的装置,用以降低拍摄图像的失真。技术实现要素:本发明的实施例提出一种由处理单元执行的摄像头校正方法。控制摄像头模块以获得包含失真的拍摄图像;基于拍摄图像的像素值决定拍摄图像的多个角点;利用角点的信息来确定相应于摄像头模块的最佳参数,其中,最佳参数是使能量函数最小时的一组参数;以及基于最佳参数校正摄像头模块的输出。本发明的实施例提出一种离线摄像头校正装置,至少包含摄像头模块及处理单元。处理单元耦接于摄像头模块,控制摄像头模块以获得包含失真的拍摄图像;基于拍摄图像的像素值决定拍摄图像的多个角点;利用角点的信息来确定相应于摄像头模块的最佳参数,其中,最佳参数是使能量函数最小时的一组参数;以及基于最佳参数校正摄像头模块的输出。附图说明图1是依据本发明实施例的运算装置的系统架构图。图2是依据本发明实施例的摄像头校正方法流程图。图3是依据本发明实施例的校验板示意图。图4是依据本发明实施例的拍摄图像示意图。图5是依据本发明实施例的角点示意图。图6是依据本发明实施例的参数决定的方法流程图。图7是依据本发明实施例的决定极大似然点坐标的方法流程图。图8是依据本发明实施例消除径面失真后的角点示意图。图9是依据本发明实施例消除径面失真及切向失真后的角点示意图。【符号说明】110处理单元;130图像缓存器;150易失性存储器;160非易失性存储装置;170摄像头模块控制器;190摄像头模块;s210~s290方法步骤;30校验板;40拍摄图像;s611~s650方法步骤;s710~s790方法步骤。具体实施方式以下说明为完成发明的较佳实现方式,其目的在于描述本发明的基本精神,但并不用以限定本发明。实际的
发明内容必须参考之后的权利要求范围。必须了解的是,使用于本说明书中的”包含”、”包括”等词,用以表示存在特定的技术特征、数值、方法步骤、作业处理、元件和/或组件,但并不排除可加上更多的技术特征、数值、方法步骤、作业处理、元件、组件,或以上的任意组合。在权利要求中使用如“第一”、“第二”、“第三”等词用来修饰权利要求中的元件,并非用来表示之间具有优先权顺序,先行关系,或者是一个元件先于另一个元件,或者是执行方法步骤时的时间先后顺序,仅用来区别具有相同名字的元件。图1是依据本发明实施例的运算装置的系统架构图。此系统架构可实施于桌上型计算机、笔记型计算机、平板计算机、手机、数字相机、数字录影机等,至少包含处理单元110。处理单元110可使用多种方式实施,例如以专用硬件电路或通用硬件(例如,单一处理器、具平行处理能力的多处理器、图形处理器或其他具运算能力的处理器),并且在执行硬件(hardware)、固件(firmware)或软件(software)指令时,提供之后所描述的功能。处理单元110可整合于图像信号处理器(isp,imagesignalprocessor)中,并且可通过摄像头模块控制器170控制摄像头模块190用以捕捉图像。摄像头模块190可包含图像传感器,例如,互补式金属氧化物半导体(complementarymetal-oxide-semiconductor,cmos)、电荷耦合元件(charge-coupleddevice,ccd)等传感器,用以感测由红、绿、蓝光强度所形成的图像,以及包含读取电子电路,用以从图像传感器搜集感测到的数据。易失性存储器150,例如动态随机随取存储器(dram,dynamicrandomaccessmemory),用以存储执行过程中需要的数据,例如,变量、数据表(datatables)等。图2是依据本发明实施例的图像校正方法流程图。此方法由处理单元110执行相关的硬件、固件或软件指令时实施。图3是依据本发明实施例的校验板示意图。为了校正摄像头模块190取得的图像,本发明实施例提供像西洋棋盘(chessboard)一般的校验板(checkerboard)30。在一些实施例中,校验板的长度和/或宽度是可调整的。一般而言,校验板的大小以能铺满整个拍摄镜头为宜。在摄像头模块190出厂前,处理单元110驱动摄像头模块控制器170以控制摄像头模块190拍摄校验板30,使得摄像头模块190取得拍摄图像及存储拍摄图像至图像缓存器130(步骤s210)。图4是依据本发明实施例的拍摄图像示意图。然而,图像传感器感测穿透摄像头模块190中透镜的光线所产生的拍摄图像40。拍摄图像40是一幅包含失真(distortion)的校验板图像,失真包含径面失真及切向失真。径面失真肇因于摄像头模块190中镜片的形状,使得距离镜片中心越远的光线在通过镜片时弯折较大,越靠近镜片中心的光线则弯折越小。切向失真则由摄像头模块190的组装误差造成,主要是摄像头模块190中镜片及图像传感器没有平行设置。为了校正摄像头的输出,处理单元110决定拍摄图像40的角点及一失真中心(步骤s230),决定相应于摄像头模块190的最佳参数及(步骤s250),应用最佳参数及及失真中心获得拍摄图像40中角点的消除径面失真及切向失真后的极大似然点坐标(步骤s270),依据角点的极大似然点坐标获得拍摄图像40中除角点外的像素的极大似然点的坐标(步骤s280)以及根据上述计算结果产生及存储映射表至非易失性存储装置160(步骤s290)。在步骤s230,角点为一个极值点,亦即在特定属性上特别突出的点。角点可为两条线的交叉处(例如图3中任意两条线的交叉点),也可以是位于相邻的两个主要方向的不同事物上的点。当拍摄图像是通过拍摄一校验板而得时,角点为为二个边的交叉点(详见图4和图5的示例)。本领域技术人员可参考已知的算法决定拍摄图像40的角点(corners)及失真中心(xe,ye)。例如,richardhartley及singbingkang发表于2007年八月的学术期刊ieeetransactionsonpatternanalysisandmachineintelligence,vol.29,no.8第1309至1321页的论文parameter-freeradialdistortioncorrectionwithcenterofdistortionestimation。图5是依据本发明实施例的角点示意图。在步骤s250,处理单元110从多组参数中选择出一组,使用选择出的参数计算拍摄图像40中的所有角点以产生一能量函数。处理单元110再用多组参数中的其他组参数产生多个能量函数,当所有组的所对应的能量函数都计算完毕后,将使能量函数最小时所对应的那组参数作为最佳参数,最佳参数可表示为及详细计算过程描述如下:图6是依据本发明实施例的参数决定的方法流程图。此方法包含一个外循环(outerloop)(步骤s611至s615)及一个内循环(innerloop)(步骤s631至s637)。在外循环的每一回合中,处理单元110用以从m组参数选择出一组αj=(cj,pj)t及βj=(β1j,β2j,β3j)t,0≤j≤m-1(步骤s611),其中,m组参数可以是根据经验值预设的。其中,第一参数α可用以模拟径面失真的曲面,而第二参数β可用以模拟光轴的方向。接着,处理单元110反复执行内循环,使用选择出的参数αj及βj计算相应于n个角点的消除径面失真后的坐标p’(步骤s631至步骤s637)。其中,处理单元110可采样图5中的n个角点,例如,可选图5中的一列(column)或/和一行(row)。内循环执行完后,处理单元110使用消除径面失真后的n个坐标p’计算相应参数αj及βj的能量函数,能量函数可表示消除拍摄图像40中径面失真的程度(步骤s613)。当所有组的第一参数α及第二参数β都处理完后(步骤s615中“是”的路径),跳出外循环,并且将最小能量函数对应的参数当作最佳参数,最佳参数包括第一最佳参数及第二最佳参数及(步骤s650)。在内循环的每一回合中,处理单元110选择图5中的第一(下一)角点pi=(xi,yi),0≤i≤n-1(步骤s631),将选择的参数αj及βj带入曲面方程式以计算角点pi的深度值zi(步骤s633),以及使用深度值zi及摄像头模块190与校验板30间的距离h计算消除径面失真后的坐标p’i(步骤s635)。当所有角点处理完后(步骤s637中“是”的路径),跳出内循环。在步骤s633,深度值zi可使用以下曲面方程式计算:s.t.其中,zi代表第i个角点的深度值,xi代表第i个角点的x-坐标值,yi代表第i个角点的y-坐标值,cj及pj代表第j个第一参数α,β1j、β2j及β3j代表第j个第二参数β。在步骤s635,消除径面失真后的坐标p’i可使用以下公式计算:其中,p’i代表第i个角点的消除径面失真后的坐标,h代表摄像头模块190与校验板30间的距离,xi代表第i个角点的x-坐标值,yi代表第i个角点的y-坐标值,zi代表第i个角点的深度值。在步骤s613,相应参数αj及βj的能量函数ej可使用以下公式计算:消除径面失真后的中值角点的坐标可使用以下公式计算:其中,h代表摄像头模块190与校验板30间的距离,xk代表第k个角点的x-坐标值,yk代表第k个角点的y-坐标值,zk代表第k个角点的深度值,xk-1代表第k-1个角点的x-坐标值,yk-1代表第k-1个角点的y-坐标值,zk-1代表第k-1个角点的深度值,xk+1代表第k+1个角点的x-坐标值,yk+1代表第k+1个角点的y-坐标值,以及zk+1代表第k+1个角点的深度值。其中,第k-1个、第k个及第k+1个角点的位置关系可为任意三个共线且相邻的角点,例如表格1中所示的四种情况。表格1当第k个角点为边缘角点时,即第k个旁边无第k-1个和/或第k+1个角点时,中值角点的坐标取值分别为:在步骤s270,处理单元110执行步骤s250将最佳参数及带入曲面方程式以计算图5中相应于角点的消除径面失真后的坐标,接着,应用相邻角点间等距原则在图5中相应于角点的消除径面失真后的坐标,用以计算图5中相应于角点的消除径面失真及切向失真后的极大似然点坐标详细计算过程描述如下:图7是依据本发明实施例的决定极大似然点坐标的方法流程图。处理单元110取得最佳参数,最佳参数包括第一最佳参数及第二最佳参数其中,及(步骤s710),反复执行一个循环,用以使用最佳参数及计算图5中相应于所有角点的消除径面失真后的最佳坐标p’u,v(步骤s731至s737)。在循环的每一回合中,处理单元110选择图5中的第一(下一)角点pu,v=(xu,v,yu,v),0≤u≤u-1,0≤v≤v-1,u代表角点的行(rows)总数,v代表角点的列(columns)总数(步骤s731),pu,v代表第u行第v列角点,xu,v代表第u行第v列角点的x坐标值,以及yu,v代表第u行第v列角点的y坐标值。接着,处理单元110将最佳参数及带入曲面方程式计算角点pu,v的最佳深度值zu,v(步骤s733),以及使用最佳深度值zu,v及摄像头模块190与校验板30间的距离h计算消除径面失真后的最佳坐标p’u,v(步骤s735)。当所有角点处理完后(步骤s737中“是”的路径),跳出循环。图8是依据本发明实施例消除径面失真后的角点示意图。在步骤s733,角点pu,v的最佳深度值zu,v可使用以下曲面方程式计算:s.t.其中,zu,v代表第u行第v列角点的深度值,xu,v代表第u行第v列角点的x-坐标值,yu,v代表第u行第v列角点的y-坐标值,以及最佳参数及其中,及在步骤s735,消除径面失真后的最佳坐标p’u,v可使用以下公式计算:其中,p’u,v代表第u行第v列角点的消除径面失真后的最佳坐标,h代表摄像头模块190与校验板30间的距离,xu,v代表第u行第v列角点的x-坐标值,yu,v代表第u行第v列角点的y-坐标值,以及zu,v代表第u行第v列角点的最佳深度值。当检测到的角点消除径面失真后(亦即是取得图8的角点后)(步骤s737中“是”的路径),处理单元110计算消除径面失真后的角点的列平均值及行平均值(步骤s750),取得最接近失真中心(xe,ye)的二列的索引值index_x1及index_x2及最接近失真中心(xe,ye)的二行的索引值index_y1及index_y2,而失真中心(xe,ye)可由步骤s230计算而得(步骤s760),依据失真中心(xe,ye)及相邻二列及二行的信息计算x轴的基础值xbase及步进值xstep以及y轴的基础值ybase及步进值ystep(步骤s770),以及据以产生拍摄图像40中相应于所有角点的消除径面失真及切向失真后的极大似然点坐标(步骤s790)。图9是依据本发明实施例消除径面失真及切向失真后的角点示意图,需要注意的是,图9所示的角点示意图呈倾斜状,这是因为光轴没有垂直于校验板所致,当光轴垂直于校验板或几乎垂直于校验板时,图9所示的倾斜状况会消失或极不明显。在步骤s750,消除径面失真后的角点的列平均值及行平均值可使用以下公式计算:其中,u代表角点的行(rows)总数,v代表角点的列(columns)总数,x’u,v代表第u行第v列角点的消除径面失真后的x-坐标值,以及y’u,v代表第u行第v列角点的消除径面失真后的y-坐标值。在步骤s760,索引值index_x1、index_x2、index_y1及index_y2可使用以下公式取得:其中,xe代表失真中心的x-坐标值,ye代表失真中心的y-坐标值,u代表角点的行总数,v代表角点的列总数,代表第v列角点的消除径面失真后的x-坐标值的平均值,以及代表第u行角点的消除径面失真后的y-坐标值的平均值,代表第index_x1列角点的消除径面失真后的x-坐标值的平均值,代表第index_x2列角点的消除径面失真后的x-坐标值的平均值,代表第index_y1行角点的消除径面失真后的y-坐标值的平均值,以及代表第index_y2行角点的消除径面失真后的y-坐标值的平均值。在步骤s770,计算x轴的基础值xbase及步进值xstep以及y轴的基础值ybase及步进值ystep,其中,x轴/y轴的基础值xbase/ybase是指二列/行的索引值的更接近失真中心的一列/行角点的消除径面失真后的x-坐标值/y-坐标值的平均值,xstep/ystep是指接近失真中心的二列/行的消除径面失真后的x-坐标值/y-坐标值间的差值。在一实施例中,x轴的基础值xbase及步进值xstep以及y轴的基础值ybase及步进值ystep可使用以下公式计算:其中,代表第index_x1列角点的消除径面失真后的x-坐标值的平均值,代表第index_x2列角点的消除径面失真后的x-坐标值的平均值,代表第index_y1行角点的消除径面失真后的y-坐标值的平均值,以及代表第index_y2行角点的消除径面失真后的y-坐标值的平均值。在步骤s790,拍摄图像40中相应于所有角点的消除径面失真及切向失真后的极大似然点坐标可使用以下公式计算:其中,r和s的取值范围可表示为:index_x1≤r≤v-1-index_x1,index_y1≤s≤u-1-index_y1其中,代表第(index_x1+r)列角点的消除径面失真及切向失真后的x-坐标值,代表第(index_y1+s)行角点的消除径面失真及切向失真后的y-坐标值,u代表角点的行总数,v代表角点的列总数。在步骤s280,本领域技术人员可依据角点的极大似然点坐标使用已知算法(例如,插值法)计算图9中除角点外的像素的极大似然点的坐标。在步骤s290,非易失性存储装置160可为快闪存储器或其他不会因断电而造成映射表消失的存储装置。映射表可包含多个存储格,存储格数量及位置相应于图像传感器阵列的图像传感器数量及位置。例如,图像传感器阵列包含mxn个图像传感器时,映射表包含mxn个存储格,m、n为大于0的整数,且m、n可为相同或不同整数。每一个存储格记录拍摄图像的像素的参考位置信息。假设存储格[i,j]记录[k,l]:详细来说,当存储格[i,j]为步骤s230中决定的角点,则[k,l]可包含于步骤s270计算出相应于此角点的消除径面失真及切向失真后的极大似然点坐标的信息。当存储格[i,j]不为步骤s230中决定的角点,则[k,l]可包含于步骤s280计算出相应于此像素的极大似然点坐标的信息。在一些实施例中,存储格[i,j]的存储信息可代表拍摄图像的像素[i,j]的参考位置为[k,l],其中,i、k为介于0至m-1的任意整数,j、l为介于0至n-1的任意整数。在一些实施例中,存储格[i,j]的存储信息可代表拍摄图像的像素[i,j]的参考位置为[i+k,j+l],其中,i为介于0至m-1的任意整数,k为任意整数(正整数,0或负整数)且i+k介于0至m-1之间,以及j为介于0至n-1的任意整数,l为任意整数且j+l介于0至n-1之间。在一些实施例中,为降低存储空间,映射表可只存储相应于步骤s230中决定的角点的消除径面失真及切向失真后的极大似然点坐标的信息。在一些实施例中,映射表可只存储相应于步骤s735中决定的角点的消除径面失真后的最佳坐标的信息。摄像头模块190出厂后,处理单元110可从摄像头模块190取得原始图像,以及根据非易失性存储装置160中映射表的参考位置信息产生调整图像。在一个例子中,处理单元110可取得原始图像中像素[k,l]的值作为调整图像中像素[i,j]的值。在另一个例子中,处理单元110可取得原始图像中像素[i+k,j+l]的值作为调整图像中像素[i,j]的值。在更另一个例子中,处理单元110可使用平滑算法(smoothingalgorithm)计算原始图像中像素[k,l]的值及邻近像素的值并将计算结果作为调整图像中像素[i,j]的值。在更另一个例子中,处理单元110可使用平滑算法计算原始图像中像素[i+k,j+l]的值及邻近像素的值并将计算结果作为调整图像中像素[i,j]的值。从本发明的一个面向来说,处理单元110驱动摄像头模块控制器170以控制摄像头模块190拍摄校验板30,使得摄像头模块190取得包含失真的拍摄图像40;使用算法消除拍摄图像40的失真,用以产生相应于拍摄图像40的多个像素的参考位置信息;以及存储映射表至非易失性存储装置160。在替代性实施方式中,处理单元110可根据调整结果产生调整模型,其中包含多个数学公式或算法及其参数,用以降低原始图像中的失真。然而,在此须注意的是,当图像传感器阵列上成像的图像中包含的失真难以使用数学公式及其参数模拟时,产生的调整模型将无法有效地消除图像中包含的失真。不同于如上所述实施方式,本发明实施例的映射表包含多个存储格,而每一个存储格记录一个像素的参考位置信息,用以解决上述缺陷。从本发明的另一个面向来说,处理单元110使用二个阶段进行校正:依据角点的信息决定摄像头模块190的最佳参数;及使用最佳参数及失真中心获得拍摄图像40中多个像素的消除失真后的极大似然点坐标。最后,处理单元110存储映射表至非易失性存储装置160,其中,映射表包含消除失真后的极大似然点坐标的信息。从本发明的更另一个面向来说,处理单元110以下列方式获得消除失真后的极大似然点坐标:使用最佳参数及失真中心获得拍摄图像中相应于角点的多个消除失真后的极大似然点坐标;以及依据角点的极大似然点坐标获得拍摄图像中除角点外的像素的极大似然点坐标。在一些替代性实施方式中,校正方法需要从不同角度拍摄校验板来产生多张图像,接着,依据多张图像的角点及失真中心信息产生调整模型,其中包含多个数学公式或算法及其参数。不同于如上所述实施方式,本发明实施例的二阶段校正只需要拍摄一次校验板30便可以获得拍摄图像40中所有像素的消除失真后的极大似然点坐标。虽然图1中包含了以上描述的元件,但不排除在不违反发明的精神下,使用更多其他的附加元件,已达成更佳的技术效果。此外,虽然第2、7及8图的处理步骤采用特定的顺序来执行,但是在不违反发明精神的情况下,本领域技术人员可以在达到相同效果的前提下,修改这些步骤间的顺序,所以,本发明并不局限于仅使用如上所述的顺序。虽然本发明使用以上实施例进行说明,但需要注意的是,这些描述并非用以限缩本发明。相反地,此发明涵盖了本领域技术人员显而易见的修改与相似设置。所以,权利要求书要求保护的范围须以最宽广的方式解释来包含所有显而易见的修改与相似设置。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1