发明名称 一种虹膜图像清晰度判别方法
摘要 一种虹膜图像清晰度判别方法,属于图像处理技术领域。本发明将瞳孔的边缘峰态系数和虹膜的梯度能量作为支持向量机判断虹膜图像是否清晰的最优分类面的两个参数。计算瞳孔边缘峰态系数的时候,采用了傅里叶级数来自适应跟踪瞳孔的边界点,从而保证计算出的边缘峰态系数能真实反应图像的清晰程度。最后通过支持向量机对虹膜图片提取的特征向量进行训练,从而确定最优分类面。在应用中,当前虹膜图片提取的特征向量位于最优分类面上方(对应最优分类面判别函数值为1)的时候判定图像的清晰度合格;否则,判定图像质量不合格。本发明在准确确定瞳孔边缘的基础上采用边缘峰态均值和虹膜梯度能量相结合的检测方法,具有较高的鲁棒性和准确性。
申请公布号 CN102129556B 申请公布日期 2012.09.12
申请号 CN201110092866.6 申请日期 2011.04.14
申请人 电子科技大学 发明人 解梅;余鹏
分类号 G06K9/00(2006.01)I;G06K9/62(2006.01)I 主分类号 G06K9/00(2006.01)I
代理机构 电子科技大学专利中心 51203 代理人 葛启函
主权项 1.一种虹膜图像清晰度判别方法,包括支持向量机最优分类面的确定和待测虹膜图像清晰度判别两个过程;所述支持向量机最优分类面的确定过程包括以下步骤:步骤1:准备支持向量机训练用虹膜灰度样本图像;虹膜灰度样本图像包括已经确定为清晰和不清晰的虹膜图像,其中清晰的虹膜灰度样本图像为正样本,不清晰的虹膜灰度样本图像为负样本,所有虹膜灰度样本图像的大小一致;步骤2:确定虹膜灰度图像的瞳孔中心(Y<sub>c</sub>,X<sub>c</sub>)和瞳孔半径R<sub>c</sub>;具体步骤包括:步骤2-1:根据设定的阈值T对虹膜灰度图像gray进行二值化,得到虹膜二值化图像bin:<img file="FDA00001795833500011.GIF" wi="1389" he="140" />公式(1)中,gray(i,j)表示指虹膜灰度图像gray中像素点(i,j)的灰度值,bin(i,j)表示虹膜二值化图像bin中像素点(i,j)的灰度值;步骤2-2:把虹膜二值化图像bin等分成M1个区域,统计每个区域中所有像素点的灰度值和,找出灰度值和最小的区域;步骤2-3:将步骤2-2灰度值和最小的区域等分成M2个子区域,统计每个子区域中所有像素点的灰度值和,找出灰度值和最小的子区域,将该子区域的中心点作为瞳孔中的一点,记为P<sub>(y,x)</sub>;步骤2-4:以点P<sub>(y,x)</sub>为中心,分别向左、向右和向下在虹膜二值化图像bin中搜索第一个灰度值为255的点,并依次记录其位置坐标为(Y<sub>0</sub>,X<sub>0</sub>)、(Y<sub>1</sub>,X<sub>1</sub>)和(Y<sub>2</sub>,X<sub>2</sub>);步骤2-5:把点(Y<sub>0</sub>,X<sub>0</sub>)、(Y<sub>1</sub>,X<sub>1</sub>)和(Y<sub>2</sub>,X<sub>2</sub>)代入瞳孔的边界方程,即公式(2),得到瞳孔中心坐标(Y<sub>c</sub>,X<sub>c</sub>)和瞳孔半径R<sub>c</sub>;(Y-Y<sub>c</sub>)<sup>2</sup>+(X-X<sub>c</sub>)<sup>2</sup>=R<sub>c</sub><sup>2</sup>                 (2)步骤3:自适应地确定瞳孔的边界,具体包括以下步骤:步骤3-1:在虹膜灰度图像gray中,以(Y<sub>c</sub>,X<sub>c</sub>)为中心,在360度的N等分角度方向上计算R<sub>c</sub>±10范围内像素点的灰度梯度值,记录每个角度方向下灰度梯度值最大的像素点的坐标(r<sub>i</sub>,θ<sub>i</sub>),其中i=0,...N-1;步骤3-2:用d(θ<sub>i</sub>)代表在角度θ<sub>i</sub>方向上瞳孔边界点到瞳孔中心(Y<sub>c</sub>,X<sub>c</sub>)的距离,则d(θ<sub>i</sub>)用傅里叶级数表示表示为:<maths num="0001"><![CDATA[<math><mrow><mi>d</mi><mrow><mo>(</mo><msub><mi>&theta;</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>0</mn></mrow><mi>L</mi></munderover><msub><mi>a</mi><mi>n</mi></msub><mi>cos</mi><mrow><mo>(</mo><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>b</mi><mi>n</mi></msub><mi>sin</mi><mrow><mo>(</mo><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中a<sub>n</sub>和b<sub>n</sub>分别是余弦项和正弦项的系数,且b<sub>0</sub>=0;L表示截止谐波的次数;步骤3-3:确定a<sub>n</sub>和b<sub>n</sub>,使得公式(4)中的E值最小;<maths num="0002"><![CDATA[<math><mrow><mi>E</mi><mo>=</mo><msup><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></munderover><mrow><mo>[</mo><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>0</mn></mrow><mi>L</mi></munderover><msub><mi>a</mi><mi>n</mi></msub><mi>cos</mi><mrow><mo>(</mo><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>b</mi><mi>n</mi></msub><mi>sin</mi><mrow><mo></mo><mrow><mo></mo><mo>(</mo><mrow><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub></mrow><mo>)</mo><mo>-</mo></mrow><mo>-</mo><msub><mi>r</mi><mi>i</mi></msub></mrow><mo>]</mo></mrow></mrow><mn>2</mn></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow></math>]]></maths>分别对公式(4)中的a<sub>n</sub>和b<sub>n</sub>求偏导,并零结果为零,如方程(5)和(6)所示:<maths num="0003"><![CDATA[<math><mrow><mfrac><mrow><mo>&PartialD;</mo><mi>E</mi></mrow><mrow><mo>&PartialD;</mo><msub><mi>a</mi><mi>n</mi></msub></mrow></mfrac><mo>=</mo><mn>2</mn><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></munderover><mo>[</mo><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>0</mn></mrow><mi>L</mi></munderover><msub><mi>a</mi><mi>n</mi></msub><mi>cos</mi><mrow><mo>(</mo><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>b</mi><mi>n</mi></msub><mi>sin</mi><mrow><mo>(</mo><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>-</mo><msub><mi>r</mi><mi>i</mi></msub><mo>]</mo><mi>cos</mi><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo>=</mo><mn>0</mn><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0004"><![CDATA[<math><mrow><mfrac><mrow><mo>&PartialD;</mo><mi>E</mi></mrow><mrow><mo>&PartialD;</mo><msub><mi>b</mi><mi>n</mi></msub></mrow></mfrac><mo>=</mo><mn>2</mn><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></munderover><mo>[</mo><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>0</mn></mrow><mi>L</mi></munderover><mrow><mo>(</mo><msub><mi>a</mi><mi>n</mi></msub><mi>cos</mi><mrow><mo></mo><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo></mo></mrow><mo>+</mo><msub><mi>b</mi><mi>n</mi></msub><mi>sin</mi><mrow><mo></mo><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo></mo></mrow><mo>)</mo></mrow><mo>-</mo><msub><mi>r</mi><mi>i</mi></msub><mo>]</mo><mi>sin</mi><mi>n</mi><msub><mi>&theta;</mi><mi>i</mi></msub><mo>=</mo><mn>0</mn><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow></math>]]></maths>根据方程(5)、(6)求得a<sub>n</sub>和b<sub>n</sub>,并将其代入公式(3)中,就可求得瞳孔任意角度处的准确边界;步骤4:计算瞳孔边缘峰态系数和虹膜平均梯度能量,具体包括以下步骤:步骤4-1:计算瞳孔边缘峰态系数均值K;在[3π/2-a,3π/2+a]的角度范围内,以β为步长,先利用公式(3)计算相应角度上瞳孔中心(Y<sub>c</sub>,X<sub>c</sub>)到瞳孔边缘的距离,从而精确确定相应角度上瞳孔边缘点的位置坐标,记为(Y<sub>i</sub>,X<sub>i</sub>),其中<img file="FDA00001795833500025.GIF" wi="346" he="107" />符号<img file="FDA00001795833500026.GIF" wi="52" he="61" />表示向下取整;然后以(Y<sub>i</sub>+5,X<sub>i</sub>)为起始点,以(Y<sub>i</sub>-5,X<sub>i</sub>)为终点,沿着X=X<sub>i</sub>方向,依次取虹膜灰度图像gray中对应像素点的灰度值组成向量,并计算该向量的一阶导数向量Z<sub>i</sub>;再由公式(7)计算(Y<sub>i</sub>,X<sub>i</sub>)点的边缘峰态系数;最后由公式(8)计算瞳孔边缘峰态系数均值K;<maths num="0005"><![CDATA[<math><mrow><msub><mi>K</mi><mi>i</mi></msub><mo>=</mo><mfrac><mrow><mi>E</mi><mo>[</mo><msup><mrow><mo>(</mo><msub><mi>z</mi><mi>i</mi></msub><mo>-</mo><msub><mi>u</mi><mi>i</mi></msub><mo>)</mo></mrow><mn>4</mn></msup><mo>]</mo></mrow><msup><msub><mi>&sigma;</mi><mi>i</mi></msub><mn>4</mn></msup></mfrac><mo>,</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>,</mo><mn>10</mn><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow></math>]]></maths>公式(7)中z<sub>i</sub>表示一阶导数向量Z<sub>i</sub>中的第i个一阶导数;E表示数学期望,u<sub>i</sub>表示z<sub>i</sub>的均值,σ<sub>i</sub>表示z<sub>i</sub>的标准差;<img file="FDA00001795833500032.GIF" wi="1338" he="163" />步骤4-2:计算虹膜平均梯度能量E<sub>1</sub>;在虹膜灰度图像gray中截取一个矩形区域[Y<sub>c</sub>+R<sub>c</sub>+c:Y<sub>c</sub>+R<sub>c</sub>+d,X<sub>c</sub>-e:X<sub>c</sub>+e],记为S,其中c的取值范围是[5,10),d的取值范围是[c+20,c+25),e的取值范围是[10,15);并按照公式(9)计算虹膜平均梯度能量E<sub>1</sub>:<maths num="0006"><![CDATA[<math><mrow><msub><mi>E</mi><mn>1</mn></msub><mo>=</mo><mfrac><mn>1</mn><mrow><mrow><mo>(</mo><mi>H</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mrow><mo>(</mo><mi>W</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow></mrow></mfrac><mo>[</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>2</mn></mrow><mrow><mi>H</mi><mo>-</mo><mn>1</mn></mrow></munderover><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>2</mn></mrow><mrow><mi>W</mi><mo>-</mo><mn>1</mn></mrow></munderover><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mo>-</mo><mn>1</mn></mrow><mn>1</mn></munderover><msup><mrow><mo>(</mo><mi>S</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>-</mo><mi>S</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>+</mo><mi>k</mi><mo>)</mo></mrow><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mo>-</mo><mn>1</mn></mrow><mn>1</mn></munderover><msup><mrow><mo>(</mo><mi>S</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>-</mo><mi>S</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>+</mo><mi>k</mi><mo>)</mo></mrow><mo>)</mo></mrow><mn>2</mn></msup><mo>]</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow><mo></mo></mrow></mrow></math>]]></maths>公式(9)中的H为矩形区域S的高度,W为矩形区域S的宽度;步骤5:通过步骤2~步骤4计算出步骤1准备的所有虹膜灰度样本图像的瞳孔边缘峰态系数均值K和虹膜平均梯度能量E<sub>1</sub>,将每个虹膜灰度样本图像的这两个参数值组成特征向量<img file="FDA00001795833500034.GIF" wi="238" he="60" />设虹膜灰度样本图像的数量为Q,则共有Q个特征向量<img file="FDA00001795833500035.GIF" wi="311" he="60" />步骤6:将步骤5所述Q个特征向量<img file="FDA00001795833500036.GIF" wi="289" he="60" />作为支持向量输入支持向量机进行训练,确定最优分类面判别函数,具体包括以下步骤:步骤6-1:确定分类面准则函数:<maths num="0007"><![CDATA[<math><mrow><mi>L</mi><mrow><mo>(</mo><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>,</mo><mi>b</mi><mo>,</mo><mover><mi>&alpha;</mi><mo>&RightArrow;</mo></mover><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mrow><mo>(</mo><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>&CenterDot;</mo><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>)</mo></mrow><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>Q</mi></munderover><msub><mi>&alpha;</mi><mi>i</mi></msub><mo>{</mo><msub><mi>y</mi><mi>i</mi></msub><mo>[</mo><mrow><mo>(</mo><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>&CenterDot;</mo><mover><msub><mi>x</mi><mi>i</mi></msub><mo>&RightArrow;</mo></mover><mo>)</mo></mrow><mo>+</mo><mi>b</mi><mo>]</mo><mo>-</mo><mn>1</mn><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow></math>]]></maths>公式(10)中,<img file="FDA00001795833500042.GIF" wi="35" he="50" />表示分类面的权系数向量;b是分类的域值;<img file="FDA00001795833500043.GIF" wi="372" he="69" />α<sub>i</sub>为Lagrange系数且大于零;<img file="FDA00001795833500044.GIF" wi="36" he="62" />为第i个输入样本的特征向量(K,E<sub>1</sub>);y<sub>i</sub>为<img file="FDA00001795833500045.GIF" wi="36" he="63" />的样本标记,y<sub>i</sub>∈{+1,-1}分别表示<img file="FDA00001795833500046.GIF" wi="36" he="62" />为正样本或负样本;步骤6-2:计算<img file="FDA00001795833500047.GIF" wi="61" he="50" />b和<img file="FDA00001795833500048.GIF" wi="33" he="50" />的最优解<img file="FDA00001795833500049.GIF" wi="71" he="59" />b<sup>*</sup>和<img file="FDA000017958335000410.GIF" wi="83" he="69" />使得<img file="FDA000017958335000411.GIF" wi="192" he="62" />取得极小值;公式(10)是一个不等式约束下二次函数极值问题,存在唯一解;利用最优化理论中的外点法得到最优解<img file="FDA000017958335000412.GIF" wi="83" he="69" />其中i=1,2,….Q;令<maths num="0008"><![CDATA[<math><mrow><mfrac><mrow><mo>&PartialD;</mo><mi>L</mi><mrow><mo>(</mo><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>,</mo><mi>b</mi><mo>,</mo><mover><mi>&alpha;</mi><mo>&RightArrow;</mo></mover><mo>)</mo></mrow></mrow><mrow><mo>&PartialD;</mo><mover><mi>w</mi><mo>&RightArrow;</mo></mover></mrow></mfrac><mo>=</mo><mn>0</mn><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow></math>]]></maths>令<maths num="0009"><![CDATA[<math><mrow><mfrac><mrow><mo>&PartialD;</mo><mi>L</mi><mrow><mo>(</mo><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>,</mo><mi>b</mi><mo>,</mo><mover><mi>&alpha;</mi><mo>&RightArrow;</mo></mover><mo>)</mo></mrow></mrow><mrow><mo>&PartialD;</mo><mi>b</mi></mrow></mfrac><mo>=</mo><mn>0</mn><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow></math>]]></maths>求解方程(11)和(12),得到<img file="FDA000017958335000415.GIF" wi="35" he="50" />的最优解<img file="FDA000017958335000416.GIF" wi="68" he="61" />即最优分类面的权系数向量<img file="FDA000017958335000417.GIF" wi="47" he="59" />为:<maths num="0010"><![CDATA[<math><mrow><msup><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>*</mo></msup><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msup><msub><mi>&alpha;</mi><mi>i</mi></msub><mo>*</mo></msup><msub><mi>y</mi><mi>i</mi></msub><mover><msub><mi>x</mi><mi>i</mi></msub><mo>&RightArrow;</mo></mover><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>13</mn><mo>)</mo></mrow></mrow></math>]]></maths>b的最优解b<sup>*</sup>,即最优分类面的分类域值b<sup>*</sup>为:<maths num="0011"><![CDATA[<math><mrow><msup><mi>b</mi><mo>*</mo></msup><mo>=</mo><mfrac><mn>1</mn><msub><mi>y</mi><mi>i</mi></msub></mfrac><mo>-</mo><msup><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>*</mo></msup><mover><msub><mi>x</mi><mi>i</mi></msub><mo>&RightArrow;</mo></mover><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>14</mn><mo>)</mo></mrow></mrow></math>]]></maths>公式(13)、(14)中<img file="FDA000017958335000420.GIF" wi="37" he="63" />为任意的支持向量;步骤6-3:确定最优分类面判别函数:<maths num="0012"><![CDATA[<math><mrow><mi>f</mi><mrow><mo>(</mo><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mo>)</mo></mrow><mo>=</mo><mi>sgn</mi><mo>{</mo><mrow><mo>(</mo><msup><mover><mi>w</mi><mo>&RightArrow;</mo></mover><mo>*</mo></msup><mo>&CenterDot;</mo><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mo>)</mo></mrow><mo>+</mo><msup><mi>b</mi><mo>*</mo></msup><mo>}</mo><mo>=</mo><mi>sgn</mi><mo>{</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msup><msub><mi>&alpha;</mi><mi>i</mi></msub><mo>*</mo></msup><msub><mi>y</mi><mi>i</mi></msub><mrow><mo>(</mo><mover><msub><mi>x</mi><mi>i</mi></msub><mo>&RightArrow;</mo></mover><mo>&CenterDot;</mo><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mo>)</mo></mrow><mo>+</mo><msup><mi>b</mi><mo>*</mo></msup><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>15</mn><mo>)</mo></mrow></mrow></math>]]></maths>所述待测虹膜图像清晰度判别过程包括以下步骤:步骤7:先将与步骤1中虹膜灰度样本图像相同大小的待测虹膜图像转换成灰度格式,然后按照步骤2~步骤4所述方法计算待测虹膜灰度图像的瞳孔边缘峰态系数均值K和虹膜平均梯度能量E<sub>1</sub>,并组成一个特征向量<img file="FDA00001795833500051.GIF" wi="238" he="60" />最后把特征向量<img file="FDA00001795833500052.GIF" wi="215" he="60" />代入到公式(15)中,计算出的<img file="FDA00001795833500053.GIF" wi="96" he="62" />为1时,表明图像清晰;否则判定图像质量不合格。
地址 611731 四川省成都市高新区(西区)西源大道2006号