多相机拼接的亮度调整方法、装置及便携式终端与流程

文档序号:16540477发布日期:2019-01-08 20:20阅读:308来源:国知局
多相机拼接的亮度调整方法、装置及便携式终端与流程

本发明属于图像处理领域,尤其涉及一种多相机拼接的亮度调整方法、装置及便携式终端。



背景技术:

随着计算机技术和图像处理技术的不断发展,多相机图像拼接技术得到了越来越广泛的应用,如虚拟现实和全景图像等。在获取全景图像时,多相机图像拼接一般需要相机在同一时刻从不同角度进行拍摄,而且相邻图像之间要有重叠区域,通过重叠区域同名控制点对,利用图像匹配方法计算图像变换矩阵,从而拼接成一幅全景图像。

在多相机全景拼接中,每个相机视场内的场景亮度不一致,为了拍摄更多的细节,需要每个相机独立曝光。但独立曝光后,相邻两个相机在重叠区域的图像的亮度存在较大的差异。如果对这些图像直接进行拼接,拼接的全景图像在图像重叠区域会存在亮度差异明显的接缝线,从而影响全景图像的视觉和美观效果。

现有的一些方法在消除图像拼接的亮度差异时,采用公共区域内颜色通道的颜色平均值来对多图像进行线性调整,如授权号为cn102542548b的中国专利,公开了一种图像间颜色校正方法和装置,在该技术中,根据获取的两幅图像分别在公共区域内颜色通道的颜色平均值,确定图像之间在颜色通道上的线性关系后,然后根据该线性关系,校正两幅图像全图像上的像素点在所述颜色通道上的颜色值。上述方法在处理亮度差异较大的图像时,效果较差,会使图像中不在公共区域的像素也受到较大的改变,影响视觉效果。

因此,非常有必要进行多相机图像拼接的亮度分布不均问题的处理方法的研究。



技术实现要素:

本发明提出一种多相机拼接的亮度调整方法、装置及便携式终端,旨在消除重叠区域的亮度差异,同时能保持图像亮处和暗处细节不变,较好的改善全景图像的视觉效果。

第一方面,本发明提供了一种多相机拼接的亮度调整方法,所述方法包括:

获取六个相机的六幅原始图像并展开成经纬度图像,获取对应的六组重叠区域图像;

对每个相机的原始图像用亮度映射函数映射,计算所述的六组重叠区域图像的亮度差异之和,作为总误差;

分别调整每个相机的亮度映射函数,使所述的总误差最小,得到最优亮度映射函数;

使原始图像中暗部最亮的图像保持不变,调整最优映射函数并映射所有原始图像进行全景拼接,生成暗全景拼接图;

使原始图像中亮部最暗的图像保持不变,调整最优映射函数并映射所有原始图像进行全景拼接,生成亮全景拼接图;

融合暗全景拼接图与亮全景拼接图,生成全景拼接图像。

进一步的,所述的六组重叠区域图像由六目全景相机同时独立曝光拍摄的六幅原始图像组成,所述的六幅原始图像为六幅鱼眼图像;六幅鱼眼图像展开的经纬度图之间形成六组重叠区域图像,对所述的六组重叠区域图像标记为si[i]与ri[i],i=1~6,其中,si[i]与ri[i]为一对重叠区域图像,si[i]拍摄于第i个相机,当i=1~5时,ri[i]拍摄于第i+1个相机,当i=6时,ri[6]拍摄于第1个相机。

进一步的,所述的亮度映射函数,具体为:

公式(1)中a,b,c满足:

f(128)=128k(2)

f'(128)=k(3)

f(255)=255(4)

上述公式(2)、公式(3)和公式(4)中k为初始值,可设初始值为1,x为像素的值,x∈[0,255],从而确定整个映射函数。

进一步的,所述的计算六组重叠区域图像的亮度差异之和作为总误差,具体为:

对每个重叠区域的两幅图像si[i]与ri[i],统计两幅图像的亮度直方图sh[i]与rh[i];

分别计算每个重叠区域的两幅图像的累积直方图ss[i]和rs[i];

用直方图规定化的方法,将ss[i]向rs[i]对齐,得到亮度映射函数smap[i],反之,将rs[i]向ss[i]对齐,得到映射函数rmap[i];

采用公式(5):

计算六个相机图像的总亮度误差,公式(5)中:v2=smap[v],v3=rmap[v],则六个相机的总亮度误差为:

进一步的,所述的最优亮度映射函数具体计算方法为:

调整所述映射函数的k值,计算a,b,c值;设置六个相机的k值初始化为1,在k1k2k3k4k5k6=1的约束条件下用lm算法对每个相机的k值做优化,使总误差r最小,当r最小时,六个相机有六个k值,可根据此时k值计算出每个相机对应的a,b,c值,此时对每个相机应的亮度映射函数即为最优亮度映射函数。

进一步的,所述暗全景拼接图,是指暗部最明亮的全景图,获取方法具体为:

使原始图像中暗部最亮的图像保持不变,找到所述的暗部最亮图像的映射函数fh,计算其反函数用第一调整函数调整最优亮度映射函数,所述的第一调整函数为:

公式(6)中,fi(1)(x)为第i个相机调整后的映射函数,fi(x)为第i个相机的最优映射函数。

进一步的,所述的亮全景拼接图,是指亮部最暗的全景图,获取方法具体为:

使原始图像中亮部最暗的图像保持不变,找到所述的亮部最暗图像的映射函数fl,计算其反函数fl-1,用第二调整函数调整最优映射函数,所述的第二调整函数为:

fi(2)(x)=fl-1[fi(x)](7)

公式(7)中,fi(2)(x)为第i个相机调整后的映射函数,fi(x)为第i个相机的最优映射函数。

进一步的,融合暗全景拼接图与亮全景拼接图,得到最终输出的全景拼接图像,具体为:

在暗全景拼接图中,最暗原始图像对应的中心经线处的权值w设为1,最暗图像的中心经线处的权值w设为0,其它地方线性过渡,生成一张权值图w1,用1减去w1中每个点的值,生成权值图w2;采用公式:

i=w1i1+w2i2(8)

生成全景拼接图像,公式(8)中,i为最终输出的图像,i1为暗全景拼接图,i2为亮全景拼接图。

第二方面,本发明提供了一种多相机拼接的亮度调整装置,所述装置包括:

获取模块,用于获取六个相机的六幅原始图像并展开成经纬度图像,获取对应的六组重叠区域图像;

计算模块,用于对每个相机的原始图像用亮度映射函数映射,计算所述的六组重叠区域图像的亮度差异之和,作为总误差;

调整模块,用于分别调整每个相机的亮度映射函数,使所述的总误差最小,得到最优亮度映射函数;

暗全景拼接模块,用于使原始图像中暗部最亮的图像保持不变,调整最优映射函数并映射所有原始图像进行全景拼接,生成暗全景拼接图;

亮全景拼接模块,用于使原始图像中亮部最暗的图像保持不变,调整最优映射函数并映射所有原始图像进行全景拼接,生成亮全景拼接图;

融合模块,用于融合暗全景拼接图与亮全景拼接图,生成全景拼接图像。

进一步的,所述的映射模块具体用于:对每个相机的原始图像用亮度映射函数映射,所述的亮度映射函数,具体为:

公式(1)中a,b,c满足:

f(128)=128k(2)

f'(128)=k(3)

f(255)=255(4)

上述公式(2)、公式(3)和公式(4)中k为初始值,可设初始值为1,x为像素的值,x∈[0,255],从而确定整个映射函数;

进一步的,所述的调整模块具体用于:分别调整每个相机的亮度映射函数,使所述的总误差最小,得到最优亮度映射函数;具体为:所述调整亮度映射函数为调整所述映射函数的k值,计算a,b,c值,调整整段映射函数;6个相机的k值初始化为1,在k1k2k3k4k5k6=1的约束条件下,用lm算法对每个相机的k值做优化,使总误差r最小,当r最小时,六个相机有六个k值,可根据此时k值计算出每个相机对应的a,b,c值,此时对每个相机应的亮度映射函数为其最优亮度映射函数;

进一步的,所述的融合模块集体用于:融合暗全景拼接图与亮全景拼接图,生成全景拼接图像,具体为:在暗全景拼接图中,最暗原始图像对应的中心经线处的权值w设为1,最暗图像的中心经线处的权值w设为0,其它地方线性过渡,得到一张权值图w1,用1减去w1中每个点的值,得到权值图w2;所述融合方法为:

i=w1i1+w2i2(8)

公式(8)中,i为全景拼接图像,i1为暗全景拼接图,i2为亮全景拼接图。

第三方面,本发明提供了一种计算机可读存储介质,所述计算机程序被处理器执行时实现如上述的多相机拼接的亮度调整方法的步骤。

第四方面,本发明提供了一种便携式终端,包括:

一个或多个处理器;

存储器;以及

一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述处理器执行所述计算机程序时实现如上述的多相机拼接的亮度调整方法的步骤。

本发明通过对独立曝光的相机调整亮度映射函数,实现了消除重叠区域的亮度差异,同时能保持图像亮处和暗处细节不变,较好的改善全景图像的视觉效果。

附图说明

图1是本发明实施例一提供的多相机拼接的亮度调整方法流程图。

图2是本发明实施例一提供的全景相机六个镜头视角区域示意图。

图3是本发明实施例一提供的六幅鱼眼图展开的经纬度图之间相互重叠区域示意图。

图4是本发明实施例一提供的多相机拼接的亮度调整中计算总亮度误差示意图。

图5是本发明实施例一提供的多相机拼接的亮度调整中图像融合的权值图示意图。

图6是本发明实施例二提供的多相机拼接的亮度调整模块示意图。

图7是本发明实施例三提供的便携式终端的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。

实施例一:

请参阅图1,本发明实施例一提供的一种多相机拼接的亮度调整方法包括以下步骤:

s101.获取六个相机的六幅原始图像并展开成经纬度图像,获取对应的六组重叠区域图像;

请参阅图2,该六个相机为六目全景相机,六个相机同时独立曝光拍摄的六幅原始图像为六幅鱼眼图像,相邻相机拍摄的图像均有重叠视角;

请参阅图3,由于每个相机都与相邻的相机有重叠视角,因此所拍摄的图像与相邻相机拍摄的图像均有重叠区域;六幅鱼眼图像展开的经纬度图之间形成六组重叠区域图像,对所述的六组重叠区域图像标记为si[i]与ri[i],i=1~6,其中,si[i]与ri[i]为一对重叠区域图像,si[i]拍摄于第i个相机,当i=1~5时,ri[i]拍摄于第i+1个相机,当i=6时,ri[6]拍摄于第1个相机。

s102.对每个相机的原始图像用亮度映射函数映射,计算所述的六组重叠区域图像的亮度差异之和,作为总误差;

具体的,在图像拼接时,对每个相机的原始图像用亮度映射函数映射,所述亮度映射函数为:

公式(1)中a,b,c满足:

f(128)=128k(2)

f'(128)=k(3)

f(255)=255(4)

上述公式(2)、公式(3)和公式(4)中k为初始值,可设初始值为1,x为像素的值,x∈[0,255],从而确定整个映射函数;

请参阅图4,还需要说明的是,计算总亮度误差步骤如下:

s1021:对每个重叠区域的两幅图像si[i]与ri[i],统计两幅图像的亮度直方图sh[i]与rh[i];

s1022:分别计算每个重叠区域的两幅图像的累积直方图ss[i]和rs[i];

s1023:用直方图规定化的方法,将ss[i]向rs[i]对齐,得到亮度映射函数smap[i],反之,将rs[i]向ss[i]对齐,得到映射函数rmap[i];

s1024:计算六个相机图像的总亮度误差;

定义第i个重叠区域的亮度误差为:

公式(5)中:v2=smap[v],v3=rmap[v],则六个相机的总亮度误差为:

s103.分别调整每个相机的亮度映射函数,使所述的总误差最小,得到最优亮度映射函数;

具体的,所述调整亮度映射函数为调整所述映射函数的k值,计算a,b,c值;6个相机的k值初始化为1,在约束条件k1k2k3k4k5k6=1下,用lm(levenberg-marquart)算法对每个相机的k值做优化,使总误差r最小,当r最小时,六个相机有六个k值,可根据此时k值计算出每个相机对应的a,b,c值,此时对每个相机应的亮度映射函数为其最优亮度映射函数;

还需要说明的是,lm算法是梯度下降法与高斯-牛顿法的结合,lm算法在高斯牛顿法中加入了因子μ,当μ大时相当于梯度下降法,μ小时相当于高斯牛顿法,在使用lm算法时,先设置一个比较小的μ值,当发现目标函数反而增大时,将μ增大使用梯度下降法快速寻找,然后再将μ减小使用牛顿法进行寻找。

s104.使原始图像中暗部最亮的图像保持不变,调整最优映射函数并映射所有原始图像进行全景拼接,生成暗全景拼接图;

使原始图像中暗部最亮的图像保持不变,找到所述的暗部最亮图像的映射函数fh,计算其反函数用第一调整函数调整最优亮度映射函数,所述的第一调整函数为:

公式(6)中,fi(1)(x)为第i个相机调整后的映射函数,fi(x)为用s103步骤中计算出来的第i个相机的最优映射函数。

s105.使原始图像中亮部最暗的图像保持不变,调整最优映射函数并映射所有原始图像进行全景拼接,生成亮全景拼接图;

使原始图像中亮部最暗的图像保持不变,找到所述的亮部最暗图像的映射函数fl,计算其反函数fl-1,用第二调整函数调整最优映射函数,所述的第二调整函数为:

fi(2)(x)=fl-1[fi(x)](7)

公式(7)中,fi(2)(x)为第i个相机调整后的映射函数,fi(x)为用s103步骤中计算出来的第i个相机的最优映射函数。

s106.融合暗全景拼接图与亮全景拼接图,生成全景拼接图像;

请参阅图5,在暗全景拼接图中,最暗原始图像对应的中心经线处的权值w设为1,最暗图像的中心经线处的权值w设为0,其它地方线性过度,得到一张权值图w1,用1减去w1中每个点的值,得到权值图w2;所述融合方法为:

i=w1i1+w2i2(8)

公式(8)中,i为最终输出的图像,i1为暗全景拼接图,i2为亮全景拼接图。

实施例二:

请参阅图6,本发明实施例二提供的多相机拼接的亮度调整装置包括:

获取模块11,用于获取六个相机的六幅原始图像并展开成经纬度图像,获取对应的六组重叠区域图像;

计算模块12,用于对每个相机的原始图像用亮度映射函数映射,计算所述的六组重叠区域图像的亮度差异之和,作为总误差;

调整模块13,用于分别调整每个相机的亮度映射函数,使所述的总误差最小,得到最优亮度映射函数;

暗全景拼接模块14,用于使原始图像中暗部最亮的图像保持不变,调整最优映射函数并映射所有原始图像进行全景拼接,生成暗全景拼接图;

亮全景拼接模块15,用于使原始图像中亮部最暗的图像保持不变,调整最优映射函数并映射所有原始图像进行全景拼接,生成亮全景拼接图;

融合模块16,用于融合暗全景拼接图与亮全景拼接图,生成全景拼接图像。

可选的,对每个相机的原始图像用亮度映射函数映射,所述的亮度映射函数,具体为:

公式(1)中,a,b,c满足:

f(128)=128k(2)

f'(128)=k(3)

f(255)=255(4)

上述公式(2)、公式(3)和公式(4)中k为初始值,可设初始值为1,x为像素的值,x∈[0,255],从而确定整个映射函数;

可选的,分别调整每个相机的亮度映射函数,使所述的总误差最小,得到最优亮度映射函数;具体为:所述调整亮度映射函数为调整所述映射函数的k值,计算a,b,c值,调整整段映射函数;6个相机的k值初始化为1,在约束条件k1k2k3k4k5k6=1下,用lm算法对每个相机的k值做优化,使总误差r最小,当r最小时,六个相机有六个k值,可根据此时k值计算出每个相机对应的a,b,c值,此时对每个相机应的的亮度映射函数为其最优亮度映射函数;

可选的,融合暗全景拼接图与亮全景拼接图,生成全景拼接图像,具体为:在暗全景拼接图中,最暗原始图像对应的中心经线处的权值w设为1,最暗图像的中心经线处的权值w设为0,其它地方线性过渡,得到一张权值图w1,用1减去w1中每个点的值,得到权值图w2;所述融合方法为:

i=w1i1+w2i2(8)

公式(8)中,i为全景拼接图像,i1为暗全景拼接图,i2为亮全景拼接图。

本发明实施例二提供的一种多相机拼接的亮度调整的装置及本发明实施例一提供的多相机拼接的亮度调整方法属于同一构思,其具体实现过程详见说明书全文,此处不再赘述。

实施例三:

本发明实施例三提供了一种计算机可读存储介质,所述计算机程序被处理器执行时实现如本发明实施例一提供的多相机拼接的亮度调整方法的步骤。

实施例四:

图7示出了本发明实施例四提供的便携式终端的具体结构框图,一种便携式终端100包括:一个或多个处理器101、存储器102、以及一个或多个计算机程序,其中所述处理器101和所述存储器102通过总线连接,所述一个或多个计算机程序被存储在所述存储器102中,并且被配置成由所述一个或多个处理器101执行,所述处理器101执行所述计算机程序时实现如本发明实施例一提供的一种多相机拼接的亮度调整方法的步骤。

在本发明实施例中,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如rom/ram、磁盘、光盘等。

本发明中,通过对独立曝光的相机调整亮度映射函数,实现了消除重叠区域的亮度差异,同时能保持图像亮处和暗处细节不变,较好的改善全景图像的视觉效果。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1