专利名称:一种图像拼接的方法、系统的制作方法
技术领域:
本发明涉及数字图像处理技术领域,尤其涉及一种图像拼接的方法、系统。
背景技术:
随着数字成像技术的迅速发展,数字成像设备因其具有传统成^象设备无 可比拟的优势在各个领域都得到了越来越广泛的应用。但是在一些特殊的应 用场景中,数字成像设备仍然不能满足人们的需求,比如在获取大视场的数 字全景图像时,由于成像设备自身视场宽度窄的物理限制,单靠成像设备无 法达到获取全景图的目的,在这种情况下就需要依靠图像拼接技术来实现。
对于需要进行拼接的两图像帧,如果两图像是由成像设备转过一定的角 度连续拍摄,或者是由成像设备从不同的角度同时进行拍摄获得的一对同步 帧对,两图像帧中会有相同的部分图案,在进行拼接时就需要将相同部分的 图案进行重叠。但是,由于视差的原因,会出现重叠区部分区域能够重合而 部分区域重合不了的情况,这种情况会直接导致图像拼接处出现重影,大大 减弱图像拼接的效果。
现有技术中对视差造成的图像重影问题进行了分析,并提出了相应地解 决方案。首先,视差的出现是由于不同的光学投影中心导致的,当从两个或 多个视点观察同一景物时,不同的视点在不同的#见角下感知图{象,通过三角 测量原理就可以计算出不同视角下获得的该景物的图像像素的位置偏差,也 就是视差,这一过程与人类视觉的立体感知过程是类似的。进一步根据平面 对应几何学,不同的视点在不同的视角下感知图像上的同一物体存在一个射 影变换关系,该射影变换关系可以用 一个单应性矩阵来表示。
现有技术中就是利用了上述单应性矩阵来解决图像拼接时由^L差产生的 重影问题。以一对同步帧对的拼接为例,首先获取两图像帧上的匹配特征点, 所谓匹配特征点即两特征点在空间表示同 一点。然后根据获取的匹配特征点求解单应性矩阵,最后,根据该单应性矩阵将其中一帧图像上的所有像素点 (包括不重叠部分)进行表象变换,确定其在另一帧图像所在平面(或柱面 等)上的对应位置。这一过程即为图像拼接过程,之后还可以对拼接图像进 行颜色融合等处理,以得到较好的拼接图。
但是, 一般在进行图像拼接时不仅仅是一对同步帧对的拼接,通常是由 两台成像设备由不同的角度连续拍4聂获得一 系列同步帧对,然后对多对同步 帧对图像进行拼接,比如对视频会议中两台成像设备在一段时间内获取的图 像帧进行拼接,在实现本发明的过程中,发明人发现现有技术中根据一对同 步帧对上的匹配特征点获得单应性矩阵后,将该矩阵直接应用于其它同步帧 对的图像拼接中,显然这些匹配特征点不足以代表其它同步帧对上的匹配特 征点,可靠性较低,那么得到的单应性矩阵可靠性也较低不够精确。例如, 如果选取的这一对同步帧对在获取时存在信号干扰,引起画面扭曲或异常变 化,则由此得到的单应性矩阵就是错误的,直接应用于拼接其它同步帧对, 可能还会导致图像拼接错误。
发明内容
本发明实施例提供一种图像拼接的方法、系统,能够获得更可靠的匹配 特征点,从而获得更精确的单应性矩阵以改善图像拼接的效果。
为了解决上述技术问题,本发明实施例的技术方案如下
一种图像拼接的方法,包括
.乂人至少两对同步帧对中提取匹配特征点,所述同步帧对为由两个不同角 度获取的具有图像重叠区域的同步帧对;
#^居所述匹配特征点求解单应性矩阵; 接。, 、、'' "& "''';"
一种图像拼接的系统,包括
选取模块,用于在由两个不同角度获取的同步帧对中,选取至少两对具有图像重叠区域的同步帧对;
提取模块,用于在所述选取模块选取的同步帧对中提取匹配特征点;
求解模块,用于根据所述提取模块提取的匹配特征点求解单应性矩阵;
拼接模块,用于应用所述求解模块求解的单应性矩阵对所述由两个不同 角度获取的同步帧对进行图像拼接。
本发明实施例通过对多对同步帧对的匹配特征点进行提取,获得了大量 的匹配特征点,与现有技术中只通过一对同步帧对提取的匹配特4正点相比较 更具有代表性,因此获得的单应性矩阵也就更可靠也更精确,克服了现有技 术的缺点,从而可以获得更好的图像拼接效果。
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所 需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性 的前提下,还可以根据这些附图获得其他的附图。
图l是本发明实施例的一种图像拼接方法流程图2是本发明实施例一的方法流程图3是本发明实施例二的方法流程图4是本发明实施例中提取匹配特征点的示意图5是本发明实施例的一种对拼接图像进行颜色融合的方法流程图6是本发明实施例的另一种颜色融合的方法流程图7是本发明实施例中拼接线的示意图8是本发明实施例的另一种颜色融合的方法流程图9是本发明实施例中拼接线两侧像素点的示意图10是本发明实施例的 一种图像拼接系统的结构示意图ll是本发明实施例的一种提取模块的结构示意图;图12是本发明实施例的一种求解模块的结构示意图; 图13是本发明实施例的一种颜色融合模块的结构示意图; 图14是本发明实施例另 一种颜色融合模块的结构示意图。
具体实施例方式
为了使本领域技术人员能进一步了解本发明的特征及技术内容,请参阅 以下有关本发明的详细说明与附图,附图仅提供参考与说明,并非用来限制 本发明。
下面结合附图和实施例,对本发明的技术方案进行描述。 参照图1,是本发明实施例一种图像拼接的方法流程图。 该方法可以包括以下步骤
步骤101,在由两个不同角度获取的同步帧对中,选取至少两对同步帧对, 并在选取的同步帧对上提取匹配特征点。
其中每对同步帧对中的两图像帧均具有图像重叠区域。为了使获得的匹配 特征点更具有代表性更可靠,在本步骤中选取至少两对同步帧对,并提取该 至少两对同步帧对上的匹配特征点作为下一步求解单应性矩阵的依据。具体 如何选择同步帧对并提取符合预置条件的匹配特征点,请参照后续实施例的 描述。
其中,提取匹配特征点的方法有很多,如SIFT ( Scale-Invariant Features , 尺寸不变特征)特征点检测方法,也可釆用SIFT的改进算法,或者采用 Harris、 Susan角点检测法及其相关改进算法。此处为现有技术,不再赘述。
步骤102,根据所述匹配特征点求解单应性矩阵。
对于单应性矩阵的求解是本领域众所周知的技术,比如,可以才艮据匹配 特征点的齐次坐标来求解单应性矩阵,用H来标记该单应性矩阵,此处不作 详细述说。
步骤103, 行图像拼接。在该拼接过程中,可以先将需要拼接的同步帧对的坐标变换到同一坐标
系下,以其中一对同步帧对A、 A'的4并接为例,然后,可以先将图4象帧A固 定,将另一图像帧A'上的所有像素点按照下述公式求解其在图像帧A所在坐 标系上的对应坐标位置
<formula>formula see original document page 11</formula>其中,(u,v,l)为某像素点在图像帧A'上的坐标,(u',v',l )为该^^素点根据 单应性矩阵进行坐标变换后得到的在图像帧A所在坐标系上的坐标。才艮据该 方法可以获得图像帧A'上的所有像素点在图像帧A所在坐标系上的坐标。
最后将图像帧A'上的所有像素点移动到对应坐标位置,即实现图4象拼接。 I 口 、、、 、、、、;、 々 '
现有技术中只通过一对同步帧对上的匹配特征点来获得单应性矩阵,显 然这些匹配特征点不足以代表其它同步帧对上的匹配特征点,可靠性4交低, 由此获得的单应性矩阵的精确度也较低,当应用该精度较低的单应性矩阵去 拼接其它同步帧对的时候,会对其它同步帧对引入拼接误差。而且,如果选 取的这一对同步帧对在获取时存在信号干扰,引起画面扭曲或异常变化,则 由此得到的单应性矩阵就是错误的,可能还会导致拼接错误。
本发明实施例通过对多对同步帧对的匹配特征点进行4是取,获得了大量 的匹配特征点,与现有技术中只通过一对'同步帧对提取的匹配特征点相比较 更具有代表性也更可靠,因此获得的单应性矩阵也就更可靠也更精确,从而 可以获得更好的图像拼接效果。
以下通过具体实施例来说明如何提取匹配特征点并进行图像拼接。
参照图2,是本发明实施例一的方法流程图。
以两台成像设备X、 Y从不同角度获取的一系列的同步帧对为例,同步 帧对中均有图像重叠部分。为了便于描述和理解,对一系列的同步帧对进行
iiTl时刻获得一对同步帧对Al、 A2; T2时刻获得一对同步帧对B1、 B2; T3时刻获得一对同步帧对C1、 C2; T4时刻获得一对同步帧对Dl、 D2; 该图像拼接过程可以包括以下步骤
步骤201,选取两对同步帧对,并提取各对同步帧对上满足预置条件的匹 配特征点。
由于本实施例中总共获得了四对同步帧对,数量较少,所以可以选取两 对同步帧对来拔_取匹配特征点,比如选取A1、 A2和B1、 B2。如果是远远大 于四对同步帧,则可以根据需求适当选取多对同步帧对来提取匹配特征点, 但是选取的同步帧对越多,获取的匹配特征点也越多,在求解单应性矩阵时 计算量也就会越大。
在本实施例中,还可以对提取的匹配特征点是否满足预置条件进行检验, 该预置条件可以是匹配特征点数目不少于3个和/或匹配特征点均匀分布在 选取的同步帧对上。
该筛选过程可以进一步保证用于计算单应性矩阵的匹配特征点更具有代 表性,从而使获得的单应性矩阵更加精确。筛选满足上述条件的匹配特征点 后进行下一步骤的运算。
步骤202,根据所述匹配特征点求解单应性矩阵。
该步骤与前述实施例的步骤102类似,此处不再赘述。
步骤203,将需要拼接的同步帧对变换到同 一坐标系中。
比如成像设备X获得的图像Al 、 Bl、 Cl、 Dl均在平面坐标系;另 一台成像设备Y获得的图像A2 、 B2、 C2、 D2均在柱面坐标系。则可以 将设备Y获得的图像均进行坐标变换,转化到与设备X获得图像的平面坐标 系中。如果需要最终得到的拼接图像在柱面坐标系下,则将X设备的图像进 行坐标变换,或者在统一的坐标系下进行图像拼接后再将拼接图像变换到需 要 柱面坐标系下。步骤204,在同一的坐标系中,应用该单应性矩阵进行各同步帧对的图像拼接。
以同步帧对Al、 A2的图像拼接为例,如果图像帧Al固定,移动图像 A2到A1上,使A1与A2的图像重叠部分重合即可实现图像的拼接。所以要 获取A2图像上的所有像素点在A1图像所在坐标系上的对应位置,也就是对 应坐标。
具体可以应用前述实施例中的方程求解该像素点在Al图^f象坐标系上的 对应位置,其它像素点作同样操作,该过程可以应用软件程序进行统一数据 处理,此处为公知技术,不再赘述。
确定图像帧A2上所有像素点在Al图像坐标系上的对应位置后,将A2 图像上的所有像素点移动到对应位置上即可。该过程也可以应用软件程序进 行统一数据处理。
当然上述过程也可以是对某个像素点的对应位置计算完成后立即移动该 点,而不用等所有像素点都计算完成后再移动。
本实施例中,通过选取多对同步帧对来提取匹配特征点,保证了获得的 匹配特征点的代表性,从而保证了单应性矩阵的可靠性和精确度,而且通过 对匹配特征点的筛选,剔除了可能增加误差的特征点,更提高了单应性矩阵 的精确度。
上述实施例方法主要是通过增加匹配特征点的量来提高匹配特征点的代 表性和单应性矩阵的可靠性,只是考虑了同步帧对间的相关性,这种方法获 取的匹配特征点中很可能会存在一些不可靠的点,进而影响单应性矩阵的精 度。下面通过实施例二来说明如何获得更精确的匹配特征点。
参照图3,是本发明实施例二的方法流程图。
本实施例仍然采用上述实施例中获得的一系列同步帧对进行说明。需要 补充的是,Tl、 T2、 T3、 T4时刻是在时域上连续的,也就是说图像帧Al、 Bl、 C1和D1是连续帧,A2、 B2、 C2和D2是连续帧。
本实施例中图像拼接的方法可以包括步骤301,选耳又三对同步帧对。
本步骤中选取的同步帧对可以为Al、 A2, Bl、 B2和C1、 C2。
步骤302,提取各对同步帧对上的匹配特征点,记为第一类匹配特征点。
提取各对同步帧上的匹配特征点即为分别提取Al和A2, B1和B2, Cl 和C2上的匹配特征点,将该类特征点记为第一类匹配特征点。
步骤303,提取在时域上连续的各图像帧上的匹配特征点,记为第二类匹 配特;f正点。
在选取的三对同步帧中,在时域上连续的图像帧即为Al、 B1和C1,以 及A2、 B2和C2。
Al、 B1和C1虽然不同步,各图像帧中的物体的位置关系可能发生变化, 但是由于在时域上是连续的, 一般A1、 Bl和C1上仍然会存在共同的物体, 也就一定会存在匹配特征点,A2、 B2和C2的情况类似。将该类匹配特征点 记为第二类匹配特征点。
上述步骤302和步骤303的顺序可以更换,或步骤302和步骤303可以 同时进行,此处不作限制。
步骤304,提取既属于所述第一类匹配特征点又属于所述第二类匹配特征 点的匹配特征点作为公共匹配特征点。
如图4所示,假设提取出的第一类匹配特征点包括al、 al', a2、 a2', bl、 bl', b2、 b2', cl、 cl'。提取出的第二类匹配特征点包括Al、 Bl和Cl 上的有al、 b2 、 cl; A2、 B2和C2上的有al'、 b2'和cl'。则提取的/〉 共匹配特征点即为al、 al', b2、 b2'和cl、 cl'。
为了简化提取的过程,在提取第二类匹配特征点时,可以只提取A1、 Bl 和Cl上的匹配特征点,或者A2、 B2和C2上的匹配特征点。
步骤305,选取满足预置条件的公共匹配特征点作为用于求解所述单应性 矩阵的匹配特4正点。
为了进一步保证匹配特征点的可靠性,本步骤中对提取的公共匹配特征点是否满足预置条件进行检验。该预置条件可以与前述实施例中的相同,也 可以根据需要重新设定。
匹配特征点数目不少于3个且均匀分布,其中,均匀分布是指在两图像 帧上的匹配特征点对不是集中在图像的某个小块区域,而是分布于整个图像
区域。还可以增加一个预置条件选取的匹配特征点要包含不同的深度层次, 即深度值要有一定的范围,比如大于某个深度值的匹配特征点要不少于3个, 小于该深度值的匹配特征点也要不少于3个,该深度值可根据具体图像的深 度层次确定。
步骤306, #4居匹配特征点求解单应性矩阵。
本步骤可以与上述步骤202类似,此处不再赘述。
但是对于图案比较复杂的图像帧,有可能近景特征点和远景特征点的深 度值差别较大,所谓深度值即物体到成像设备之间的距离。这种情况下对于 近景和远景的视差也是有差别的,比如,在极限情况下,两台成像设备对于 无穷远处的物体产生的视差可以视为0,而对于近景的视差却很大。由于深度 或视差的影响,导致每个深度层次的单应性矩阵不一致。
对于特殊情况下图像帧中远景和近景的深度值差别比较大时,可以采用 以下方法求解单应性矩阵根据所述匹配特征点的深度值划分至少两类匹配 特征点;根据划分后的匹配特征点求解各自对应的单应性矩阵,对于不同类 的匹配特征点,应用各类匹配特征点对应的单应性矩阵对所述由两个不同角 度获取的同步帧对进行图像拼接。该划分的匹配特征点可以为两类或三类等, 不同类别的匹配特征点的深度值范围不同。作为一个例子,可以分为以下两 类匹配特征点
根据所述匹配特征点的深度值划分近景匹配特征点和远景匹配特征点;
根据所述近景匹配特征点求解近景的单应性矩阵,根据所述远景的匹配 特征点求解远景的单应性矩阵。
具体的可以设定一个深度值阈值,当上一步骤中提取的某些匹配特征点 深度值大于该阈值时,将这些匹配特征点作为远景匹配特征点,然后才艮据这些匹配特征点求解远景的单应性矩阵。剩下的匹配特征点的深度值小于该深 度值阈值,求解的单应性矩阵即为近景的单应性矩阵。
该深度值阈值可以是所有匹配特征点的深度值的平均值,或者是所有匹 配特征点的深度值的加权平均值等等。
当然在进行图像拼接时, 一般图像帧的近景远景视差差别不大,采用相 同的单应性矩阵进行拼接即可。
步骤307,应用单应性矩阵进行图傳j并接。
在将需要拼接的图像帧变换到同 一坐标系后,即可进行图像拼接。
在上一步骤中,如果获得近景的单应性矩阵和远景的单应性矩阵,则在 本步骤中进行图像拼接时,可以根据像素点深度值的大小应用对应的单应性 矩阵进行坐标变换得到对应位置。
其中,对于深度值大于阈值的像素点,应用所述远景的单应性矩阵;对 于深度值小于所述阈值的像素点,应用所述近景的单应性矩阵,进行各同步 帧对的图像拼接。
其它拼接过程与前述实施例类似,此处不再赘述。
配特征点,并且根据特征点的数目、深度层次和分布进行了筛选,提高了匹 配特征点的可靠性,从而大大提高了单应性矩阵的精确度,改善了后续图像 拼接的效果。而且针对远景和近景分别采用各自对应的单应性矩阵进行图<象 拼接,也提高了图像拼接的效果。
釆用上述各实施例的方法可以获得较好的图像拼接效果,但是由于获取 同步帧对时光强存在差异,拼接后拼接图像中图像重叠区域的像素点的颜色 值差别较大,或者会出现比较明显的拼接缝,降低了用户的视觉体验,所以 为了改善图像拼接的效果,在完成上述拼接步骤后,本实施例方法还可以进 一步包括颜色融合,以使图像重叠区域或拼接缝处的颜色过渡自然。当然, 该颜色融合过程也可以应用于采用其它方法获得的拼接图像中。参照图5,是本发明实施例一种对拼接图像进行颜色融合的方法流程图。 本实施例主要针对拼接图像中图像重叠区域的颜色融合。
该方法可以包4舌
步骤501,对所述拼接图像上的像素点在所属同步帧对上的原始颜色值进 行加权平均,获得所述像素点在所述拼接图像中的更新颜色值,根据所述更 新颜色值对所述拼接图像中的所述像素点进行赋值;其中,所述像素点在所 述拼接图像的图像重叠区域内。
例如对图像帧P和R的拼接图像进行颜色融合时,对于拼接图像的重叠 区域内的像素点Q,如果该像素点Q在图像帧P上的原始颜色值为pl,在图 像帧R上的原始颜色值为rl,则对pl和rl进行加权平均,获得的值即为该 像素点Q在拼接图像中的更新颜色值,利用该更新颜色值对拼接图像中对应 像素点进行颜色值赋值即可。
具体过程,可以首先确定该像素点Q各原始颜色值的权重。该权重的确 定可以是根据权值在图像边缘处最低,在中心处贡献最多计算的。
假设图像帧P的右侧与图像帧R的左侧拼接,则pl的权重为该像素点Q 的x坐标到图像帧P的左侧图像边界的差值的绝对值,再除以整个拼接图像 的宽度,rl的权重计算类似。设pl的权重为W,则rl的权重为l-W。
最终的更新颜色值为W xpi+(i_w) x rl。
在具体实施时,也还可以对权重W进行调整,例如提升pl的权重,降 低rl的权重,也就是说pl的作用增大些,同时rl的作用减小些。其中,对 权重W进行调整具体可以对W进行一定倍数的增加或减小,设定W的调整 系数为a,则aW即为调整后的权重,a值可以取0 2之间的正实数,并且当 a取值在l 1.5时,图像颜色融合效果较好。
重叠区域内的其它像素点均可采用上述方法获得更新颜色值。
步骤502,若所述像素点的邻域内像素点有原始颜色值,则对所述邻域内 像素点的原始颜色值与所述像素的更新颜色值进行加权平均,获得所述邻域内像素点的更新颜色值,根据所述更新颜色值对所述拼接图像中的所述邻域 内像素点进行赋值。
以上述像素点Q为例,通过步骤501获得更新颜色值后,进一步更新Q 邻域内的像素点的颜色值,该邻域的大小可以为以Q点为中心的3x3区域, 当然该区域大小可以根据需要进行划定。
对于该邻域内的像素点S,可能位于图像帧P和R拼接图像的重叠区域 内,也可能位于重叠区域外,如果该^(象素点S有原始颜色值s,则该^象素点S 的更新颜色值也可以应用类似的加权平均方法获得,可以采用像素点Q的更 新颜色值的权重仍为W,邻域内^f象素点S的权重为l-W进行计算即
W[plxw+(1-W) x rl]+(l-W) xs
当然,如果该像素点s也在图像重叠区域内,可以将像素点s按照步骤
501获得的更新颜色值作为本步骤中像素点S的原始颜色值进行重复计算,也 可以对于像素点S只执行步骤501 ,不执行本步骤502。
在具体应用时,该颜色融合步骤可以与图像拼接同时进行,可以通过应 用软件程序实现。
首先输入图像帧P,以图像帧P所在的图像平面(或柱面等)作为标记 图,该标记图中具有原始颜色值的像素点设其颜色标记值为1,比如图像帧P 中的^f象素点p具有原始颜色值,则p点的颜色标记值为1。对于标记图中没有 颜色值的像素点,比如图像帧P界外的空白区域上的像素点q,设其颜色标记 值为0。
将图像帧R写入标记图中进行图像拼接,同时进行颜色融合,以图像帧 R上的一个写入像素点r为例进行说明。假设根据单应性矩阵像素点r在标记 图上的对应位置为像素点p所在的位置,也即像素点r和像素点p位于两图像 帧的图像重叠区域,则在写入r点时,由于像素点p显示的颜色标记值为1, 说明该像素点p具有原始颜色值,需要通过加权平均求得更新颜色值,所以, 像素点r在写入p点后的最终更新颜色值即为p点的原始颜色值与r点的原始 颜色值的加权平均值,具体计算公式如前所述。若根据单应性矩阵像素点r在标记图上的对应位置为像素点q所在的位 置,也即像素点r和像素点q不位于两图像帧的图像重叠区域,则由于像素点 q显示的颜色标记值为O,说明像素点q没有原始颜色值,所以像素点r在写 入q点时,可以直接将r点的原始颜色值作为更新的颜色值对该像素点进行颜 色赋值。
上述过程也即对拼接图像重叠区域的像素点颜色值进行加权平均赋值。
像素点r确定更新颜色值后,对以像素点r为中心的邻域内的像素点进行 颜色赋值。如果该邻域内的像素点颜色标记值为1,则采用上述方法对r点的 更新颜色值和邻域内该像素点的原始颜色值进行加权平均获得邻域内该像素 点的更新颜色值。如果该邻域内的像素点颜色标记值为0,则采用像素点r的 更新颜色值对该像素点进行颜色赋值。该邻域的范围可以是以像素点r为中心 的3 x 3区i或。
其它像素点的更新颜色值同样采用上述方法获得,此处不再赘述。
通过采用上述实施例方法对拼接图重叠区域的颜色进行融合,使重叠区 域与两图像帧之间的颜色过渡自然,改善了图像的拼接效果和用户的视觉体 验。
参照图6,是本发明实施例另一种颜色融合的方法流程图。 本实施例主要针对拼接图像中拼接线处的颜色融合。 该方法可以包4舌
步骤601,获取所述拼接图像中拼接线的位置。'
所谓的拼接线即为同步帧对的重叠区域的边界线。如果是将两图像帧的 左右部分进行拼接,则拼接线为两竖直边界线,如果是将两图像帧的上下部 分进行拼接,则拼接线为两水平边界线。
步骤602,对所述拼接线两侧选定的像素点的原始颜色值作均衡运算,确 定所述选定的像素点的更新颜色值。
首先选定需要进行颜色融合也即颜色值更新的像素点及数目,具体可以计算获得,也可以根据需要选定。如果本实施例中两拼接线之间相距IO个像 素点,则可以在一条拼接线的左右两侧各选择相邻的3个像素点作为选定的 像素点,另一条拼接线类似。
然后对选定的像素点的原始颜色值作均衡运算,所谓的均衡运算即减小 拼接线两侧的像素点的颜色值差距,使两侧像素点的颜色值较为接近,从而 拼接线在拼接图像中不太明显,图像颜色在拼接线处过渡自然。
在本实施例中该均衡运算具体如下
以一条竖直拼接线为例,如图7所示,假设左右两侧的选定的像素点的 颜色值分别为左侧p0、 pl、 p2,右侧q0、 ql、 q2,则通过以下均衡算法对 两侧的像素点的原始颜色值进行增值获得各像素点的更新颜色值p0'、pl'、p2'、 qO'、 ql'、 q2':
; o =0 2+2^+2;70+2《0+仏+4) / 23
A =(P2+《o+2) / 22
& = (2/ 3 + 3/ 2 + A ++ & + 4) / 22
& =(《2+2^+2《0+2p0+A+4) / 23
仏+仏+《0 +A) +2) / 22
《2 =(2《3+3&+仏+《0+A)+4) / 23
另一条竖直拼接线类似,不再赘述。水平拼接线上下两侧的像素块颜色 值的计算方法与,竖直拼接线的方法类似,此处也不再赘述。
通过采用上述方法对拼接线处的像素点进行颜色融合,使拼接线处的颜 色过渡自然,改善了图像的拼接效果和用户的视觉体验。
参照图8,是本发明实施例另一种颜色融合的方法流程图。
本实施例也主要针对拼接图像中拼接线处的颜色融合。
该方法可以包4舌
步骤801,获取所述拼接图像中拼接线的位置。本步骤与前述实施例类似,此处不再赘述。
步骤802,根据位于所述拼接线两侧且相邻的像素点的原始颜色值的差均
值,选定需要更新颜色值的像素点。
仍以前述实施例中的竖直拼接线为例,如图9所示,左右两侧的l象素点 的颜色值分别为左侧p0、 pl、 p2、 p3……右侧q0、 ql、 q2、 q3……
如图9,像素点p0和q0位于拼接线两侧且相邻,假设p0的原始颜色值 为8, q0的原始颜色值为0,则根据p0和q0的原始颜色值的差均值 iDeltaAver=abs(( p0-q0)/2) = 4,拼接线左右两侧需要更新颜色值的象素点各为 4个,分另'J为p0、 pl、 p2、 p3; q0、 ql、 q2、 q3。
其中,如果颜色值差均值为非整数,则余数部一定是l,在选定需要更新 颜色值的像素点时,可以让颜色值偏大的一侧选定的像素点数目比颜色值偏 小的一侧选定的数目多1。
例如,々Ii殳pO的原始颜色值为255, qO的原始颜色值为O,则拼4妄线一 侧的需要更新颜色值的像素点的数目为两像素点原始颜色值差均值的整数 部,即为iDeltaAver=abs((pO-qO)/2)= 127,则4并4妄线左右两侧需要更新颜色 值的像素点,左边为iDeltaAver+ 1个和右边为iDeltaAver个,即拼接线左右 两边需要更新的像素点分别为p0、 pl、 p2、 p3…pl27;q0、 ql、 q2、 q3…ql26。
选定需要更新颜色值的像素点,还可以采用以下方法
将拼接线一侧四个或四个以上的像素点的原始颜色值求均值,然后将另 一侧相同数量的像素点原始颜色值求均值,然后两均值做差,即为两边的原 始颜色差值,然后求原始颜色差值的一半即为两边需要更新的像素点的个数。
步骤803,在所述需要更新颜色值的像素点中,根据所述差均值对所述拼 接线的两侧中原始颜色值偏大的一侧的像素点进行颜色值递减,对原始颜色 值偏小的一侧的像素点进行颜色值递增。
假设拼接线左边原始颜色值大于右边,则由拼接线往左逐次减小像素点 的原始颜色值,则由拼接线往右逐次增大像素点的原始颜色值,如图9所示, p0的颜色值更新为原始p0 ^直加上负的iDeltaAver, pl的颜色值更新为原始pl值加上负的(iDeltaAver-l), p2的颜色值更新为原始p2值加上负的 (iDeltaAver-2), p3的颜色值更新为原始p3值加上负的(iDeltaAver-3);拼接线 往右像素点颜色值渐次增加,即q0的颜色值更新为原始q0值加上正的 iDeltaAver, ql的颜色值更新为原始ql值加上正的(iDeltaAver-l), q2的颜色 值更新为原始q2值加上正的(iDeltaAver-2), q3的颜色值更新为原始q3值加 上正的(iDeltaAver-3)。
通过采用上述方法对拼接线处的像素点进行颜色融合,使拼接线两侧的 颜色值的差值减小,从而拼接线处的颜色过渡自然,改善了图像的拼接效果 和用户的^L觉体-睑。
是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机 可读取存储介质中,该程序在执行时,包括以下步骤
从至少两对同步帧对中提取匹配特征点,所述同步帧对为由两个不同角 度获取的具有图像重叠区域的同步帧对;
根据所述匹配特征点求解单应性矩阵; 接。、;、、、' 、s又 、5 ''、 、'
所述的存储介质,如ROM/RAM、磁碟、光盘等。
以上对图<象拼接的方法进行了详细说明,下面通过实施例对相应系统的 结构进行介绍。
参照图10,为本发明实施例一种图^象拼接的系统结构示意图。
该系统可以包括选取模块1001、提取模块1002、求解模块1003和拼接 模块1004。
其中,选取模块1001,用于在由两个不同角度获取的同步帧对中,选取
至少两对同步帧对,所述同步帧对具有图像重叠区域。
提取^^块1002,用于在所述选取模块iooi选取的同步帧对中^是:取匹配特征点。
求解模块1003,用于根据所述提取模块1002提取的匹配特征点求解单应 性矩阵。
拼接模块1004,用于应用所述求解模块1003求解的单应性矩阵对所述由 两个不同角度获取的同步帧对进行图像拼接。
选取模块1001选取同步帧对后,由提取模块1002提取同步帧对上的匹 配特征点,然后求解模块1003根据提取的匹配特征点计算单应性矩阵,最后 由拼接模块1004应用单应性矩阵完成图像的拼接。
本发明实施例通过选取模块1002选择多对同步帧对,并由提取模块1002 对多对同步帧对的匹配特征点进行提取,获得了大量的更具代表性的匹配特 征点,从而提高了由此获得的单应性矩阵的精度,改善了图像拼接的效果。
为了使提取模块1002提取的匹配特征点更具有代表性更可靠,选取模块 1001可以选取满足以下条件的同步帧对选取的所述同步帧对彼此在时域上 连续,也即选取的同步帧对中,由同一角度获得的图像帧在时域上连续,则 该条件下,具体的提取^t块1002的结构请参阅下述实施例。
参照图11,为本发明实施例一种提取模块的结构示意图。
该提取模块可以包括第一提取单元1101和第二提取单元1102。
第一提取单元1101,用于提取各对同步帧对上的匹配特征点,记为第一 类匹配特征点;提取在时域上连续的图像帧上的匹配特征点,记为第二类匹 配特征点。
第二提取单元1102,用于提取既属于所述第一类匹配特征点又属于所述 第二类匹配特征点的匹配特征点作为公共匹配特征点。
首先由提取单元1101提取同步帧对上的匹配特征点,及连续图像帧上的 匹配特征点。然后再由提取单元1102提取这两类匹配特征点的交集部分,即 公共的匹配特征点,并且还可以对该公共的匹配特征点作进一步的筛选,得 到满足预置条件的匹配特征点。本实施例通过上述两个提取单元在空域上的同步帧对和时域上的连续帧 上提取公共的匹配特征点,并且可以根据特征点的数目、深度层次和分布进 行了筛选,提高了匹配特征点的可靠性,从而大大提高了单应性矩阵的精确 度,改善了后续图像拼接的效果。
该提取模块提取出匹配特征点后,求解模块即可根据第二提取单元1102 选取的满足预置条件的公共匹配特征点求解单应性矩阵。
在求解模块求解单应性矩阵的过程中,对于图案比较复杂的图像帧,有 可能近景特征点和远景特征点的深度值差别较大,进而导致不同深度层次的 匹配特征点求解出的单应性矩阵不一致。这种情况下求解模块就需要对远景 和近景进行分别处理,求解模块的具体结构请参照下述实施例。
参照图12,为本发明实施例一种求解模块的结构示意图。
该求解模块可以包括划分单元1201和运算单元1202。
其中,划分单元1201,用于根据所述匹配特征点的深度值划分至少两类 匹配特征点。运算单元1202,用于根据划分后的匹配特征点求解各自对应的 单应性矩阵。
在本实施例中,划分单元1201,具体用于根据所述提取模块提取的匹配 特征点的深度值划分近景匹配特征点和远景匹配特征点。
运算单元1202,具体用于根据所述划分单元1201划分的近景匹配特征点 求解近景的单应性矩阵,根据所述划分单元划分的远景的匹配特征点求解远 景的单应性矩阵。
划分单元1201可以首先根据设定的深度值进行划分,如果某匹配特征点 的深度值大于该深度值,则确定该匹配特征点为远景匹配特征点,否则确定 该匹配特征点为近景匹配特征点。当然也可以根据同样的原理划分多个深度 层次的匹配特征点。然后运算单元1202就可以根据划分的匹配特征点分别求 解单应性矩阵了。
该求解模块通过上述两个单元针对远景和近景分别求解了远景的单应性 矩阵和近景的单应性矩阵,有利于后续应用该单应性矩阵进行图像拼接时改善图像拼接的效果。
在后续的图像拼接过程中,拼接模块具体用于对于深度值大于阔值的像 素点,应用所述运算单元求解的远景的单应性矩阵,对所述由两个不同角度 获取的同步帧对进行图像拼接;对于深度值小于所述阔值的像素点,应用所 述运算单元求解的近景的单应性矩阵,对所述由两个不同角度获取的同步帧 对进行图像拼接。
在对图像拼接后由于获取同步帧对时光强会有差异,拼接后拼接图像中 重叠区域的像素点的颜色值差别较大,或者会出现比较明显的拼接缝,降低 了用户的视觉体验,所以为了改善图像拼接的效果,本发明实施例还提供了 一种颜色融合模块,用于对前述图像拼接系统或其它系统获得的拼接图像进 行颜色融合,以使重叠区域或拼接缝处的颜色过渡自然。
参照图13,为本发明实施例一种颜色融合^^莫块的结构示意图。
本实施例中,该才莫块可以包括第一获耳又单元1301和第二获取单元1302。
第一获取单元1301,用于对所述拼接图像上的像素点在所属同步帧对上 的原始颜色值进行加权平均,获得所述像素点在所述拼接图像中的更新颜色 值,根据所述更新颜色值对所述拼接图像中的所述像素点进行赋值;其中, 所述像素点在所述拼接图像的重叠区域内。
第二获取单元1302,用于当所述像素点的邻域内像素点有原始颜色值时, 对所述邻域内像素点的原始颜色值与所述像素点在所述拼接图像中的更新颜 色值进行加权平均,获得所述邻域内像素点在所述拼接图像中的更新颜色值, 根据所述更新颜色值对所述拼接图像中的所述邻域内像素点进行赋值。
第一获取单元1301首先对拼接图像重叠区域的像素点进行颜色处理,然 后由第二获取单元1302对重叠区域内像素点的邻域内像素点再进行颜色处 理,两种处理均可以采用加权平均的方法。该模块还可以包括用于对非图像 重叠区域内的像素点进行颜色值赋值的单元,非图像重叠区域内的匹配像素 点在各自所述的图像帧中,其中一个像素点具有原始颜色值,其匹配1^象素点 没有原始颜色值,该单元采用该像素点的原始颜色值作为更新颜色值对拼接后的拼接图像中对应的像素点进行赋值。
通过上述单元对拼接图重叠区域的颜色进行融合,使重叠区域与两图像 帧之间的颜色过渡自然,改善了图像的拼接效果和用户的视觉体验。
参照图14,为本发明实施例另一种颜色融合模块的结构示意图。
该模块可以包括拼接线获取单元1401和颜色均衡单元1402。
拼接线获取单元1401,用于获取所述拼接图像中拼接线的位置。
颜色均衡单元1402,用于对所述拼接线两侧选定的像素点的原始颜色值 作均衡运算,确定所述选定的像素点在所述拼接图像中的更新颜色值。
其中,颜色均衡单元1402可以采用对拼接线两侧选定的像素点分别进行 颜色值增加,但增加幅度不同,以缩小两侧像素点颜色值的差别。颜色均衡 单元1402还可以采用另 一种方法进行颜色均衡,具体的,该颜色均衡单元1402 又可以包括
第一选定子单元1412,用于根据位于所述拼接线两侧且相邻的像素点的 原始颜色值的差均值,确定需要更新颜色值的像素点及其个数。
第一颜色更新子单元1422,用于在所述需要更新颜色值的像素点中,根 据所述差均值对所述拼接线的两侧中原始颜色值偏大的一侧的像素点进行颜 色值递减,对原始颜色值偏d、的 一侧的像素点进行颜色值递增。
在本发明的另一实施例中,该颜色均衡单元1402又可以包括第二选定子 单元和第二颜色更新子单元
其中,第二选定子单元,用于选择所述拼接线两侧相同数量的像素点, 根据选择的像素点的原始颜色值分别求解拼接线两侧的颜色值均值,根据所 述拼接线两侧的颜色值均值的差均值,确定需要更新颜色值的像素点及其个 数;
第二颜色更新子单元,用于在所述需要更新颜色值的像素点中,根据所 述差均值对所述拼接线的两侧中原始颜色值偏大的 一侧的像素点进行颜色值 递减,对原始颜色值偏小的一侧的像素点进行颜色值递增。通过上述单元对拼接线处的像素点进行颜色融合,使拼接线两侧的颜色 值的差值减小,从而拼接线处的颜色过渡自然,改善了图像的拼接效果和用 户的视觉体l全。
上述实施例中各模块的具体实现过程请参照前述方法实施例中的相应描 述,此处不再赘述。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何 在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本 发明的权利要求保护范围之内。
权利要求
1、一种图像拼接的方法,其特征在于,包括从至少两对同步帧对中提取匹配特征点,所述同步帧对为由两个不同角度获取的具有图像重叠区域的同步帧对;根据所述匹配特征点求解单应性矩阵;应用所述单应性矩阵对所述同步帧对进行图像拼接。
2、 根据权利要求1所述的方法,其特征在于,所述匹配特征点数目不少于3个,和/或所述匹配特征点均匀分布在所述同步帧对上。
3、 根据权利要求1所述的方法,其特征在于,所述至少两对同步帧对彼此在时域上连续,则所述在同步帧对中提取匹配特征点包括提取各同步帧对上的匹配特征点,记为第一类匹配特征点;提取在时域上连续的图^f象帧上的匹配特4i点,记为第二类匹配特4i点;提取既属于所述第一类匹配特征点又属于所述第二类匹配特征点的匹配特征点作为/>共匹配特征点;相应地,所述根据所述匹配特征点求解单应性矩阵具体为根据所述公共匹配特征点求解单应性矩阵。
4、 根据权利要求1至3中任意一项所述的方法,其特征在于,所述根据所述匹配特征点求解单应性矩阵包括根据所述匹配特征点的深度值划分至少两类匹配特征点,根据划分后的匹配特征点求解各自对应的单应性矩阵;对进行图像拼接,具体为对于不同类的匹配特征点,应用各类匹配特征点对应的单应性矩阵对所述由两个不同角度获取的同步帧对进行图像拼接。
5、 根据权利要求4所述的方法,其特征在于,所述根据所述匹配特征点的深度值划分至少两类匹配特征点,根据划分后的匹配特征点求解各自对应的单应性矩阵,具体为根据所述匹配特征点的深度值划分为两类匹配特征点,包括近景匹配特征点和远景匹配特征点;根据所述近景匹配特征点求解近景的单应性矩阵,根据所述远景的匹配 特征点求解远景的单应性矩阵;对进行图像拼接,包括对于深度值大于阈值的像素点,应用所述远景的单应性矩阵,对所述由 两个不同角度获取的同步帧对进行图像拼接;对于深度值小于所述阔值的像素点,应用所述近景的单应性矩阵,对所 述由两个不同角度获取的同步帧对进行图像拼接。
6、 根据权利要求1所述的方法,其特征在于,还包括对拼接图像上的像素点在所属同步帧对上的原始颜色值进行加权平均, 获得所述像素点在所述拼接图像中的更新颜色值,根据所述更新颜色值对所 述拼接图像中的所述像素点进行赋值;其中,所述像素点在所述拼接图像的 图像重叠区域内;若所述像素点的邻域内像素点有原始颜色值,则对所述邻域内像素点的 原始颜色值与所述像素点在所述拼接图像中的更新颜色值进行加权平均,获 得所述邻域内像素点在所述拼接图像中的更新颜色值,根据所述更新颜色值 对所述拼接图像中的所述邻域内像素点进行赋值。
7、 根据权利要求1所述的方法,其特征在于,还包括 获取拼接图像中拼接线的位置;对所述拼接线两侧选定的像素点的原始颜色值作均衡运算,确定所述选 定的像素点在所述拼接图像中的更新颜色值。
8、 根据权利要求7所述的方法,其特征在于,所述对所述拼接线两侧选 定的像素点的原始颜色值作均衡运算包括根据位于所述拼接线两侧且相邻的像素点的原始颜色值的差均值,确定需要更新颜色值的像素点及其个数;在所述需要更新颜色值的像素点中,根据所述差均值对所述拼接线的两 侧中原始颜色值偏大的一侧的像素点进行颜色值递减,对原始颜色值偏小的 一侧的像素点进行颜色值递增。
9、 根据权利要求7所述的方法,其特征在于,所述对所述拼接线两侧选 定的像素点的原始颜色值作均衡运算包括选择所述拼接线两侧相同数量的像素点,根据选择的像素点的原始颜色 值分别求解4并接线两侧的颜色值均值,根据所述4并接线两侧的颜色值均值的 差均值,确定需要更新颜色值的像素点及其个数;在所述需要更新颜色值的像素点中,根据所述差均值对所述拼接线的两 侧中原始颜色值偏大的一侧的像素点进行颜色值递减,对原始颜色值偏小的 一侧的^^素点进行颜色值递增。
10、 一种图像拼接的系统,其特征在于,包括选取模块,用于在由两个不同角度获取的同步帧对中,选取至少两对具 有图像重叠区域的同步帧对;提取模块,用于在所述选取模块选取的同步帧对中提取匹配特征点;求解模块,用于根据所述提取模块提取的匹配特征点求解单应性矩阵;拼接模块,用于应用所述求解模块求解的单应性矩阵对所述由两个不同 角度获取的同步帧对进行图像拼接。
11、 根据权利要求IO所述的系统,其特征在于,所述选取模块选取的所 述同步帧对彼此在时域上连续,则所述提取模块包括第一提取单元,用于提取各对同步帧对上的匹配特征点,记为第一类匹 配特征点;提取在时域上连续的图像帧上的匹配特征点,记为第二类匹配特 征点;第二提取单元,用于提取既属于所述第 一类匹配特征点又属于所述第二类匹配特4正点的匹配特征点作为/>共匹配特;f正点;相应地,所述求解模块,还用于根据所述第二提取单元选取的公共匹配 特征点求解单应性矩阵。
12、 根据权利要求10或11所述的系统,其特征在于,所述求解模块包括划分单元,用于根据所述匹配特征点的深度值划分至少两类匹配特征点; 运算单元,用于根据划分后的匹配特征点求解各自对应的单应性矩阵; 相应的,所述拼接;漠块,还用于对于不同类的匹配特征点,应用各类匹拼接。
13、 根据权利要求12所述的系统,其特征在于,所述划分单元,具体用于根据所述提取模块提取的匹配特征点的深度值 划分近景匹配特征点和远景匹配特征点;所述运算单元,具体用于根据所述划分单元划分的近景匹配特征点求解 近景的单应性矩阵,根据所述划分单元划分的远景的匹配特征点求解远景的 单应性矩阵;相应的,所述拼接模块具体用于对于深度值大于阈值的像素点,应用所 述运算单元求解的远景的单应性矩阵,对所述由两个不同角度获取的同步帧对进行图像拼接;对于深度值小于所述阈值的像素点,应用所述运算单元求 解的近景的单应性矩阵,对所述由两个不同角度获取的同步帧对进行图像拼 接。
14、 根据权利要求IO所述的系统,其特征在于,还包括颜色融合模块,用于对来自所述拼接模块的拼接图像进行颜色融合; 所述颜色融合模块包括第 一获取单元,用于对所述拼接图像上的像素点在所属同步帧对上的原 始颜色值进行加权平均,获得所述像素点在所述拼接图像中的更新颜色值,根据所述更新颜色值对所述拼接图像中的所述像素点进行赋值;其中,所述 像素点在所述拼接图像的图像重叠区域内;第二获取单元,用于当所述像素点的邻域内像素点有原始颜色值时,对 所述邻域内像素点的原始颜色值与所述像素点在所述拼-接图像中的更新颜色 值进行加权平均,获得所述邻域内像素点在所述拼接图像中的更新颜色值, 根据所述更新颜色值对所述拼接图像中的所述邻域内像素点进行赋值。
15、 根据权利要求IO所述的系统,其特征在于,还包括颜色融合模块,用于对来自所述拼接模块的拼接图像进行颜色融合; 所述颜色融合模块包括拼接线获取单元,用于获取所述拼接图像中拼接线的位置;颜色均衡单元,用于对所述拼接线两侧选定的像素点的原始颜色值作均 衡运算,确定所述选定的像素点在所述拼接图像中的更新颜色值。
16、 根据权利要求15所述的系统,其特征在于,所述颜色均衡单元包括第一选定子单元,用于根据位于所述拼接线两侧且相邻的像素点的原始 颜色值的差均值,确定需要更新颜色值的像素点及其个数;第一颜色更新子单元,用于在所述需要更新颜色值的像素点中,根据所 述差均值对所述拼接线的两侧中原始颜色值偏大的一侧的像素点进行颜色值 递减,对原始颜色值偏'J、的一侧的像素点进行颜色值递增。
17、 根据权利要求15所述的系统,其特征在于,所述颜色均衡单元包括第二选定子单元,用于选择所述拼接线两侧相同数量的像素点,根据选 择的像素点的原始颜色值分别求解拼接线两侧的颜色值均值,根据所述拼接 线两侧的颜色值均值的差均值,确定需要更新颜色值的像素点及其个数;第二颜色更新子单元,用于在所述需要更新颜色值的像素点中,根据所 述差均值对所述拼接线的两侧中原始颜色值偏大的一侧的像素点进行颜色值 递减,对原始颜色值偏小的一侧的像素点进行颜色值递增。
全文摘要
本发明实施例提供一种图像拼接的方法、系统。该图像拼接的方法包括从至少两对同步帧对中提取匹配特征点,所述同步帧对为由两个不同角度获取的具有图像重叠区域的同步帧对;根据所述匹配特征点求解单应性矩阵;应用所述单应性矩阵对所述由两个不同角度获取的同步帧对进行图像拼接。本发明实施例通过对多对同步帧对的匹配特征点进行提取,获得了大量的匹配特征点,与现有技术中只通过一对同步帧对提取的匹配特征点相比较更具有代表性,因此获得的单应性矩阵也就更可靠也更精确,从而可以获得更好的图像拼接效果。
文档编号H04N5/262GK101646022SQ200910170210
公开日2010年2月10日 申请日期2009年9月4日 优先权日2009年9月4日
发明者源 刘, 凯 李, 静 王, 嵩 赵 申请人:深圳华为通信技术有限公司