掌桥专利:专业的专利平台
掌桥专利
首页

多尺度成像装置、大视场高分辨率图像拼接方法及系统

文献发布时间:2023-06-19 11:39:06


多尺度成像装置、大视场高分辨率图像拼接方法及系统

技术领域

本发明涉及图像处理技术领域,尤其是指一种多尺度成像装置、大视场高分辨率图像拼接方法及系统。

背景技术

传统光学系统中,视场角和分辨率是两个相互矛盾的参数。一般来说,光学系统的成像分辨率越高,视场角就越小,视场角越大,成像分辨率就越低。因此解决大视场和高分辨率之间的矛盾,是当前光学和图像处理等领域研究的热点与难点。在光学领域,可以将多个小规模的传感器机械拼接起来获得大视场高分辨率图像。但是这种方法成本较高,装配困难,在实际中很难得到有效应用。传统图像处理领域,获取大视场高分辨图像多使用单一的小视场镜头进行扫描成像,然后再将成像结果拼接起来,以获取大视场高分辨图像。但是由于扫描成像存在着时间延迟,因此应用范围受到限制。

现有技术存在以下技术缺陷:传统图像拼接算法在CPU、DSP等硬件平台上实现耗时较多;用单一的传感器进行成像不能解决分辨率与视场角之间的矛盾;现有在FPGA上实现图像拼接的系统,其前端光学系统较为简单,不能很好地进行大视场高分辨率成像;传统投影变换方法占用FPGA片上资源较多。

发明内容

为此,本发明所要解决的技术问题在于克服现有技术中分辨率低、视场小和耗时多的技术缺陷。

为解决上述技术问题,本发明提供了一种多尺度成像装置,包括:

前端物镜,其能够收集大视场信息;

后端微相机阵列,所述微相机阵列包括基准微相机和多个第一微相机,所述基准微相机与所述前端物镜位于同一中心线上,多个所述第一微相机分布在一个圆弧上以对成像进行局部校正,实现均匀成像,相邻的微相机的光学通道具有光路重叠;每个光学通道的光学分辨率与图像采集模块中的传感器最高分辨率保持相同。

本发明公开了一种大视场高分辨率图像拼接方法,包括以下步骤:

将图像采集模块采集到的原始Bayer格式的图像转换成RGB格式;

对每一路视频数据采用轮询的方法缓存在外部存储设备;

根据显示时序的要求,将图像数据从外部存储设备中读出并进行圆柱面投影;

通过渐入渐出法将相邻光学通道图像数据圆柱面投影之后的像素进行融合,获得融合后的像素;

将融合后的像素经过显示器进行显示。

作为优选的,将图像采集模块采集到的Bayer格式的图像转换成RGB格式,包括:

使用I2C对传感器进行配置;

根据传感器的帧有效信号和行有效信号进行图像数据采集;

使用双线性插值算法将Bayer格式的图像转成RGB格式。

作为优选的,对每一路视频数据采用轮询的方法缓存在外部存储设备,包括:

对每一路视频数据在存储设备分配两个存储位置,写入图像数据的时候轮流向两个存储位置写入图像数据,读取图像数据的时候从两个存储位置轮流读取图像数据,其中,读取图像数据比写入图像数据延迟一帧以避免读写冲突。

作为优选的,所述将多组图像信息投影到圆柱面上,包括以下步骤:

以基准微相机采集的图像作为基准图像,对所述基准图像进行正投影以将基准图像投影至圆柱面上;

对多个第一微相机采集的图像进行圆柱面正投影操作,确定柱面全景图的大小;

根据每幅图像在柱面全景图的位置进行反投影变换,获得柱面全景图中每个像素位置对应的原始图像坐标。

作为优选的,所述获得柱面全景图中每个像素位置对应的原始图像坐标,包括:

根据柱面全景图中像素位置对应的一个原始图像坐标,获得四个双线性插值的邻域坐标。

作为优选的,所述将图像数据从外部存储设备中读出并进行圆柱面投影,包括:

将从外部存储设备读出的图像像素分奇偶行奇偶列存储在FPGA片上 Block RAM资源中;

根据四个双线性插值的邻域坐标,从Block RAM中读出相应的图像数据,并根据原始图像坐标确定四个双线性插值图像数据对应的权重,执行圆柱面投影算法。

作为优选的,所述通过渐入渐出法将圆柱面投影之后的像素进行融合,获得融合后的图像,具体包括:

计算圆柱面投影之后相邻图像的重叠区域;

根据相邻图像的重叠区域,通过渐入渐出法对圆柱面投影之后的像素进行融合,获得融合后的像素,将融合后的像素存放到FIFO中。

作为优选的,所述通过渐入渐出法将圆柱面投影之后的像素进行融合,获得融合后的图像,之后还包括:

根据显示时序,显示图像融合结果。

本发明公开了一种大视场高分辨率图像拼接系统,包括:

图像数据采集模块,将Bayer格式的图像转换成RGB格式;

图像缓存模块,对每一路视频数据采用轮询的方法缓存在外部存储设备;

图像投影变换模块,将图像数据从外部存储设备中读出并进行圆柱面投影;

图像融合模块,所述图像融合模块通过渐入渐出法将圆柱面投影之后的像素进行融合,获得融合后的图像;

图像显示模块,所述图像显示模块根据显示时序,显示图像融合结果。

本发明的上述技术方案相比现有技术具有以下优点:

1.本发明结合了多尺度光学系统和图像拼接算法,获得大视场高分辨率图像。

2.利用FPGA实现图像拼接算法,实时获取大视场高分辨率图像。

3.在投影变换过程中,将从外部存储设备读出的数据分为奇偶行奇偶列进行存储,节约了FPGA片上资源的使用。

附图说明

图1为本发明的系统框图;

图2为本发明电子学单元的系统结构框图;

图3为本发明中多尺度成像装置的结构示意图;

图4为大视场高分辨率图像拼接方法总体实现框图;

图5为微相机阵列内外参数示意图;

图6为渐入渐出法图像融合示意。

具体实施方式

下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。

参照图1所示,本发明公开了一种多尺度成像装置,包括前端物镜和后端微相机阵列。

前端物镜,其能够收集大视场信息;

后端微相机阵列,所述微相机阵列包括基准微相机和多个第一微相机,所述基准微相机与所述物镜位于同一中心线上,多个所述第一微相机相对于所述基准微相机对称设置以分别采集物镜获取的视场信息并对成像进行局部校正,实现均匀成像,减少成像畸变。

参照图2所示,该系统主要分为光学单元和电子学单元两个部分。光学单元使用多尺度成像装置负责大视场高分辨率成像。电子学单元主要分为图像采集模块和信号处理模块两个部分。图像采集模块与多尺度成像装置相连,用于图像数据采集;信号处理模块主要实现多路视频数据的无缝拼接,经过显示设备显示全景图像。

参照图3所示,信号处理模块主要包括FPGA模块和ARM模块两个模块。 FPGA模块负责对采集到的图像数据进行处理,同时支持HDMI显示功能。ARM 模块支持各种人机与通信接口,同时与FPGA模块连接,便于后续系统功能的扩展。信号处理模块向外部提供1个网络接口、2个串口、2个USB接口和2个HDMI接口,网络接口连接到ARM模块,串口、USB接口和HDMI接口各连接一个到FPGA模块和ARM模块,可以用于调试接口,也可以用做通信接口。

本发明公开了一种大视场高分辨率图像拼接方法,基于上述的多尺度成像装置,包括以下步骤:

步骤一、图像采集模块进行数据采集;

步骤二、采用轮询的方法将每路视频数据缓存在外部存储设备;

步骤三、将图像数据从外部存储设备中读出并进行圆柱面投影,包括以下步骤:

S31、以基准微相机采集的图像作为基准图像,对基准图像进行正投影以将基准图像投影至圆柱面上;

S32、对第一微相机采集的图像进行圆柱面正投影操作,获得柱面全景图的大小;

S33、根据每幅图像在柱面全景图的位置进行反投影变换,获得柱面全景图中每个像素位置对应的原始图像坐标;

S34、根据柱面全景图中像素位置对应的一个原始图像坐标,获得四个双线性插值的邻域坐标。

S35、对从外部存储器读出的像素数据按照奇偶行奇偶列使用片上资源进行存储。

S36、使用双线性插值获得柱面全景图像中的像素值。

步骤四、通过渐入渐出法将圆柱面投影之后的像素进行融合,获得融合后的像素,将融合后的像素存放到FIFO中。

步骤五、根据显示时序,显示图像融合结果。

本发明还公开了一种大视场高分辨率图像拼接系统,参照图4所示,包括图像数据采集模块、图像缓存模块、投影变换模块、图像融合模块和图像显示模块。

图像数据采集模块将Bayer格式的像素转换成RGB格式。图像缓存模块将每一路视频数据缓存在外部存储设备。投影变换模块将图像数据从外部存储设备中读出并且对每一路图像数据进行圆柱面投影。图像融合模块通过渐入渐出法将圆柱面投影之后的像素进行融合,获得融合后的像素。图像显示模块根据显示时序,显示图像融合结果。

下面,结合具体的实施例,对本发明图像拼接技术做进一步说明。

1、图像数据采集

传感器阵列与多尺度成像装置后端微相机阵列相连,进行图像数据采集, FPGA对每一路图像采集传感器采集到的图像数据进行Bayer转RGB,获得 RGB888格式的图像数据。

2、图像数据缓存

对每一路视频缓存两帧图像在外部存储设备中,其中一帧图像用于图像数据采集的缓存,另一帧图像用于图像的投影变换及图像融合显示。对每一路视频数据采用轮询的方法写入到外部存储设备中,如果当前通道有写请求信号,但是其他通道正在写,则不能立即将数据写入外部存储设备,要等到其他通道写完成,并且对该通道进行询问时,才能向外部存储设备中写入数据。

3、图像投影变换

参照图5所示,本发明的七个微相机分别标号为1、2、3、4、5、6和7。其中4是基准图像,R

在得到微相机之间的外参关系和微相机的内参数之后,需要将七张图像投影到一个圆柱面上,以柱面全景图像存储,具体见下一步。

微相机的内参数和微相机之间的外参数是固定的,可以在光学镜头设计时就标定好。为了实现图像拼接,需要将微相机阵列成像投影到一个圆柱面上。其具体步骤为:

3.1、圆柱面正投影

取中间线上的相机成像作为基准图像。首先对基准图像进行正投影,投影到圆柱面上:

假设图像中像素坐标为(x,y),所对应的世界坐标系为(X,Y,Z),这两者之间的关系为:

正投影之后的坐标为(u,v),其中

然后对按照上述公式以及微相机的内外参数对其他相机成像进行圆柱面正投影,得到柱面全景图的大小。根据每幅图像正投影结果可以确定每幅图像在全景图像上的区域。圆柱面投影只需要对第一帧图像进行正投影变换,将每一幅图像在全景图像的左上角坐标和右下角坐标记录下来。

3.2、圆柱面反投影

之后,对每幅图像在全景图像的位置进行反投影变换,得到柱面全景图像每个像素位置对应的原始图像坐标。反投影变换关系为:

其中(x,y)就是柱面全景图像每个像素位置所需要的原始图像坐标。从左到右遍历每幅图像在全景图像的坐标,对每个坐标进行反投影变换。并且在计算之后,x和y是16bit的有符号定点数,其中小数位为4位,整数位为 11位。

3.3、LUT缓存

对于一个(x,y)坐标,在原始图像中需要四个像素进行双线性插值。而且这四个像素分布在相邻的两行,若直接对DDR3进行访问得到这四个像素,会大大增加DDR3的吞吐量,因此不可取。为此,并且实现在一个时钟读取双线性插值所需要的四个像素值,设计如下的RAM缓存来缓存来自DDR3的数据。

奇偶行像素缓存模块:

对一路视频图像。例化4个RAM,分别是:

RAM_EE:偶数行第偶数个像素的像素值。宽度为24bit,深度为5行图像的宽度。

RAM_EO:偶数行第奇数个像素的像素值。宽度为24bit,深度为5行图像的宽度。

RAM_OE:奇数行第偶数个像素的像素值。宽度为24bit,深度为5行图像的宽度。

RAM_OO:奇数行第奇数个像素的像素值。宽度为24bit,深度为5行图像的宽度。

宽度设置为24bit是由于图像的像素是RGB格式,深度设置为5行,这样四个RAM总共缓存20行图像,这样做是考虑到了圆柱面投影之后,柱面全景图像所需原始图像的坐标的差异行数。

在读取RAM时,根据一个(x,y)的整数部分坐标,根据表1、表2和表3 的规律,可以得到四个RAM中分别应该读取的一个像素。比如说坐标(0,0),需要读取RAM_xE中的第0行,第0列,RAM_xO中的第0行,第0列。坐标(1, 1),需要读取RAM_xE中的第1行,第1列,RAM_xO中的第0行,第0列。若(x,y)坐标中有负数,表明这个像素点会取到原始图像之外的像素值进行插值,这时候统一按照0处理。

表1

表2

表3

3.4小数权重计算

在双线性插值的时候,不仅需要待插值中心周围四个点的像素值,还需要待插值中心在计算像素值时需要的权重。而权重信息得益于相邻像素的坐标之差为1,对于一个(x,y)坐标,可以从其小数位部分恢复出四个权重。其对应的公式分别如下所示:

dec1[3:0]=x[3:0]

dec2[3:0]=y[3:0]

dec3[3:0]={5′b10000-dec1}[3:0]

dec4[3:0]={5′b10000-dec2}[3:0]

dec1[3:0]、dec2[3:0]、dec3[3:0]和dec4[3:0]就是得到的四个权重。得到小数权重之后,使用双线性插值算法获得圆柱面投影之后的像素数据。

4、图像融合

4.1图像重叠区域确定

根据圆柱面正投影确定的全景图像区域,其坐标原点在图像中心,而图像显示时,图像的坐标原点在左上角,为此需要将全景图像坐标原点移至全景图像左上角。然后根据圆柱面正投影确定的每幅图像在全景图像上的位置确定重叠区域。

4.2渐入渐出法图像融合

采用渐入渐出法进行图像融合。参照图6所示。图像I

5、图像显示

根据HDMI显示时序,从图像融合结果的FIFO中读出数据进行显示。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

相关技术
  • 多尺度成像装置、大视场高分辨率图像拼接方法及系统
  • 一种基于大照明数值孔径的大视场高分辨率显微成像装置及迭代重构方法
技术分类

06120113006690