本发明涉及图像处理技术领域,特别是一种具有快速对齐算法的图像处理方法。
背景技术:
在医学图像处理领域中,离不开图像对齐算法。例如,生物医学领域,为了实现生物组织的三维重构,首先需要把生物样本制成切片并染色,然后用显微镜来拍摄,再做图像对齐(相同的组织得对齐)。图像对齐主要包括两步,首先找到图像中特征点的匹配,然后再通过这些对应的特征点来做图像形变,从而实现对齐效果。在医学图像处理领域,目前常用的特征匹配算法是siftflow,常用的图像形变算法是移动最小二乘。原来的匹配算法主要是基于边缘和角点的匹配,在算法精度和速度上都有待改进,对于有些特定图像的数据,比如生物的显微结构图,基于边缘和角点的匹配还达不到理想的匹配效果,因为要想实现生物组织结构良好的三维重构,不仅需要让生物样本的外轮廓有着光滑的对齐,还需要生物组织内部也有着光滑且连续的对齐,而原来的图像配准方法主要是基于边缘和角点的匹配。
技术实现要素:
本发明的目的在于提供一种具有快速对齐算法的图像处理方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种具有快速对齐算法的图像处理方法,包括以下步骤:
s1:对图像进行预处理,把灰度图转化为二值图,同时根据三维块匹配算法将图像分成不同大小的块,根据图像块之间的相似性,把具有相似结构的二维图像块组合在一起形成三维数组,然后用联合滤波的方法对这些三维数组进行处理,通过逆变换,把处理后的结果返回到原图像中,得到去噪后的图像;
s2:对图像关键点的提取,计算连通域并提取边缘,检测峰值点,将边缘角度量化为四个不同的区:
0区(水平方向):337.5°~22.5°或157.5°~202.5°;
1区(45度方向):22.5°~67.5°或202.5°~247.5°;
2区(垂直方向):67.5°~112.5°或247.5°~292.5°;
3区(135度方向):112.5°~157.5°或292.5°~337.5°,对不同区采用不同的邻域像素配置进行峰值检测;
s3:找到图像待匹配的边缘,角点和峰值点之后,再找出轮廓上的点的对应关系,用基于sift方法进行匹配,为了约束流向量,设计目标函数来从两幅sift特征图中估计siftflow,sift描述符能够通过流向量进行匹配,流场是平滑的,并且物体边界是不连续的;
s4:进行图像形变,图像变形是基于控制点集p和q的,p是控制点集,q是控制点集p的变形后的位置,应用形变函数f将原始图像中的控制点集p映射到形变图像中点集q的位置,并应用形变函数f在原始图像的每一点v上产生一个形变从而完成在特定约束下的图像变形。
优选的,图像的二值化是把图像的灰度值设置为0或255,整个图像用黑白显示,通过适当的阈值选择256个具有亮度级的灰度图像,获得反映图像整体和局部特征的二进制图像,所有灰度大于或等于阈值的像素确定为属于特定对象,其灰度值为255,灰色值为0,表示背景或其他对象区域。
优选的,三维块匹配算法包括以下步骤,对一幅加噪图像,连续地取出参考块,对每一个参考块,执行以下操作:
s1:基础估计:
(1)对含噪图像中的每一块逐块估计;
1)分组,找到它的相似块然后把它们聚集到一个三维数组;
2)联合硬阈值,对形成的三维数组进行三维变换,通过对变换域的系数进行硬阈值处理减弱噪声,然后逆变换得到组中所有图像块的估计,然后把这些估计值返回到它们的原始位置;
(2)聚集,对得到的有重叠的块估计,通过对他们进行加权平均得到真实图像的基础估计;
s2:最终估计:
(1)对基础估计图像中的每一块逐块估计;
1)分组,通过块匹配找到与它相似的图像块在基础估计图像中的位置,通过这些位置得到两个三维数组,一个是从含噪图像中得到的,一个是从基础估计图像中得到的;
2)联合滤波,对形成的两个三维数组均进行三维变换,以基础估计图像中的能量谱作为能量谱对含噪三维数组进行维纳滤波,然后逆变换得到组中所有图像块的估计,然后把这些估计值返回到他们的原始位置;
(2)聚集,对得到的有重叠的局部块估计,通过对它们进行加权平均得到真实图像的最终估计。
优选的,遍历边缘幅值图像和边缘角度图像,峰值检测步骤如下:
s1:邻域配置判断:
根据边缘角度,计算其所在分区
其中0°≤θ<360°;int{·}为取整运算符;%为取模运算符,即计算两整数相除的余数,对8位表示的角度图像,计算式改为
其中0≤θ<255,n即为边缘角度值所对应的分区;
s2:峰值检测,当前边缘点的幅值为s,两相邻边缘点的幅值分别为s1和s2,峰值点判据为s>s1,且s≥s2;
否则幅值置为0。
优选的,siftflow能量方程定义如下式:
e(w)=∑p(||s1(p)-s2(p+w(p))||1,t)+∑pη(|u(p)|+
|v(p)|)+∑(p,q)∈εmin(α|u(p)-u(q)|,d)+min(α|v(p)-v(q)|,d)
其中w=(u,v),u(p),v(p)分别表示图像在p点处的水平位移和竖直位移,s,-1.(p)表示第一张图在p点处的光流,(p,q)∈ε表示p,q两点在一幅图像中的一个ε领域内,第一项是数据项,它约束sift描述符,由它建立的匹配能够符合流向量的规则,即物体的描述符差别最小,第二项是偏移项,该项使得流向量尽可能小,第三项是平滑项,约束使得毗邻像素的光流向量不至于偏差过大,水平层u与竖直层v在相同的坐标系内,数据项连接着相同位置的像素。信息传播时,首先更新u和v的层内信息,然后再更新层间信息,因为目标函数由l1范数来表示,因而可以使用距离变换函数来进一步降低时间复杂度。
优选的,有效地图像变形,形变函数f需要满足如下三个条件:
(1)平滑性:f要产生具有平滑特性的形变;
(2)插值性:函数f需要将控制点集p直接映射到点集q上,即f(pi)=qi;
(3)确定性:若控制点p和控制点q相同,那么f应该是一个确定的函数,即:
本发明的技术效果和优点:本发明依据生物显微结构的特点,提出了一种基于边缘,角点以及图像中的峰值点的特征匹配方法,以及基于局部权重的移动最小二乘图像形变算法,而图像配准是生物组织结构三维重建过程中的一个非常重要的环节,为进一步的生物,医学的研究提供了直观的物理模型。
附图说明
图1为本发明的峰值检测邻域配置示意图。
图2为本发明的sift描述符示意图。
图3为本发明的边缘点及峰值点的匹配关系示意图。
具体实施方式
下面将结合附图1-3对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种具有快速对齐算法的图像处理方法:包括对图像进行预处理,把灰度图转化为二值图,同时根据三维块匹配算法将图像分成不同大小的块,根据图像块之间的相似性,把具有相似结构的二维图像块组合在一起形成三维数组,然后用联合滤波的方法对这些三维数组进行处理,通过逆变换,把处理后的结果返回到原图像中,得到去噪后的图像;
如图1所示,对图像关键点的提取,计算连通域并提取边缘,检测峰值点,将边缘角度量化为四个不同的区:0区(水平方向):337.5°~22.5°或157.5°~202.5°;1区(45度方向):22.5°~67.5°或202.5°~247.5°;2区(垂直方向):67.5°~112.5°或247.5°~292.5°;3区(135度方向):112.5°~157.5°或292.5°~337.5°。对不同区采用不同的邻域像素配置进行峰值检测,遍历边缘幅值图像和边缘角度图像,峰值检测步骤如下:
s1:邻域配置判断:
根据边缘角度,计算其所在分区
其中0°≤θ<360°;int{.}为取整运算符;%为取模运算符,即计算两整数相除的余数,对8位表示的角度图像,计算式改为
其中0≤θ<255,n即为边缘角度值所对应的分区;
s2:峰值检测,当前边缘点的幅值为s,两相邻边缘点的幅值分别为s1和s2,峰值点判据为s>s1,且s≥s2;
否则幅值置为0;
如图2所示,找到图像待匹配的边缘,角点和峰值点之后,再找出轮廓上的点的对应关系,用基于sift方法进行匹配,sift描述符是一种描述局部的梯度信息的描述符。在siftflow中只使用它的特征提取的部分。为了构建sift描述符,首先要将每个像素点的16×16邻域划分为4×4的部分,然后将每个小部分里的梯度量化叠加到8个方向上。这样就得到了一个4×4×8=128维的一个特征向量。这个128维向量就作为一个像素的sift描述符。然后对每个像素点都进行这样的计算获得描述符,这样就可以获得稠密的sift描述符,图2计算像素点的16×16邻域里每个像素点梯度,将这16×16范围划分为4×4的方格,将每个方格的梯度叠加量化到8个方向,为了约束流向量,设计目标函数来从两幅sift特征图中估计siftflow,sift描述符能够通过流向量进行匹配,流场是平滑的,并且物体边界是不连续的,siftflow能量方程定义如下式:
e(w)=∑p(||s1(p)-s2(p+w(p))||1,t)+∑pη(|u(p)|+
|v(p)|)+∑(p,q)∈εmin(α|u(p)-u(q)|,d)+min(α|v(p)-v(q)|,d)
其中w=(u,v),u(p),v(p)分别表示图像在p点处的水平位移和竖直位移,s,-1.(p)表示第一张图在p点处的光流,(p,q)∈ε表示p,q两点在一幅图像中的一个ε领域内,第一项是数据项,它约束sift描述符,由它建立的匹配能够符合流向量的规则,即物体的描述符差别最小,第二项是偏移项,该项使得流向量尽可能小,第三项是平滑项,约束使得毗邻像素的光流向量不至于偏差过大,水平层u与竖直层v在相同的坐标系内,数据项连接着相同位置的像素。信息传播时,首先更新u和v的层内信息,然后再更新层间信息,因为目标函数由l1范数来表示,因而可以使用距离变换函数来进一步降低时间复杂度;
进行图像形变,图像变形是基于控制点集p和q的,p是控制点集,q是控制点集p的变形后的位置,应用形变函数f将原始图像中的控制点集p映射到形变图像中点集q的位置,并应用形变函数f在原始图像的每一点v上产生一个形变从而完成在特定约束下的图像变形,图像的二值化是把图像的灰度值设置为0或255,整个图像用黑白显示,通过适当的阈值选择256个具有亮度级的灰度图像,获得反映图像整体和局部特征的二进制图像,所有灰度大于或等于阈值的像素确定为属于特定对象,其灰度值为255,灰色值为0,表示背景或其他对象区域,给定
其中:ωi=||v-pi||-2α,pi∈pv(k),qi∈qv(k),
该正则项的作用是加强光滑性,这个方法被称作局部权重的移动最小二乘(lw-mls),对于每个不同的像素点v,我们需要得到不同的位移函数
对应的形变函数为
fv(p)=p+hv(p)
由于这里的点p的个数从原来的n减少为k(k<<n)这样,图像形变的计算复杂度成功的从o(l·n3)降低到了o(l·k3),预处理之后的复杂度从o(l·n)降到了o(l·k).,其中l表示网格点个数,k表示每个像素点所受影响的控制点个数。
三维块匹配算法包括以下步骤,对一幅加噪图像,连续地取出参考块,对每一个参考块,执行以下操作:
s1:基础估计:
(1)对含噪图像中的每一块逐块估计;
1)分组,找到它的相似块然后把它们聚集到一个三维数组;
2)联合硬阈值,对形成的三维数组进行三维变换,通过对变换域的系数进行硬阈值处理减弱噪声,然后逆变换得到组中所有图像块的估计,然后把这些估计值返回到它们的原始位置;
(2)聚集,对得到的有重叠的块估计,通过对他们进行加权平均得到真实图像的基础估计;
s2:最终估计:
(1)对基础估计图像中的每一块逐块估计;
1)分组,通过块匹配找到与它相似的图像块在基础估计图像中的位置,通过这些位置得到两个三维数组,一个是从含噪图像中得到的,一个是从基础估计图像中得到的;
2)联合滤波,对形成的两个三维数组均进行三维变换,以基础估计图像中的能量谱作为能量谱对含噪三维数组进行维纳滤波,然后逆变换得到组中所有图像块的估计,然后把这些估计值返回到他们的原始位置;
(2)聚集,对得到的有重叠的局部块估计,通过对它们进行加权平均得到真实图像的最终估计。
有效地图像变形,形变函数f需要满足如下三个条件:
(1)平滑性:f要产生具有平滑特性的形变;
(2)插值性:函数f需要将控制点集p直接映射到点集q上,即f(pi)=qi;
(3)确定性:若控制点p和控制点q相同,那么f应该是一个确定的函数,即:
如图3所示,经过图像的预处理,把灰度图二值化,用全变分(tv)方法进行图像去噪,接下来计算图像连通域并用prewitt算子提取边缘,再进行峰值检测,于是可以得到待匹配的特征点,对这些点做sift匹配,得到匹配关系之后就很容易算出匹配点的相对位移。再用基于局部权重的移动最小二乘图像形变算法做图像形变,实现了图像的快速且高精度的对齐。
以上结合附图对发明的实施方式作了详细说明,但发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入发明的保护范围内。