CN107958440A - 在gpu上实现双鱼眼图像实时全景图像拼接方法及系统 - Google Patents

在gpu上实现双鱼眼图像实时全景图像拼接方法及系统 Download PDF

Info

Publication number
CN107958440A
CN107958440A CN201711292883.8A CN201711292883A CN107958440A CN 107958440 A CN107958440 A CN 107958440A CN 201711292883 A CN201711292883 A CN 201711292883A CN 107958440 A CN107958440 A CN 107958440A
Authority
CN
China
Prior art keywords
fish eye
pixel
fusion
look
calibration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711292883.8A
Other languages
English (en)
Inventor
谢文军
李书杰
鲁明
武玉龙
李琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei University of Technology
Original Assignee
Hefei University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN201711292883.8A priority Critical patent/CN107958440A/zh
Publication of CN107958440A publication Critical patent/CN107958440A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/06Topological mapping of higher dimensional structures onto lower dimensional surfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/32Indexing scheme for image data processing or generation, in general involving image mosaicing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了在GPU上实现双鱼眼图像实时全景图像拼接方法及系统。该方法包括:获取标定全景图像;根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表;根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表;根据所述标定全景图像、所述第一鱼眼镜头查找表以及所述第二鱼眼镜头查找表确定融合度查找表;根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像。采用本发明公开的拼接方法及系统,能够快速且实时拼接成全景图像,提高全景图像的拼接速度。

Description

在GPU上实现双鱼眼图像实时全景图像拼接方法及系统
技术领域
本发明涉及图像处理领域,特别是涉及在GPU上实现双鱼眼图像实时全景图像拼接方法及系统。
背景技术
全景图像作为一种能为用户提供超大视野观察的实景图片,广泛应用于虚拟旅游、增强现实、工程开发、抢险救灾、机器人导航等多个领域;其中基于图像拼接的全景图像生成主要包括以下三种方式:(1)采用多镜头的特制设备,比如FacebookSurround 360、GoPro Odyssey等,但这类设备价格昂贵,普通大众往往承受不起;(2)通过单镜头旋转一周,采集多张图像拼接,但这类方法拍摄时间过长,仅适用于静态场景;(3)基于鱼眼图像拼接,因为鱼眼镜头的视角可以达到甚至超过180°,所以理论上两张鱼眼图像就可得到全景图像,这种方法成本较低,操作简单,效果显著,基于鱼眼图像拼接的全景图像生成方法,需将至少两张图像拼接在一起,这就需要保证图像中有重叠部分,而重叠部分的检测主要包括两种方式:一种是采用标定方法,在标定环境中拍摄图像,建立校正模型,求解得到校正拼接参数,最后以这些参数校正图像;另一种是采用特征点匹配方法,提取图像特征点(如尺度不变特征转换、加速稳健特征等),利用特征点确定图像间的重叠区域。然而无论哪种方式,拼接校正的计算过程复杂且速度慢,无法应用于机器人导航等对实时性要求较高的领域。
发明内容
本发明的目的是提供在GPU上实现双鱼眼图像实时全景图像拼接方法及系统,以解决无法快速且实时拼接成全景图像的问题。
为实现上述目的,本发明提供了如下方案:
一种在GPU上实现双鱼眼图像实时全景图像拼接方法,包括:
获取标定全景图像;
根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表;所述第一鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第一鱼眼图像中的每个像素点的坐标值数组;
根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表;所述第二鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第二鱼眼图像中的每个像素点的坐标值数组;
根据所述标定全景图像、所述第一鱼眼镜头查找表以及所述第二鱼眼镜头查找表确定融合度查找表;所述融合度查找表为由所述第一鱼眼图像、所述第二鱼眼图像的重叠区域的融合度数组和所述第一鱼眼图像、所述第二鱼眼图像的非重叠区域的融合度数组组成;
根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像。
可选的,所述根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表,具体包括:
获取所述标定全景图像的第一标定像素点;所述标定全景图像包括多个第一标定像素点;
判断所述第一标定像素点是否与所述第一鱼眼图像中的第一鱼眼像素点相对应,得到第一判断结果;
若所述第一判断结果表示为所述第一标定像素点与所述第一鱼眼像素点相对应,获取所述第一鱼眼像素点的坐标,建立所述第一鱼眼镜头查找表。
可选的,所述根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表,具体包括:
若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,判断所述第一标定像素点是否与第二鱼眼图像中的第二鱼眼像素点相对应,得到第二判断结果;
若所述第二判断结果表示为所述第一标定像素点与所述第二鱼眼像素点相对应,获取所述第二鱼眼像素点的坐标,建立所述第二鱼眼镜头查找表。
可选的,所述获取所述第二鱼眼像素点的坐标,建立所述第二鱼眼镜头查找表之后,还包括:
获取所述重叠区域的最大宽度;
获取所述第一标定像素点距离所述第一鱼眼图像的底部边缘的距离;
根据所述最大宽度和所述距离确定所述第一鱼眼图像的融合度;
根据所述第一鱼眼图像的融合度确定所述第二鱼眼图像的融合度;
若所述第二判断结果表示为所述第一标定像素点未与所述第二鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为1,确定所述第二鱼眼图像的融合度为0;
若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为0,确定所述第二鱼眼图像的融合度为1。
可选的,所述根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像,具体包括:
获取实际拍摄的全景图像的第一实际像素点;
判断所述第一实际像素点在所述第一鱼眼镜头查找表内是否存在对应的第一查询坐标,得到第三判断结果;
若所述第三判断结果表示为所述第一实际像素点在第一鱼眼镜头查找表内存在对应的第一查询坐标,判断所述第一实际像素点在所述第二鱼眼镜头查找表内是否存在对应的第二查询坐标,得到第四判断结果;
若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内存在对应的第二查询坐标,获取所述第一查询坐标在所述第一鱼眼图像上的第一颜色值和所述第二查询坐标在所述第二鱼眼图像上的第二颜色值;
在所述融合度查找表查找所述第一实际像素点处的融合度值;
根据所述第一颜色值、所述第二颜色值以及所述融合度值确定所述期望全景图像内第一期望像素点的第一期望颜色值;所述第一期望像素点与所述第一实际像素点相对应;所述第一期望颜色值包括多个;
根据多个所述第一期望颜色值确定期望全景图像;
若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内未存在对应的第二查询坐标,确定所述第一查询坐标在所述第一鱼眼图像上对应的颜色值为所述第一期望像素点的第二期望颜色值;所述第二期望颜色值包括多个;
根据多个所述第二期望颜色值确定期望全景图像。
一种在GPU上实现双鱼眼图像实时全景图像拼接系统,包括:
标定全景图像获取模块,用于获取标定全景图像;
第一鱼眼镜头查找表确定模块,用于根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表;所述第一鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第一鱼眼图像中的每个像素点的坐标值数组;
第二鱼眼镜头查找表确定模块,用于根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表;所述第二鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第二鱼眼图像中的每个像素点的坐标值数组;
融合度查找表确定模块,用于根据所述标定全景图像、所述第一鱼眼镜头查找表以及所述第二鱼眼镜头查找表确定融合度查找表;所述融合度查找表为由所述第一鱼眼图像、所述第二鱼眼图像的重叠区域的融合度数组和所述第一鱼眼图像、所述第二鱼眼图像的非重叠区域的融合度数组组成;
期望全景图像确定模块,用于根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像。
可选的,所述第一鱼眼镜头查找表确定模块,具体包括:
第一标定像素顶获取单元,用于获取所述标定全景图像的第一标定像素点;所述标定全景图像包括多个第一标定像素点;
第一判断单元,用于判断所述第一标定像素点是否与所述第一鱼眼图像中的第一鱼眼像素点相对应,得到第一判断结果;
第一鱼眼镜头查找表建立单元,用于若所述第一判断结果表示为所述第一标定像素点与所述第一鱼眼像素点相对应,获取所述第一鱼眼像素点的坐标,建立所述第一鱼眼镜头查找表。
可选的,所述第二鱼眼镜头查找表确定模块,具体包括:
第二判断单元,用于若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,判断所述第一标定像素点是否与第二鱼眼图像中的第二鱼眼像素点相对应,得到第二判断结果;
第二鱼眼镜头查找表建立单元,用于若所述第二判断结果表示为所述第一标定像素点与所述第二鱼眼像素点相对应,获取所述第二鱼眼像素点的坐标,建立所述第二鱼眼镜头查找表。
可选的,所述第二鱼眼镜头查找表建立单元之后,还包括:
最大宽度获取子单元,用于获取所述重叠区域的最大宽度;
底部边缘距离获取子单元,用于获取所述第一标定像素点距离所述第一鱼眼图像的底部边缘的距离;
第一融合度确定子单元,用于根据所述最大宽度和所述距离确定所述第一鱼眼图像的融合度;
第二融合度确定子单元,用于根据所述第一鱼眼图像的融合度确定所述第二鱼眼图像的融合度;
第三融合度确定子单元,用于若所述第二判断结果表示为所述第一标定像素点未与所述第二鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为1,确定所述第二鱼眼图像的融合度为0;
第四融合度确定子单元,用于若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为0,确定所述第二鱼眼图像的融合度为1。
可选的,所述期望全景图像确定模块,具体包括:
第一实际像素点获取单元,用于获取实际拍摄的全景图像的第一实际像素点;
第三判断单元,用于判断所述第一实际像素点在所述第一鱼眼镜头查找表内是否存在对应的第一查询坐标,得到第三判断结果;
第四判断单元,用于若所述第三判断结果表示为所述第一实际像素点在第一鱼眼镜头查找表内存在对应的第一查询坐标,判断所述第一实际像素点在所述第二鱼眼镜头查找表内是否存在对应的第二查询坐标,得到第四判断结果;
颜色值获取单元,用于若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内存在对应的第二查询坐标,获取所述第一查询坐标在所述第一鱼眼图像上的第一颜色值和所述第二查询坐标在所述第二鱼眼图像上的第二颜色值;
融合度值查找单元,用于在所述融合度查找表查找所述第一实际像素点处的融合度值;
第一期望颜色值获取单元,用于根据所述第一颜色值、所述第二颜色值以及所述融合度值确定所述期望全景图像内第一期望像素点的第一期望颜色值;所述第一期望像素点与所述第一实际像素点相对应;所述第一期望颜色值包括多个;
第一期望全景图像确定单元,用于根据多个所述第一期望颜色值确定期望全景图像;
第二颜色值确定单元,用于若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内未存在对应的第二查询坐标,确定所述第一查询坐标在所述第一鱼眼图像上对应的颜色值为所述第一期望像素点的第二期望颜色值;所述第二期望颜色值包括多个;
第二期望全景图像确定单元,用于根据多个所述第二期望颜色值确定期望全景图像。
根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明公开了全景图像拼接方法及系统,建立第一鱼眼镜头查找表、第二鱼眼镜头查找表以及融合度查找表,从上述三个查找表中直接找出实际拍摄的全景图像在鱼眼图像中的像素值和融合度值,确定期望全景图像,从而能够快速实时的将两个图像拼接成期望全景图像。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的全景图像拼接方法流程图;
图2为本发明所提供的基于查找表的全景图像处理的原理图;
图3为本发明所提供的全景图像拼接系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供在GPU上实现双鱼眼图像实时全景图像拼接方法及系统,以解决无法快速且实时拼接成全景图像的问题。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明所提供的全景图像拼接方法流程图,如图1所示,一种在GPU上实现双鱼眼图像实时全景图像拼接方法,包括:
步骤101:获取标定全景图像;
步骤102:根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表;所述第一鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第一鱼眼图像中的每个像素点的坐标值数组。
所述标定全景图像的生成过程可以为在自制的特殊标定环境下采集两幅鱼眼图像,提取图像的有效区域,按照柱面校正模型,将有效区域映射到圆柱面上,展开成两幅矩形图像,通过标定线的位置关系,平移图像并形成柱面全景图,最终将柱面全景图转换为球面全景图,得到标定全景图像,所述标定全景图像的获取方法包括但不限于上述方法。
所述步骤102具体包括:获取所述标定全景图像的第一标定像素点;所述标定全景图像包括多个第一标定像素点;判断所述第一标定像素点是否与所述第一鱼眼图像中的第一鱼眼像素点相对应,若是,获取所述第一鱼眼像素点的坐标,建立所述第一鱼眼镜头查找表。
步骤103:根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表;所述第二鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第二鱼眼图像中的每个像素点的坐标值数组。
所述步骤103具体包括:若所述第一标定像素点未与所述第一鱼眼像素点相对应,判断所述第一标定像素点是否与第二鱼眼图像中的第二鱼眼像素点相对应,若是,获取所述第二鱼眼像素点的坐标,建立所述第二鱼眼镜头查找表。
第一鱼眼镜头查找表、第二鱼眼镜头查找表分别记录的是标定全景图像与第一鱼眼图像、第二鱼眼图像之间的坐标映射关系。若标定全景图像某个像素点(x,y)对应于第一鱼眼图像的像素(u1,v1),则第一鱼眼镜头查找表的像素(x,y)会记录由坐标(u1,v1)编码得到的颜色值R1G1B1A1;若全景图像像素(x,y)与第一鱼眼图像无关,则查找表像素(x,y)则将(0,0)编码得到的值记录为R1G1B1A1;同理,若全景图像某个像素(x,y)对应于鱼眼图像二的像素(u2,v2),则查找表二的像素(x,y)中记录由由坐标(u2,v2)编码得到的颜色值R2G2B2A2,反之则将(0,0)编码得到的值记录为R2G2B2A2
步骤104:根据所述标定全景图像、所述第一鱼眼镜头查找表以及所述第二鱼眼镜头查找表确定融合度查找表;所述融合度查找表为由所述第一鱼眼图像以及所述第二鱼眼图像的重叠区域的融合度数组和所述第一鱼眼图像、所述第二鱼眼图像的非重叠区域的融合度数组组成。
所述步骤104具体包括:
判断所述第一标定像素点是否与所述第一鱼眼像素点相对应,若否,确定所述第一鱼眼图像的融合度为0,确定所述第二鱼眼图像的融合度为1,若是,判断所述第一标定像素点是否与所述第二鱼眼像素点相对应,若是,获取所述重叠区域的最大宽度;获取所述第一标定像素点距离所述第一鱼眼图像的底部边缘的距离;根据所述最大宽度和所述距离确定所述第一鱼眼图像的融合度;根据所述第一鱼眼图像的融合度确定所述第二鱼眼图像的融合度;若否,确定所述第一鱼眼图像的融合度为1,确定所述第二鱼眼图像的融合度为0。
融合度由二维信息α、β组成,分别为第一鱼眼图像的融合度和第二鱼眼图像的融合度。若实际全景图像像素只取自于第一鱼眼图像,则α记为1;若实际全景图像像素只取自于第二鱼眼图像,则α记为0;若全景图像像素取自两幅鱼眼图像的重叠区域,则其中D为两幅图像之间的重叠区域宽度,d为当前坐标点在第一鱼眼图像上距离有效区域重叠一侧边缘的距离,由于第一鱼眼图像般中间圆形区域是有内容的,圆形之外因为遮挡是纯黑色,拼接时需要估计一个有效半径,这个半径内有内容的圆形区域为有效区域,因此,第一鱼眼图像的融合度α∈[0,1]且线性地从0到1取值,第二鱼眼图像的融合度β=1-α。
步骤105:根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像。
所述步骤105具体包括:获取实际拍摄的全景图像的第一实际像素点;
判断所述第一实际像素点在所述第一鱼眼镜头查找表内是否存在对应的第一查询坐标,若是,判断所述第一实际像素点在所述第二鱼眼镜头查找表内是否存在对应的第二查询坐标,若是,获取所述第一查询坐标在所述第一鱼眼图像上的第一颜色值和所述第二查询坐标在所述第二鱼眼图像上的第二颜色值;在所述融合度查找表查找所述第一实际像素点处的融合度值;根据所述第一颜色值、所述第二颜色值以及所述融合度值确定所述期望全景图像内第一期望像素点的第一期望颜色值;所述第一期望像素点与所述第一实际像素点相对应;所述第一期望颜色值包括多个;根据多个所述第一期望颜色值确定期望全景图像;若否,确定所述第一查询坐标在所述第一鱼眼图像上对应的颜色值为所述第一期望像素点的第二期望颜色值;所述第二期望颜色值包括多个;根据多个所述第二期望颜色值确定期望全景图像。
首先,对于每个像素点分别采样第一鱼眼镜头查找表、第二鱼眼镜头查找表以及融合度查找表查找出纹理中查询对应的图像颜色,并将颜色值解码为第一查询坐标、第二查询坐标和融合度值。
要渲染的矩形大小与第一鱼眼镜头查找表、第二鱼眼镜头查找表以及融合度查找表的大小相同,均以左上角为原点,以水平向右为x轴,以竖直向下为y轴,建立坐标系。由于要渲染的矩形图像中的坐标与三个查找表的坐标是一一对应的,图2为本发明所提供的基于查找表的全景图像处理的原理图,如图2所示,设片段着色器中像素点的纹理坐标为(x,y),则其在三个查找表在坐标系下对应的坐标也为(x,y)。
仍在片段着色器中,根据所解码出的每个像素点的第一查询坐标、第二查询坐标,分别在第一鱼眼图像、第二鱼眼图像上采样对应坐标下的第一颜色值、第二颜色值;分别取出第一鱼眼镜头查找表、第二鱼眼镜头查找表在坐标(x,y)处的取值R1G1B1A1、R2G2B2A2,从而解码出(x,y)在鱼眼图像一、鱼眼图像二上的查询坐标(u1,v1)、(u2,v2);取得鱼眼图像一(u1,v1)处的颜色值R1G1B1,取得鱼眼图像二(u2,v2)处的颜色值R2G2B2,取出融合度查找表(x,y)处的融合度值(α,β)。
仍在片段着色器中,根据所得到第一颜色值和第二颜色值及所得到的融合度值计算出每个像素点的纹理。计算像素点(x,y)出的颜色值为RGB=R1G1B1*α+R2G2B2*β,则片段着色器中(x,y)出的纹理坐标即为RGB,得到期望全景图像,上述渲染得到的矩形图像即为最终的期望全景图像。
所得到期望全景图像是一张纵横向比为1:2的图像,使用专门的播放器实现球面全景漫游。
本发明执行一次校正拼接预处理过程,记录最终全景图像坐标与鱼眼图像坐标之间的映射关系,生成第一鱼眼图像查找表、第二鱼眼图像查找表以及融合度查找表。对于新的输入任务,从三个查找表中直接找出最终全景图像在鱼眼图像中的像素值和融合度值,在图形处理器(Graphics Processing Unit,GPU)中计算得到全景图像,简化了计算过程,利用GPU并行处理的特点,可以达到实时拼接校正的效果。
图3为本发明所提供的全景图像拼接系统结构图,如图3所示,一种在GPU上实现双鱼眼图像实时全景图像拼接系统,包括:
标定全景图像获取模块301,用于获取标定全景图像。
第一鱼眼镜头查找表确定模块302,用于根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表;所述第一鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第一鱼眼图像中的每个像素点的坐标值数组。
所述第一鱼眼镜头查找表确定模块302,具体包括:第一标定像素顶获取单元,用于获取所述标定全景图像的第一标定像素点;所述标定全景图像包括多个第一标定像素点;第一判断单元,用于判断所述第一标定像素点是否与所述第一鱼眼图像中的第一鱼眼像素点相对应,得到第一判断结果;第一鱼眼镜头查找表建立单元,用于若所述第一判断结果表示为所述第一标定像素点与所述第一鱼眼像素点相对应,获取所述第一鱼眼像素点的坐标,建立所述第一鱼眼镜头查找表。
第二鱼眼镜头查找表确定模块303,用于根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表;所述第二鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第二鱼眼图像中的每个像素点的坐标值数组。
所述第二鱼眼镜头查找表确定模块303,具体包括:第二判断单元,用于若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,判断所述第一标定像素点是否与第二鱼眼图像中的第二鱼眼像素点相对应,得到第二判断结果;第二鱼眼镜头查找表建立单元,用于若所述第二判断结果表示为所述第一标定像素点与所述第二鱼眼像素点相对应,获取所述第二鱼眼像素点的坐标,建立所述第二鱼眼镜头查找表。
融合度查找表确定模块304,用于根据所述标定全景图像、所述第一鱼眼镜头查找表以及所述第二鱼眼镜头查找表确定融合度查找表;所述融合度查找表为由所述第一鱼眼图像以及所述第二鱼眼图像的重叠区域的融合度数组和所述第一鱼眼图像、所述第二鱼眼图像的非重叠区域的融合度数组组成。
所述融合度查找表确定模块304,具体包括:第三判断单元,用于判断所述第一标定像素点是否与所述第一鱼眼像素点相对应,得到第三判断结果;第四判断单元,用于若所述第三判断结果表示为所述第一标定像素点与所述第一鱼眼像素点相对应,判断所述第一标定像素点是否与所述第二鱼眼像素点相对应,得到第三判断结果;最大宽度获取单元,若所述第三判断结果表示为所述第一标定像素点与所述第二鱼眼像素点相对应,获取所述重叠区域的最大宽度;距离获取单元,用于获取所述第一标定像素点距离所述第一鱼眼图像的底部边缘的距离;第一鱼眼图像融合度第一确定单元,用于根据所述最大宽度和所述距离确定所述第一鱼眼图像的融合度;第二鱼眼图像融合度确定单元,用于根据所述第一鱼眼图像的融合度确定所述第二鱼眼图像的融合度;融合度确定单元,若所述第三判断结果表示为所述第一标定像素点未与所述第二鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为1,确定所述第二鱼眼图像的融合度为0;第一鱼眼图像融合度第二确定单元,用于若所述第三判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为0,确定所述第二鱼眼图像的融合度为1。
期望全景图像确定模块305,用于根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像。
所述期望全景图像确定模块305,具体包括:第一实际像素点获取单元,用于获取实际拍摄的全景图像的第一实际像素点;第三判断单元,用于判断所述第一实际像素点在所述第一鱼眼镜头查找表内是否存在对应的第一查询坐标,得到第三判断结果;第四判断单元,用于若所述第三判断结果表示为所述第一实际像素点在第一鱼眼镜头查找表内存在对应的第一查询坐标,判断所述第一实际像素点在所述第二鱼眼镜头查找表内是否存在对应的第二查询坐标,得到第四判断结果;颜色值获取单元,用于若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内存在对应的第二查询坐标,获取所述第一查询坐标在所述第一鱼眼图像上的第一颜色值和所述第二查询坐标在所述第二鱼眼图像上的第二颜色值;融合度值查找单元,用于在所述融合度查找表查找所述第一实际像素点处的融合度值;第一期望颜色值获取单元,用于根据所述第一颜色值、所述第二颜色值以及所述融合度值确定所述期望全景图像内第一期望像素点的第一期望颜色值;所述第一期望像素点与所述第一实际像素点相对应;所述第一期望颜色值包括多个;第一期望全景图像确定单元,用于根据多个所述第一期望颜色值确定期望全景图像;第二颜色值确定单元,用于若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内未存在对应的第二查询坐标,确定所述第一查询坐标在所述第一鱼眼图像上对应的颜色值为所述第一期望像素点的第二期望颜色值;所述第二期望颜色值包括多个;第二期望全景图像确定单元,用于根据多个所述第二期望颜色值确定期望全景图像。
本发明公开了在GPU上实现双鱼眼图像实时全景图像拼接方法及系统,本发明实际是基于GPU的双目鱼眼全景图像实时拼接方法及系统,将第一鱼眼镜头查找表、第二鱼眼镜头查找表内的坐标作为纹理坐标输入到GPU;通过第一鱼眼镜头查找表及第二鱼眼镜头查找表查询出片段着色器中每个像素点的纹理坐标对应的鱼眼图像像素坐标;取得片段着色器中每个像素点在两幅鱼眼图像上的像素值以及融合度值;计算片段着色器中每个像素点的纹理,得到最终的全景图像。本发明利用GPU并行处理的特点,从融合度查找表中直接找出最终全景图像在鱼眼图像中的像素值和融合度值,在GPU中计算得到全景图像,可以达到实时拼接的效果。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种在GPU上实现双鱼眼图像实时全景图像拼接方法,其特征在于,包括:
获取标定全景图像;
根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表;所述第一鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第一鱼眼图像中的每个像素点的坐标值数组;
根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表;所述第二鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第二鱼眼图像中的每个像素点的坐标值数组;
根据所述标定全景图像、所述第一鱼眼镜头查找表以及所述第二鱼眼镜头查找表确定融合度查找表;所述融合度查找表为由所述第一鱼眼图像、所述第二鱼眼图像的重叠区域的融合度数组和所述第一鱼眼图像、所述第二鱼眼图像的非重叠区域的融合度数组组成;
根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像。
2.根据权利要求1所述的拼接方法,其特征在于,所述根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表,具体包括:
获取所述标定全景图像的第一标定像素点;所述标定全景图像包括多个第一标定像素点;
判断所述第一标定像素点是否与所述第一鱼眼图像中的第一鱼眼像素点相对应,得到第一判断结果;
若所述第一判断结果表示为所述第一标定像素点与所述第一鱼眼像素点相对应,获取所述第一鱼眼像素点的坐标,建立所述第一鱼眼镜头查找表。
3.根据权利要求2所述的拼接方法,其特征在于,所述根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表,具体包括:
若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,判断所述第一标定像素点是否与第二鱼眼图像中的第二鱼眼像素点相对应,得到第二判断结果;
若所述第二判断结果表示为所述第一标定像素点与所述第二鱼眼像素点相对应,获取所述第二鱼眼像素点的坐标,建立所述第二鱼眼镜头查找表。
4.根据权利要求3所述的拼接方法,其特征在于,所述获取所述第二鱼眼像素点的坐标,建立所述第二鱼眼镜头查找表之后,还包括:
获取所述重叠区域的最大宽度;
获取所述第一标定像素点距离所述第一鱼眼图像的底部边缘的距离;
根据所述最大宽度和所述距离确定所述第一鱼眼图像的融合度;
根据所述第一鱼眼图像的融合度确定所述第二鱼眼图像的融合度;
若所述第二判断结果表示为所述第一标定像素点未与所述第二鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为1,确定所述第二鱼眼图像的融合度为0;
若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为0,确定所述第二鱼眼图像的融合度为1。
5.根据权利要求4所述的拼接方法,其特征在于,所述根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像,具体包括:
获取实际拍摄的全景图像的第一实际像素点;
判断所述第一实际像素点在所述第一鱼眼镜头查找表内是否存在对应的第一查询坐标,得到第三判断结果;
若所述第三判断结果表示为所述第一实际像素点在第一鱼眼镜头查找表内存在对应的第一查询坐标,判断所述第一实际像素点在所述第二鱼眼镜头查找表内是否存在对应的第二查询坐标,得到第四判断结果;
若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内存在对应的第二查询坐标,获取所述第一查询坐标在所述第一鱼眼图像上的第一颜色值和所述第二查询坐标在所述第二鱼眼图像上的第二颜色值;
在所述融合度查找表查找所述第一实际像素点处的融合度值;
根据所述第一颜色值、所述第二颜色值以及所述融合度值确定所述期望全景图像内第一期望像素点的第一期望颜色值;所述第一期望像素点与所述第一实际像素点相对应;所述第一期望颜色值包括多个;
根据多个所述第一期望颜色值确定期望全景图像;
若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内未存在对应的第二查询坐标,确定所述第一查询坐标在所述第一鱼眼图像上对应的颜色值为所述第一期望像素点的第二期望颜色值;所述第二期望颜色值包括多个;
根据多个所述第二期望颜色值确定期望全景图像。
6.一种在GPU上实现双鱼眼图像实时全景图像拼接系统,其特征在于,包括:
标定全景图像获取模块,用于获取标定全景图像;
第一鱼眼镜头查找表确定模块,用于根据所述标定全景图像的生成过程确定第一鱼眼镜头查找表;所述第一鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第一鱼眼图像中的每个像素点的坐标值数组;
第二鱼眼镜头查找表确定模块,用于根据所述标定全景图像的生成过程确定第二鱼眼镜头查找表;所述第二鱼眼镜头查找表为所述标定全景图像中的每个像素点对应到第二鱼眼图像中的每个像素点的坐标值数组;
融合度查找表确定模块,用于根据所述标定全景图像、所述第一鱼眼镜头查找表以及所述第二鱼眼镜头查找表确定融合度查找表;所述融合度查找表为由所述第一鱼眼图像以及所述第二鱼眼图像的重叠区域的融合度数组和所述第一鱼眼图像、所述第二鱼眼图像的非重叠区域的融合度数组组成;
期望全景图像确定模块,用于根据所述第一鱼眼镜头查找表、所述第二鱼眼镜头查找表以及所述融合度查找表确定期望全景图像。
7.根据权利要求6所述的拼接系统,其特征在于,所述第一鱼眼镜头查找表确定模块,具体包括:
第一标定像素顶获取单元,用于获取所述标定全景图像的第一标定像素点;所述标定全景图像包括多个第一标定像素点;
第一判断单元,用于判断所述第一标定像素点是否与所述第一鱼眼图像中的第一鱼眼像素点相对应,得到第一判断结果;
第一鱼眼镜头查找表建立单元,用于若所述第一判断结果表示为所述第一标定像素点与所述第一鱼眼像素点相对应,获取所述第一鱼眼像素点的坐标,建立所述第一鱼眼镜头查找表。
8.根据权利要求7所述的拼接方法,其特征在于,所述第二鱼眼镜头查找表确定模块,具体包括:
第二判断单元,用于若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,判断所述第一标定像素点是否与第二鱼眼图像中的第二鱼眼像素点相对应,得到第二判断结果;
第二鱼眼镜头查找表建立单元,用于若所述第二判断结果表示为所述第一标定像素点与所述第二鱼眼像素点相对应,获取所述第二鱼眼像素点的坐标,建立所述第二鱼眼镜头查找表。
9.根据权利要求8所述的拼接系统,其特征在于,所述第二鱼眼镜头查找表建立单元之后,还包括:
最大宽度获取子单元,用于获取所述重叠区域的最大宽度;
底部边缘距离获取子单元,用于获取所述第一标定像素点距离所述第一鱼眼图像的底部边缘的距离;
第一融合度确定子单元,用于根据所述最大宽度和所述距离确定所述第一鱼眼图像的融合度;
第二融合度确定子单元,用于根据所述第一鱼眼图像的融合度确定所述第二鱼眼图像的融合度;
第三融合度确定子单元,用于若所述第二判断结果表示为所述第一标定像素点未与所述第二鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为1,确定所述第二鱼眼图像的融合度为0;
第四融合度确定子单元,用于若所述第一判断结果表示为所述第一标定像素点未与所述第一鱼眼像素点相对应,确定所述第一鱼眼图像的融合度为0,确定所述第二鱼眼图像的融合度为1。
10.根据权利要求9所述的拼接系统,其特征在于,所述期望全景图像确定模块,具体包括:
第一实际像素点获取单元,用于获取实际拍摄的全景图像的第一实际像素点;
第三判断单元,用于判断所述第一实际像素点在所述第一鱼眼镜头查找表内是否存在对应的第一查询坐标,得到第三判断结果;
第四判断单元,用于若所述第三判断结果表示为所述第一实际像素点在第一鱼眼镜头查找表内存在对应的第一查询坐标,判断所述第一实际像素点在所述第二鱼眼镜头查找表内是否存在对应的第二查询坐标,得到第四判断结果;
颜色值获取单元,用于若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内存在对应的第二查询坐标,获取所述第一查询坐标在所述第一鱼眼图像上的第一颜色值和所述第二查询坐标在所述第二鱼眼图像上的第二颜色值;
融合度值查找单元,用于在所述融合度查找表查找所述第一实际像素点处的融合度值;
第一期望颜色值获取单元,用于根据所述第一颜色值、所述第二颜色值以及所述融合度值确定所述期望全景图像内第一期望像素点的第一期望颜色值;所述第一期望像素点与所述第一实际像素点相对应;所述第一期望颜色值包括多个;
第一期望全景图像确定单元,用于根据多个所述第一期望颜色值确定期望全景图像;
第二颜色值确定单元,用于若所述第四判断结果表示为所述第一实际像素点在所述第二鱼眼镜头查找表内未存在对应的第二查询坐标,确定所述第一查询坐标在所述第一鱼眼图像上对应的颜色值为所述第一期望像素点的第二期望颜色值;所述第二期望颜色值包括多个;
第二期望全景图像确定单元,用于根据多个所述第二期望颜色值确定期望全景图像。
CN201711292883.8A 2017-12-08 2017-12-08 在gpu上实现双鱼眼图像实时全景图像拼接方法及系统 Pending CN107958440A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711292883.8A CN107958440A (zh) 2017-12-08 2017-12-08 在gpu上实现双鱼眼图像实时全景图像拼接方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711292883.8A CN107958440A (zh) 2017-12-08 2017-12-08 在gpu上实现双鱼眼图像实时全景图像拼接方法及系统

Publications (1)

Publication Number Publication Date
CN107958440A true CN107958440A (zh) 2018-04-24

Family

ID=61958400

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711292883.8A Pending CN107958440A (zh) 2017-12-08 2017-12-08 在gpu上实现双鱼眼图像实时全景图像拼接方法及系统

Country Status (1)

Country Link
CN (1) CN107958440A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110519528A (zh) * 2018-05-22 2019-11-29 杭州海康威视数字技术股份有限公司 一种全景视频合成方法、装置及电子设备
CN111862210A (zh) * 2020-06-29 2020-10-30 辽宁石油化工大学 一种基于环视相机的目标物检测定位方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136720A (zh) * 2013-03-12 2013-06-05 中科院微电子研究所昆山分所 车载360度全景拼接方法
US20160093028A1 (en) * 2014-09-25 2016-03-31 Lenovo (Beijing) Co., Ltd. Image processing method, image processing apparatus and electronic device
CN105678729A (zh) * 2016-02-24 2016-06-15 段梦凡 鱼眼镜头全景图像拼接方法
CN106023070A (zh) * 2016-06-14 2016-10-12 北京岚锋创视网络科技有限公司 实时全景拼接方法和装置
CN106023080A (zh) * 2016-05-19 2016-10-12 沈祥明 一种车载全景图像无缝拼接处理系统
CN106952311A (zh) * 2017-03-02 2017-07-14 山东省科学院自动化研究所 基于全景拼接数据映射表的辅助泊车系统及方法
CN107274346A (zh) * 2017-06-23 2017-10-20 中国科学技术大学 实时全景视频拼接系统
CN107274341A (zh) * 2017-05-18 2017-10-20 合肥工业大学 基于固定拼接参数的快速双目鱼眼全景图像拼接方法
CN107392851A (zh) * 2017-07-04 2017-11-24 上海小蚁科技有限公司 用于生成全景图像的方法和设备
CN107424120A (zh) * 2017-04-12 2017-12-01 湖南源信光电科技股份有限公司 一种全景环视系统中的图像拼接方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136720A (zh) * 2013-03-12 2013-06-05 中科院微电子研究所昆山分所 车载360度全景拼接方法
US20160093028A1 (en) * 2014-09-25 2016-03-31 Lenovo (Beijing) Co., Ltd. Image processing method, image processing apparatus and electronic device
CN105678729A (zh) * 2016-02-24 2016-06-15 段梦凡 鱼眼镜头全景图像拼接方法
CN106023080A (zh) * 2016-05-19 2016-10-12 沈祥明 一种车载全景图像无缝拼接处理系统
CN106023070A (zh) * 2016-06-14 2016-10-12 北京岚锋创视网络科技有限公司 实时全景拼接方法和装置
CN106952311A (zh) * 2017-03-02 2017-07-14 山东省科学院自动化研究所 基于全景拼接数据映射表的辅助泊车系统及方法
CN107424120A (zh) * 2017-04-12 2017-12-01 湖南源信光电科技股份有限公司 一种全景环视系统中的图像拼接方法
CN107274341A (zh) * 2017-05-18 2017-10-20 合肥工业大学 基于固定拼接参数的快速双目鱼眼全景图像拼接方法
CN107274346A (zh) * 2017-06-23 2017-10-20 中国科学技术大学 实时全景视频拼接系统
CN107392851A (zh) * 2017-07-04 2017-11-24 上海小蚁科技有限公司 用于生成全景图像的方法和设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110519528A (zh) * 2018-05-22 2019-11-29 杭州海康威视数字技术股份有限公司 一种全景视频合成方法、装置及电子设备
CN110519528B (zh) * 2018-05-22 2021-09-24 杭州海康威视数字技术股份有限公司 一种全景视频合成方法、装置及电子设备
CN111862210A (zh) * 2020-06-29 2020-10-30 辽宁石油化工大学 一种基于环视相机的目标物检测定位方法及装置
CN111862210B (zh) * 2020-06-29 2023-05-12 辽宁石油化工大学 一种基于环视相机的目标物检测定位方法及装置

Similar Documents

Publication Publication Date Title
AU2017246716B2 (en) Efficient determination of optical flow between images
CN103763479B (zh) 实时高速高清全景视频的拼接装置及其方法
CN106157304A (zh) 一种基于多个相机的全景图拼接方法及系统
CN108122191A (zh) 鱼眼图像拼接成全景图像和全景视频的方法及装置
CN107154014A (zh) 一种实时彩色及深度全景图像拼接方法
CN105933695A (zh) 基于多gpu高速互联的全景摄像机成像装置与方法
CN107274341A (zh) 基于固定拼接参数的快速双目鱼眼全景图像拼接方法
EP3446283A1 (en) Image stitching method and device
CN107958440A (zh) 在gpu上实现双鱼眼图像实时全景图像拼接方法及系统
EP3651119A1 (en) Disparity estimation from a wide angle image
RU2735066C1 (ru) Способ отображения широкоформатного объекта дополненной реальности
CN102081796A (zh) 图像拼接方法和装置
Babbar et al. Homography theories used for image mapping: a review
CN108898550A (zh) 基于空间三角面片拟合的图像拼接方法
WO2014119555A1 (ja) 画像処理装置、表示装置及びプログラム
Ortin et al. Occlusion-free image generation for realistic texture mapping
CN107426561A (zh) 一种3d360度的虚拟现实直播方法及装置
TW202209250A (zh) 用以產生旋轉後全景影像的轉換方法
Gledhill 3D panoramic imaging for virtual environment construction
EP3229470B1 (en) Efficient canvas view generation from intermediate views
Guan et al. Distortion correction for immersive navigation in spherical image environment
CN106600529A (zh) 一种全焦全景图像的获取方法和装置
Kim et al. A Study on 3D Panorama System Using Depth-map Generation Techniques
Wang et al. 360x180 stereoscopic panoramas from static light field capturing
Leng Image Mosaic Based On Fisheye Camera

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180424