发明名称 提升夜间拍照图像配准精度的方法
摘要 一种提升夜间拍照图像配准精度的方法,具体包括:输入待配准图像;图像灰度化;直方图均衡化;检测特征点;匹配特征点;利用随机抽样一致RANSAC算法,剔除误特征点匹配对;判断闪光灯条件下拍摄的图像的特征点是否过于集中,若是,进行特征点匹配对均衡化,否则,直接利用已检测出来的特征点匹配对求解仿射变换矩阵;特征点匹配对均衡化;利用特征点匹配对列出方程,求解方程组,得到仿射变换矩阵;配准图像。本发明能够根据已检测出的特征点匹配对的位置信息,自适应的添加匹配对,使得特征点的分布更加均匀,避免由于特征点过于集中而导致的过拟合问题,提高夜间拍照图像的配准精度。
申请公布号 CN104766319A 申请公布日期 2015.07.08
申请号 CN201510155826.X 申请日期 2015.04.02
申请人 西安电子科技大学 发明人 宋彬;陈鹏;秦浩;蒋国良;王博
分类号 G06T7/00(2006.01)I 主分类号 G06T7/00(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 田文英;王品华
主权项 一种提升夜间拍照图像配准精度的方法,包括如下步骤:(1)输入待配准图像:分别输入待配准的一幅在有闪光灯和一幅在无闪光灯条件下拍摄的图像;(2)图像灰度化:按照下式,分别对待配准的闪光灯条件下和无闪光灯条件下拍摄的图像进行灰度化:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>Y</mi><mi>i</mi></msub><mo>=</mo><mfrac><mrow><mo>(</mo><mn>2365</mn><mo>&times;</mo><msub><mi>B</mi><mi>i</mi></msub><mo>+</mo><mn>23434</mn><mo>&times;</mo><msub><mi>G</mi><mi>i</mi></msub><mo>+</mo><mn>6969</mn><mo>&times;</mo><msub><mi>R</mi><mi>i</mi></msub><mo>)</mo></mrow><mn>32768</mn></mfrac><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000011.GIF" wi="982" he="132" /></maths>其中,Y<sub>i</sub>表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像中第i个像素的灰度值,i表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的像素点的序号,B、G、R分别表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的蓝、绿、红通道,B<sub>i</sub>表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的第i个像素的蓝通道,G<sub>i</sub>表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的第i个像素的绿通道,R<sub>i</sub>表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的第i个像素的红通道;(3)直方图均衡化:按照下式,分别对待配准的闪光灯条件下和无闪光灯条件下拍摄的图像进行直方图均衡化:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msub><mi>p</mi><mi>x</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>f</mi><mo>=</mo><mn>0</mn></mrow><mi>x</mi></munderover><mi>g</mi><mrow><mo>(</mo><mi>f</mi><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000012.GIF" wi="308" he="156" /></maths>s<sub>x</sub>=int[(L‑1)*p<sub>x</sub>+0.5];其中,p<sub>x</sub>表示亮度通道矩阵的最终灰度级出现的概率值的累加和,x表示亮度通道矩阵的灰度值,x的取值范围为0~255,Σ表示求和操作,f表示亮度通道矩阵的灰度级,f=0,1,2,...,x,g(f)表示亮度通道矩阵的最终灰度级出现的概率值,s<sub>x</sub>表示直方图均衡化后亮度通道矩阵中灰度值x的映射值,int表示取整操作,L表示亮度通道矩阵灰度级的最大值;(4)检测特征点:(4a)对待配准的闪光灯条件下和无闪光灯条件下拍摄的图像,用不同尺度的高斯滤波器进行滤波得到的图像形成一个子八度octave;以此类推,对待配准的闪光灯条件下和无闪光灯条件下拍摄的图像分别进行一次,两次,三次下采样,并进行类似的滤波操作,得到高斯金字塔图层,将相邻的图层相减,得到差分高斯金字塔;(4b)在差分高斯金字塔中,比较中间图层上像素点与其相同尺度图层的8个相邻像素点大小,以及该像素点与其上下相邻尺度图层的18个相邻像素点的大小,如果中间图层上像素点的值是最大值或者是最小值,则将该像素点作为候选的特征点;(4c)去除对噪声敏感的低对比度的候选特征点和具有不稳定的边缘响应的候选特征点,剩余的是最终的特征点;(4d)计算以最终特征点为中心邻域像素的梯度方向,并用直方图表示,直方图的峰值表示最终特征点的邻域像素梯度的主方向,将该邻域像素梯度的主方向作为该最终特征点的方向;(4e)以最终特征点为中心,选择16×16的邻域,并将该邻域划分为16个4×4的子区域,在每个子区域上计算0°,45°,135°,180°,225°,270°,315°,360°共8个方向的梯度累加值,生成128维的特征向量;(5)匹配特征点:对于闪光灯条件下拍摄的图像中的每一个最终特征点,利用欧氏距离找到无闪光灯条件下拍摄的图像中与闪光灯条件下拍摄的图像的最终特征点最近的两个特征点,在这两个特征点中,如果最近的距离与次最近的距离的比值小于0.4,则闪光灯条件下拍摄的图像的最终特征点与无闪光灯条件下拍摄的图像中的距离最近的点匹配,否则不匹配;(6)利用随机抽样一致RANSAC算法,剔除误特征点匹配对;(7)判断闪光灯条件下拍摄的图像的特征点是否满足判断条件,若是,执行步骤(8),否则,执行步骤(9);(8)特征点匹配对均衡化:(8a)按照下式,计算待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对在列方向和行方向的平均偏移量:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>&Delta;</mi><mi>x</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>n</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><mrow><mo>(</mo><msubsup><mi>PF</mi><mi>i</mi><mi>x</mi></msubsup><mo>-</mo><msubsup><mi>PN</mi><mi>i</mi><mi>x</mi></msubsup><mo>)</mo></mrow><mo>,</mo><msub><mi>&Delta;</mi><mi>y</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>n</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><mrow><mo>(</mo><msubsup><mi>PF</mi><mi>i</mi><mi>y</mi></msubsup><mo>-</mo><msubsup><mi>PN</mi><mi>i</mi><mi>y</mi></msubsup><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000031.GIF" wi="1253" he="151" /></maths>其中,Δ<sub>x</sub>表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对在列方向上的平均偏移量,x表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点的列方向,n表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对的总数,i表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对的序号,<img file="FDA0000693037270000035.GIF" wi="95" he="68" />表示第i个待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对中闪光灯条件下拍摄图像的特征点列坐标,<img file="FDA0000693037270000036.GIF" wi="102" he="68" />表示第i个待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对中无闪光灯条件下拍摄图像的特征点列坐标,Δ<sub>y</sub>表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对在行方向上的平均偏移量,y表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点的行方向,<img file="FDA0000693037270000037.GIF" wi="98" he="68" />表示第i个待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对中闪光灯条件下拍摄图像的特征点的行坐标,<img file="FDA0000693037270000038.GIF" wi="101" he="68" />表示第i个待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对中无闪光灯条件下拍摄图像的特征点的行坐标;(8b)按照下式,将待配准的闪光灯条件下拍摄的图像分成M×M的相同大小的子块:<img file="FDA0000693037270000032.GIF" wi="263" he="148" /><img file="FDA0000693037270000033.GIF" wi="264" he="153" />其中,HW表示子块的宽度,<img file="FDA0000693037270000034.GIF" wi="79" he="96" />表示向下取整操作,W表示闪光灯条件下拍摄的图像的宽度,M表示闪光灯下拍摄的图像每一行的子块个数,HH表示子块的高度,H表示闪光灯条件下拍摄的图像的高度;(8c)按照下式,计算闪光灯下拍摄的图像拟添加的特征点的行坐标和列坐标:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msubsup><mi>PF</mi><mi>k</mi><mi>x</mi></msubsup><mo>=</mo><mi>j</mi><mo>&times;</mo><mi>HW</mi><mo>+</mo><mi>j</mi><mn>1</mn><mo>&times;</mo><msub><mi>D</mi><mi>x</mi></msub><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000041.GIF" wi="595" he="76" /></maths><maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msubsup><mi>PF</mi><mi>k</mi><mi>y</mi></msubsup><mo>=</mo><mi>i</mi><mo>&times;</mo><mi>HH</mi><mo>+</mo><mi>i</mi><mn>1</mn><mo>&times;</mo><msub><mi>D</mi><mi>y</mi></msub><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000042.GIF" wi="580" he="82" /></maths>其中,<img file="FDA0000693037270000043.GIF" wi="100" he="73" />表示拟添加的特征点的列坐标,x表示拟添加特征点的列方向,k表示闪光灯条件下拍摄的图像内拟添加的特征点的序号,k=(i×M+j)×N×N+i1×N+j1,i表示相同大小的子块对应的行的编号,i=0,1,2,...,M‑1,i1表示子块内拟添加的特征点对应的行的编号,i1=0,1,2,...,N‑1,j表示相同大小的子块的对应的列的编号,j=0,1,2,...,M‑1,j1表示子块内拟添加的特征点的对应的列的编号,j1=0,1,2,...,N‑1,HW表示子块的宽度,D<sub>x</sub>表示拟添加的特征点之间的列方向的距离,<img file="FDA0000693037270000044.GIF" wi="394" he="131" />W表示闪光灯条件下拍摄的图像的宽度,M表示闪光灯下拍摄的图像每一行的子块个数,N表示闪光灯下拍摄的图像的每个子块每一行添加的特征点个数,<img file="FDA0000693037270000045.GIF" wi="106" he="77" />表示拟添加的特征点的行坐标,y表示拟添加的特征点的行方向,HH表示子块的高度,D<sub>y</sub>表示拟添加的特征点之间的行方向的距离,H表示闪光灯条件下拍摄的图像的高度,<img file="FDA0000693037270000046.GIF" wi="391" he="133" />H表示闪光灯条件下拍摄的图像的高度,M表示闪光灯下拍摄的图像每一行的子块个数,N表示闪光灯下拍摄的图像的每个子块每一行添加的特征点个数;(8d)按照下式,计算无闪光灯条件下拍摄的图像拟添加的特征点的列坐标和行坐标:<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><msubsup><mi>PN</mi><mi>k</mi><mi>x</mi></msubsup><mo>=</mo><msubsup><mi>PF</mi><mi>k</mi><mi>x</mi></msubsup><mo>-</mo><msub><mi>&Delta;</mi><mi>x</mi></msub><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000047.GIF" wi="414" he="71" /></maths><maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><msubsup><mi>PN</mi><mi>k</mi><mi>y</mi></msubsup><mo>=</mo><msubsup><mi>PF</mi><mi>k</mi><mi>y</mi></msubsup><mo>-</mo><msub><mi>&Delta;</mi><mi>y</mi></msub><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000048.GIF" wi="415" he="79" /></maths>其中,<img file="FDA0000693037270000049.GIF" wi="104" he="71" />表示无闪光灯条件下拍摄的图像拟添加的特征点的列坐标,x表示拟添加特征点的列方向,k表示拟添加的特征点的序号,<img file="FDA00006930372700000410.GIF" wi="95" he="71" />表示闪光灯条件下拍摄的图像拟添加的特征点的列坐标,Δ<sub>x</sub>表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对在列方向上的平均偏移量,<img file="FDA00006930372700000411.GIF" wi="102" he="70" />表示无闪光灯条件下拍摄的图像拟添加的特征点的行坐标,<img file="FDA0000693037270000051.GIF" wi="100" he="76" />表示闪光灯条件下拍摄的图像拟添加的特征点的行坐标,Δ<sub>y</sub>表示待配准的闪光灯条件下和无闪光灯条件下拍摄的图像的特征点匹配对在行方向上的平均偏移量;(9)利用步骤(6)和步骤(8)得到的特征点匹配对列出方程,求解方程组,得到仿射变换矩阵H;(10)配准图像:(10a)按照下式,计算配准后的闪光灯条件下拍摄的图像的位置(i,j)的像素,经过映射之后对应的闪光灯条件下拍摄的图像的位置:<maths num="0008" id="cmaths0008"><math><![CDATA[<mrow><msup><mi>i</mi><mo>,</mo></msup><mo>=</mo><mfrac><mrow><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>1,1</mn></msub><mo>*</mo><mi>i</mi><mo>+</mo><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>1,2</mn></msub><mo>*</mo><mi>j</mi><mo>+</mo><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>1,3</mn></msub></mrow><mrow><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>3,1</mn></msub><mo>*</mo><mi>i</mi><mo>+</mo><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>3,2</mn></msub><mo>*</mo><mi>j</mi><mo>+</mo><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>3,3</mn></msub></mrow></mfrac><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000052.GIF" wi="824" he="148" /></maths><maths num="0009" id="cmaths0009"><math><![CDATA[<mrow><msup><mi>j</mi><mo>,</mo></msup><mo>=</mo><mfrac><mrow><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>2,1</mn></msub><mo>*</mo><mi>i</mi><mo>+</mo><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>2,2</mn></msub><mo>*</mo><mi>j</mi><mo>+</mo><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>2,3</mn></msub></mrow><mrow><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>3,1</mn></msub><mo>*</mo><mi>i</mi><mo>+</mo><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>3,2</mn></msub><mo>*</mo><mi>j</mi><mo>+</mo><msub><msup><mi>H</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mn>3,3</mn></msub></mrow></mfrac><mo>;</mo></mrow>]]></math><img file="FDA0000693037270000053.GIF" wi="833" he="148" /></maths>其中,i'表示闪光灯条件下拍摄的图像像素的列坐标,H<sup>‑1</sup><sub>1,1</sub>表示仿射变换矩阵的逆矩阵的第一行第一列元素,H<sup>‑1</sup><sub>1,2</sub>表示仿射变换矩阵的逆矩阵的第一行第二列元素,H<sup>‑1</sup><sub>1,3</sub>表示仿射变换矩阵的逆矩阵的第一行第三列元素,H<sup>‑1</sup><sub>2,1</sub>表示仿射变换矩阵的逆矩阵的第二行第一列元素,H<sup>‑1</sup><sub>2,2</sub>表示仿射变换矩阵的逆矩阵的第二行第二列元素,H<sup>‑1</sup><sub>2,3</sub>表示仿射变换矩阵的逆矩阵的第二行第三列元素,H<sup>‑1</sup><sub>3,1</sub>表示仿射变换矩阵的逆矩阵的第三行第一列元素,H<sup>‑1</sup><sub>3,2</sub>表示仿射变换矩阵的逆矩阵的第三行第二列元素,H<sup>‑1</sup><sub>3,3</sub>表示仿射变换矩阵的逆矩阵的第三行第三列元素,i表示配准后的闪光灯条件下拍摄的图像像素的列坐标,j表示配准后的闪光灯条件下拍摄的图像像素的行坐标,j'表示闪光灯条件下拍摄的图像像素的行坐标;(10b)按照下式,计算配准后的闪光灯条件下拍摄的图像的位置(i,j)像素值:R<sub>i,j</sub>=α<sub>1</sub>×F<sub>Ii,Ij</sub>+α<sub>2</sub>×F<sub>Ii,Ij+1</sub>+α<sub>3</sub>×F<sub>Ii+1,Ij</sub>+α<sub>4</sub>×F<sub>Ii+1,Ij+1</sub>;其中,R<sub>i,j</sub>表示配准后的闪光灯条件下拍摄的图像的像素值,i表示配准后的闪光灯条件下拍摄的图像像素的列坐标,j表示配准后的闪光灯条件下拍摄的图像像素的行坐标,α<sub>1</sub>表示距离闪光灯条件下拍摄的图像像素最近的左上角的像素的权重,F<sub>Ii,Ij</sub>表示距离闪光灯条件下拍摄的图像像素最近的左上角的像素的像素值,Ii表示闪光灯条件下拍摄的图像像素的列坐标的整数部分,Ij表示闪光灯条件下拍摄的图像像素的行坐标的整数部分,α<sub>2</sub>表示距离闪光灯条件下拍摄的图像像素最近的左下角的像素的权重,F<sub>Ii,Ij+1</sub>表示距离闪光灯条件下拍摄的图像像素最近的左下角的像素的像素值,α<sub>3</sub>表示距离闪光灯条件下拍摄的图像像素最近的右上角的像素的权重,F<sub>Ii+1,Ij</sub>表示距离闪光灯条件下拍摄的图像像素最近的右上角的像素的像素值,α<sub>4</sub>表示距离闪光灯条件下拍摄的图像像素最近的右下角的像素的权重,F<sub>Ii+1,Ij+1</sub>表示距离闪光灯条件下拍摄的图像像素最近的右下角的像素的像素值。
地址 710071 陕西省西安市太白南路2号