基于接触式图像传感器的多谱段图像重建方法及系统
技术领域
本发明涉及线阵相机图像处理领域,具体涉及基于接触式图像传感器的多谱段图像处理及重建方法及系统。
背景技术
随着信息技术的发展,机器视觉技术在检测领域的应用越来越广、可靠性越来越高、检测速度越来越快,已经成为众多领域不可或缺的技术手段。其中在表面检测领域中,接触式图像传感器得到了广泛的应用。然而,由于表面检测对待测的图像分辨率要求很高,分辨率的高低直接影响了表面检测技术的效果,但分辨率的提高也同时意味着成本的上升,而这显然与采用接触式图像传感器控制成本的初衷相悖。为了解决这一问题,本专利探寻了一种结合接触式图像传感器成像方式进行多谱段图像重建从而获得更高分辨率图像的方法,力求在同等的分辨率情况下获得更高分辨率图像。现有的对图像进行重建的专利(包括发明授权专利和发明公布专利)如下:
申请号201010238674.7,“一种高分辨率视频图像重建方法”,此方法的思想是对视频中的图像进行插值,并利用运动矢量集对被插值点进行运动补偿,从而获得重建后的高分辨率视频图像。此方法需要多帧图像提供互补信息,从而实现单帧图像的重建,然而在表面检测的应用中无法获取单一被测表面的多帧视频图像,每一被测表面仅有一张图像,因此该方法不适用于接触式图像传感器采集的多谱段图像的重建。
申请号201310522407.6,“图像重建方法及装置”,此方法的思想是采用压缩感知的思想,利用观测矩阵与原图像之间的关系来重建原图像,获取更高分辨率的图像。此方法需使用特定的装置采集图像,不适用于接触式图像传感器采集的多谱段图像的重建。
申请号201410212391.0,“低分辨率红外图像重建高分辨率红外图像的方法”,此方法的思想是利用同场景高分辨率的可见光图像的高频信息重建对应的红外图像,使得重建后的红外图像拥有高频细节及清晰的边缘。此方法需要低分辨率的红外图像拥有对应的高分辨率可见光图像,然而接触式图像传感器所获取的所有谱段图像均为低分辨率图像,无法提供高频细节,因此该方法不适用于接触式图像传感器采集的多谱段图像的重建。
因此,探寻一种结合接触式图像传感器成像方式进行多谱段重建从而获得更高分辨率图像的软件方法,必将推动表面检测领域的发展。
发明内容
本发明提供一种基于接触式图像传感器多谱段图像重建技术方案,能够结合各谱段的信息,获得纵向分辨率更高的多谱段图像,应用于接触式图像传感器所采集的多谱段图像。
本发明技术方案提供一种基于接触式图像传感器的多谱段图像重建方法,依次包括前去噪阶段、重建阶段和后去噪阶段,
所述前去噪阶段和后去噪阶段,分别包括如下步骤,
步骤1.1,首先获取n个谱段图像,前去噪阶段是利用接触式图像传感器获取n个谱段图像,后去噪阶段是利用重建阶段所得所有谱段的处理后的完整图像;
步骤1.2,对每一个谱段的图像分别进行处理,将单谱段图像切分成m×m像素的小块,同时相邻小块间有s像素的重叠区域,m和s为预设的取值;
步骤1.3,非局部自相似块搜索,包括对每一个小块寻找同谱段中以该小块为中心的W×W像素区域中的k个最相似的小块,k为预设的取值;
步骤1.4,将k个最相似小块的列向量形式x1、x2…xk串接起来形成图像矩阵,记为Xk×M,对图像矩阵Xk×M进行奇异值分解得到特征值λ、特征向量μ以及特征矩阵U;对特征值进行降序排列,保留前r个较大的特征值使得特征根的能量积值参数大于预设阈值;将特征矩阵与保留的特征值相乘得到去噪后的图像矩阵X′k×M;
步骤1.5,将图像矩阵X′k×M中的小块恢复至对应位置,并拼成完整的图像,对于重叠部分的图像取各小块重叠部位像素灰度值的平均值;
所述重建阶段包括如下步骤,
步骤2.1,设图像纵向是接触式图像传感器与被摄物之间发生相对运动的方向,首先输入接触式图像传感器多谱段图像,然后对各个谱段图像纵向插值放大,根据传感器发光顺序对n个谱段的图像进行排序;
步骤2.2,将各个谱段图像切分为小块图像,对每一个谱段的图像进行分别处理,对单谱段图像切分成a×a像素的小块,a为n的整数倍,
步骤2.3,将n个谱段图像的同一位置的小块形成一个集合,记为C,则
C={c1,c2,…,cn}
所述ci为第i个谱段的图像小块;
对每一个小块求其直方图分布,得到直方图分布集合,记为H,则
H={h1,h2,…,hn}
所述hi为第i个谱段图像小块的直方图分布向量;
步骤2.4,对n个谱段同一位置的图像块依次处理,处理第i个谱段的图像块ci时,将其它n-1个谱段的图像块进行直方图拉伸,使其直方图范围与第i个谱段的图像块的直方图范围一致;直方图拉伸使用如下公式,
所述cj为其余n-1个谱段中的第j个谱段的小块,c′j为cj的拉伸结果,maxi和maxj分别为ci和cj中的最大灰度级,mini和minj分别为ci和cj中的最小灰度级;最终得到关于第i个谱段的处理后图像块集合,记为C′i,则
C′i={c′1,c′2,...,ci,...,c′n}
步骤2.5,对处理后图像块集合C′i进行处理,取第l个图像小块中的第(l+n×d)行,将取出的各行按顺序拼接在一起,得到处理后的第i个谱段的图像小块,l=1,2,…,n,d为使(l+n×d)不大于a的任意整数;
步骤2.6,将同谱段的处理后的图像小块按原顺序拼在一起,得到所有谱段的处理后的完整图像。
而且,n=3。
而且,步骤2.1中,对各谱段图像每两行之间进行线性插值处理,其纵向分辨率增大为原图的n倍,并保证第i个谱段的图像的原始数据位于放大图像的第(i+n×d)行,d=1,2,…,N,N为原图行像素数。
本发明相应提供一种基于接触式图像传感器的多谱段图像重建系统,包括前去噪模块、重建模块和后去噪模块,
所述前去噪模块和后去噪模块,分别包括如下单元,
第一单元,用于首先获取n个谱段图像,前去噪模块的第一单元是利用接触式图像传感器获取n个谱段图像,后去噪模块的第一单元是利用重建模块所得所有谱段的处理后的完整图像;
第二单元,用于对每一个谱段的图像分别进行处理,将单谱段图像切分成m×m像素的小块,同时相邻小块间有s像素的重叠区域,m和s为预设的取值;
第三单元,用于非局部自相似块搜索,包括对每一个小块寻找同谱段中以该小块为中心的W×W像素区域中的k个最相似的小块,k为预设的取值;
第四单元,用于将k个最相似小块的列向量形式x1、x2…xk串接起来形成图像矩阵,记为Xk×M,对图像矩阵Xk×M进行奇异值分解得到特征值λ、特征向量μ以及特征矩阵U;对特征值进行降序排列,保留前r个较大的特征值使得特征根的能量积值参数大于预设阈值;将特征矩阵与保留的特征值相乘得到去噪后的图像矩阵X′k×M;
第五单元,用于将图像矩阵X′k×M中的小块恢复至对应位置,并拼成完整的图像,对于重叠部分的图像取各小块重叠部位像素灰度值的平均值;
所述重建模块包括如下子单元,
第一子单元,用于设图像纵向是接触式图像传感器与被摄物之间发生相对运动的方向,首先输入接触式图像传感器多谱段图像,然后对各个谱段图像纵向插值放大,根据传感器发光顺序对n个谱段的图像进行排序;
第二子单元,用于将各个谱段图像切分为小块图像,对每一个谱段的图像进行分别处理,对单谱段图像切分成a×a像素的小块,a为n的整数倍,
第三子单元,用于将n个谱段图像的同一位置的小块形成一个集合,记为C,则
C={c1,c2,…,cn}
所述ci为第i个谱段的图像小块;
对每一个小块求其直方图分布,得到直方图分布集合,记为H,则
H={h1,h2,…,hn}
所述hi为第i个谱段图像小块的直方图分布向量;
第四子单元,用于对n个谱段同一位置的图像块依次处理,处理第i个谱段的图像块ci时,将其它n-1个谱段的图像块进行直方图拉伸,使其直方图范围与第i个谱段的图像块的直方图范围一致;直方图拉伸使用如下公式,
所述cj为其余n-1个谱段中的第j个谱段的小块,c′j为cj的拉伸结果,maxi和maxj分别为ci和cj中的最大灰度级,mini和minj分别为ci和cj中的最小灰度级;最终得到关于第i个谱段的处理后图像块集合,记为C′i,则
C′i={c′1,c′2,...,ci,...,c′n}
第五子单元,用于对处理后图像块集合C′i进行处理,取第l个图像小块中的第(l+n×d)行,将取出的各行按顺序拼接在一起,得到处理后的第i个谱段的图像小块,l=1,2,…,n,d为使(l+n×d)不大于a的任意整数;
第六子单元,用于将同谱段的处理后的图像小块按原顺序拼在一起,得到所有谱段的处理后的完整图像。
而且,n=3。
而且,第一子单元中,对各谱段图像每两行之间进行线性插值处理,其纵向分辨率增大为原图的n倍,并保证第i个谱段的图像的原始数据位于放大图像的第(i+n×d)行,d=1,2,…,N,N为原图行像素数。
本发明为一种关于接触式图像传感器多谱段图像的重建技术方案,对接触式图像传感器多个谱段的图像进行重建,最终获得所处理谱段的更高分辨率图像,计算量小,便于硬件快速实现,图像重建效果好,实时性好。
本发明的有益效果是:
1、可以充分利用接触式图像传感器多谱段图像的各谱段信息,并提高所有谱段图像的纵向分辨率;
2、重建过程仅需进行线性映射,效率高;
3、适用性好。
附图说明
图1为本发明实施例的基于接触式图像传感器多谱段图像重建方法流程图。
图2为本发明实施例的重建过程中当n=3,j=2的情况下第1谱段和第3谱段的示意图。
具体实施方式
为了能更清晰地理解本发明,以下结合附图和具体实施例对本发明进行详细说明。
本发明实施例的整个重建过程包括前去噪阶段、重建阶段、后去噪阶段三个步骤:其中,前去噪阶段和后去噪阶段,两去噪阶段过程相同,去噪过程包括:图像分块、非局部自相似块搜索、奇异值分解去噪、图像块拼合;重建过程包括:图像分块、对各谱段图像块进行直方图拉伸、图像块拼合。
如图1,本发明实施例首先获取接触式图像传感器采集的包含红绿蓝3个谱段的图像,利用SVD方法对其进行去噪处理,得到无噪的3谱段图像;然后对各段图像切块,对于同一位置的3谱段图像小块,利用直方图范围拉伸分别重建各小块,将所有小块按原顺序拼合在一起后得到重建后的3谱段图像;最后利用SVD方法对3个谱段的图像分别进行去噪处理,消除重建中引入的噪声,得到无噪的重建后3谱段图像。
实施例具体的实施方式如下:
一、前去噪阶段:
前去噪阶段包括如下步骤:
步骤1.1:首先利用接触式图像传感器获取n个谱段图像:实施例中n=3,即利用接触式图像传感器获取3个谱段图像;
具体实施时,n的取值根据情况而定,例如还可能有红外、紫外等谱段;
步骤1.2:对每一个谱段的图像分别进行处理,将单谱段图像切分成m×m像素的小块,同时相邻小块间有s像素的重叠区域;具体实施时,本领域技术人员可自行设定m和s的取值;
步骤1.3:非局部自相似块搜索:对每一个小块寻找其同谱段中以该小块为中心的W×W像素区域中的k个最相似的小块,相似度通过欧几里得距离进行度量,其计算方法如下:
其中,x和y为需要度量相似度的两个图像小块的列向量形式,xi为x小块的第i个像素点,yi为y小块的第i个像素点,M为一个小块的总像素数,M=m×m;具体实施时,本领域技术人员可自行设定k的取值;
步骤1.4:将k个最相似小块的列向量形式x1、x2…xk串接起来形成图像矩阵,记为Xk×M,则
Xk×M=[x1x2…xk]
对图像矩阵Xk×MX进行SVD分解(奇异值分解)得到特征值λ、特征向量μ以及特征矩阵U;对特征值进行降序排列,保留前r个较大的特征值使得特征根的能量积值参数大于预设阈值,具体实施时,本领域技术人员可自行设定取值,建议取值范围在80%到95%之间,例如90%;将特征矩阵与保留的r个特征值相乘得到去噪后的图像矩阵X′k×M;
步骤1.5:将图像矩阵X′k×M中的小块恢复至对应位置,并拼成完整的图像,对于重叠部分的图像取各小块重叠部位像素灰度值的平均值。
二、重建阶段
重建阶段包括如下步骤:
步骤2.1:首先设图像纵向是接触式图像传感器与被摄物之间发生相对运动的方向,输入接触式图像传感器多谱段图像,参见图1中S101,如果将相对运动方向设为横向,处理方式等同,后续进行横向插值和列合并即可;
然后对各个谱段图像纵向插值放大,参见图1中S102:
根据传感器发光顺序对n个谱段的图像进行排序,对n个谱段的图像进行分别处理,对单谱段图像每两行之间进行线性插值处理,使其纵向分辨率增大为原图的n倍,对第i个谱段的图像,原图的第1行位于处理后图像的第j行,若j>i,则删除前(j-i)行,并在最后1行之后复制(j-i)次最后1行,若j<i,则在第1行之前复制(i-j)次第一行并删除最后(i-j)行,使得第i个谱段的图像的原始数据位于处理后图像的第(i+n×d)行,d=1,2,…,D,D为原图行像素数,从而保证重建图像时每一行图像都能对应一个谱段的原始数据;见图2当n=3,j=2的情况下第1谱段和第3谱段的示意图。
实施例根据传感器发光顺序对3个谱段的图像进行排序,本实施例中传感器发光顺序为红、蓝、绿,对3个谱段的图像进行分别处理,对单谱段图像每两行之间进行线性插值处理,使其纵向分辨率增大为原图的3倍,并保证第i个谱段的图像的原始数据位于放大图像的第(i+n×d)行,d=1,2,…,N,N为原图行像素数;
参见图2,设n=3,j=2的情况下第1谱段和第3谱段的示意图,N行经插值处理后变为3N行,以第1谱段为例,第一幅为原图,第二幅是插值后的图像,第三幅是做复制和删除操作以后的图像,原图的第1行位于处理后图像的第2行,因为j>i,则删除第1行,并在最后1行之后复制(j-i)次最后1行,使得第1个谱段的图像的原始数据位于处理后图像的第(1+3d)行,d=1,2,…,N,N为原图行像素数,如第1谱段处理后处于,从而保证重建图像时每一行图像都能对应一个谱段的原始数据。
步骤2.2:将各个谱段图像切分为小块图像,参见图1中S103:对每一个谱段的图像进行分别处理,对单谱段图像切分成a×a像素的小块,a为n的整数倍:×
实施例中a=6,即对每一个谱段的图像进行分别处理,对单谱段图像切分成6×6像素的小块。
步骤2.3:对每个小块图像计算其直方图分布,参见图1中S104:将n个谱段图像的同一位置的小块形成一个集合,记为C,则
C={c1,c2,…,cn}
所述ci为第i个谱段的图像小块;对每一个小块求其直方图分布,得到直方图分布集合,记为H,则
H={h1,h2,…,hn}
所述hi为第i个谱段图像小块的直方图分布向量。
实施例中,将3个谱段图像的同一位置的小块形成一个集合,记为C,为便于标记起见,下标直接采用R、G、B,则
C={cR,cB,cG}
其中cR为红光谱段的图像小块,cB为蓝光谱段的图像小块,cG为绿光谱段的图像小块;对每一个小块求其直方图分布,得到直方图分布集合,记为H,则
H={hR,hB,hG}
其中hR为红光谱段图像小块的直方图分布向量,hB为蓝光谱段图像小块的直方图分布向量,hG为绿光谱段图像小块的直方图分布向量。
步骤2.4:对n个谱段的图像块同一位置的依次处理,处理第i个谱段的图像块ci时,将其它n-1个谱段的图像块进行直方图拉伸,使其直方图范围与第i个谱段的图像块的直方图范围一致;直方图拉伸使用如下公式:
所述cj为其余n-1个谱段中的第j个谱段的小块,c′j为cj的拉伸结果,maxi和maxj分别为ci和cj中的最大灰度级,mini和minj分别为ci和cj中的最小灰度级;最终得到关于第i个谱段的处理后图像块集合,记为C′i,则
C′i={c′1,c′2,…,ci,…,c′n}
实施例对3个谱段的图像块依次处理,以红光谱段图像块cR的重建为例,将蓝光谱段的图像块cB和绿光谱段的图像块cG分别进行直方图拉伸,使其直方图范围与红光谱段图像块cR的直方图范围一致;直方图拉伸使用如下公式:
其中cj为其余n-1个谱段中的第j个谱段的小块,maxi和maxj分别为ci和cj中的最大灰度级,mini和minj分别为ci和cj中的最小灰度级;
其中,j=1,2,3,分别代表红光谱段、蓝光谱段、绿光谱段;以j=1为例,最终得到关于红光谱段的处理后图像块集合,记为C′R,则
C′R={cR,c′G,c′B}
其中,所述cR为红光谱段的小块,c′G,c′B为绿光谱段的小块、蓝光谱段的小块的拉伸结果。
步骤2.5:图像块拼合:对处理后图像块集合C′i进行处理,取第l个图像小块中的第(l+n×d)行(l=1,2,…,n,d为使(l+n×d)不大于a的任意整数),将取出的各行按顺序拼接在一起,即得处理后的第i个谱段的图像小块:
实施例中,以红光谱段图像块cR的重建为例,对处理后图像块集合C′R进行处理,取cR中的第1、4行,c′B中的第2、5行,c′G中的第3、6行,将6行按原顺序拼接在一起,即得到处理后的红光谱段的图像小块。
步骤2.6:将同谱段的处理后的图像小块按原顺序拼在一起,得到所有谱段的处理后的完整图像。
具体实施时,步骤2.4~2.6可针对各频段依次进行,参见图1中S105~S109。包括以下步骤:
选择一个谱段进行重建,处理该谱段的某图像块ci时,将其它n-1个谱段的图像块进行直方图拉伸,即根据像素灰度做线性映射,使其直方图范围与第i个谱段的待处理图像块的直方图范围一致;
对同一位置的所有谱段小块图像,取其反应真实数据的一行,按谱段的发光顺序拼接在一起,得到重建后的待处理谱段图像小块;
将重建后的图像小块按原顺序拼接在一起,得到重建后的特定谱段图像;
判断是否所有谱段全部重建完毕,是则输出重建后的接触式传感器多谱段高分辨率图像,否则返回选下一个谱段进行重建。
三、后去噪阶段
再次执行步骤1.1~步骤1.5,即可完成后去噪阶段。唯一区别在于,步骤1.1是根据步骤2所得所有谱段的处理后的完整图像。
具体实施时,本发明所提供方法可基于软件技术实现自动运行流程,也可采用模块化方式实现相应系统。
本发明相应提供一种基于接触式图像传感器的多谱段图像重建系统,包括前去噪模块、重建模块和后去噪模块,
所述前去噪模块和后去噪模块,分别包括如下单元,
第一单元,用于首先获取n个谱段图像,前去噪模块的第一单元是利用接触式图像传感器获取n个谱段图像,后去噪模块的第一单元是利用重建模块所得所有谱段的处理后的完整图像;
第二单元,用于对每一个谱段的图像分别进行处理,将单谱段图像切分成m×m像素的小块,同时相邻小块间有s像素的重叠区域,m和s为预设的取值;
第三单元,用于非局部自相似块搜索,包括对每一个小块寻找同谱段中以该小块为中心的W×W像素区域中的k个最相似的小块,k为预设的取值;
第四单元,用于将k个最相似小块的列向量形式x1、x2…xk串接起来形成图像矩阵,记为Xk×M,对图像矩阵Xk×M进行奇异值分解得到特征值λ、特征向量μ以及特征矩阵U;对特征值进行降序排列,保留前r个较大的特征值使得特征根的能量积值参数大于预设阈值;将特征矩阵与保留的特征值相乘得到去噪后的图像矩阵X′k×M;
第五单元,用于将图像矩阵X′k×M中的小块恢复至对应位置,并拼成完整的图像,对于重叠部分的图像取各小块重叠部位像素灰度值的平均值;
所述重建模块包括如下子单元,
第一子单元,用于设图像纵向是接触式图像传感器与被摄物之间发生相对运动的方向,首先输入接触式图像传感器多谱段图像,然后对各个谱段图像纵向插值放大,根据传感器发光顺序对n个谱段的图像进行排序;
第二子单元,用于将各个谱段图像切分为小块图像,对每一个谱段的图像进行分别处理,对单谱段图像切分成a×a像素的小块,a为n的整数倍,
第三子单元,用于将n个谱段图像的同一位置的小块形成一个集合,记为C,则
C={c1,c2,…,cn}
所述ci为第i个谱段的图像小块;
对每一个小块求其直方图分布,得到直方图分布集合,记为H,则
H={h1,h2,…,hn}
所述hi为第i个谱段图像小块的直方图分布向量;
第四子单元,用于对n个谱段同一位置的图像块依次处理,处理第i个谱段的图像块ci时,将其它n-1个谱段的图像块进行直方图拉伸,使其直方图范围与第i个谱段的图像块的直方图范围一致;直方图拉伸使用如下公式,
所述cj为其余n-1个谱段中的第j个谱段的小块,c′j为cj的拉伸结果,maxi和maxj分别为ci和cj中的最大灰度级,mini和minj分别为ci和cj中的最小灰度级;最终得到关于第i个谱段的处理后图像块集合,记为C′i,则
C′i={c′1,c′2,…,ci,…,c′n}
第五子单元,用于对处理后图像块集合C′i进行处理,取第l个图像小块中的第(l+n×d)行,将取出的各行按顺序拼接在一起,得到处理后的第i个谱段的图像小块,l=1,2,…,n,d为使(l+n×d)不大于a的任意整数;
第六子单元,用于将同谱段的处理后的图像小块按原顺序拼在一起,得到所有谱段的处理后的完整图像。
各模块具体实现可参见相应步骤,本发明不予赘述。
上述实施例并不代表本发明的全部应用。凡在本发明的精神和原则之内,所做的各种变化、修改,均在本发明的保护范围之内。