用于处理图像的方法

文档序号:7993844阅读:147来源:国知局
用于处理图像的方法
【专利摘要】本发明涉及一种用于处理图像的方法,所述方法包括:提供(101)来自所述图像的关键点集;以二进制矩阵形式描述(103)所述关键点集的位置信息;以及根据预定顺序扫描(105)所述二进制矩阵,从而创建所述关键点集的所述位置信息的新表示。
【专利说明】用于处理图像的方法
【技术领域】
[0001]本发明涉及计算机视觉领域的图像处理技术,尤其涉及通常称为视觉搜索或增强现实的主题。在视觉搜索和增强现实应用中,从某个图像或图像序列中提取的信息发送到服务器,在服务器上该信息与从参考图像或图像序列数据库中提取的信息相比较。参考图像或图像序列表示待识别物体的模型。在该背景下,本发明涉及对从发送到服务器的图像或图像序列中提取的信息的压缩,尤其涉及从图像或图像序列中提取的兴趣点的位置压缩。
【背景技术】
[0002]视觉搜索(VS)为自动化系统通过仅分析图像或图像序列的可视部分而不利用任何外部数据(例如文本描述、元数据等)来识别某个图像或图像序列中描绘的一个物体或多个物体的能力。增强现实(AR)可以视作VS的高级用法,尤其可以应用到移动领域。在识别了图像序列中描绘的物体后,将附加内容(通常为合成物体)叠加到真实场景中,从而‘增强’ 了真实内容,其中合成物体的位置与真实物体的一致。识别图像序列中描绘的物体的实现技术是相同的。下文中术语“图像”和“图片”同义使用。
[0003]当前,视觉搜索的主要方法依赖于确定所谓的局部特征,在文献和下文中也被称为特征或描述符。常用方法为尺度不变特征变换(SIFT),如“D.Lowe,来自尺度不变关键点的独特图像特征,计算机视觉国际期刊第60卷,第2册,2004年,第91至110页”中所述,以及加速稳健特征(SURF),如“Bay, T.Tuytelaars, L.V.Gool, SURF:加速稳健特征,欧洲计算机视觉大会(ECCV)论文,格拉茨,奥地利,2006年,http://www.vision, ee.ethz.ch/?surf/”中所述。文献中可以找到这些技术的许多变体,这些变体可以视作对这两种原始技术的改进。
[0004]从图13可以看出,局部特征是一种紧凑描述,例如图像1301中的点1305周围的片段1303的SIFT中每个特征为128字节。图13示出了局部特征的提取(图13的上半部分)和表示(图13的下半部分)。在图13的上半部分,局部特征所在点的位置经计算并由表示图像1301中的点1305的圆圈指示,该圆圈被表示取向片段1303的正方形包围。在图13的下半部分,片段1303的网格1309的细分部分包含了局部特征的直方图分量1311。为了计算局部特征,基于点1305周围的主梯度分量计算点1305的主方向1307。从方向1307开始,提取面向主方向1307的片段1303。随后将片段1303细分为矩形或径向网格1309。为网格1309中的各个元素计算局部梯度的直方图1311。为网格1309的元素所计算的直方图1311表不局部特征的分量。该描述符1313包含了如图13的下部所不的网格1309的兀素的直方图1311,描述符1313的特征与旋转、照度和透视失真无关。
[0005]在图像1301中,点1305(可以基于该点计算描述符1313)通常涉及场景的特有元素,例如边角、具体图案等。这些点通常称为关键点1305,即图13的上半部分描绘的圆圈。计算关键点1305的过程基于识别多尺度图像1301表示中的局部极值。
[0006]当比较两个图像1301和1401时,如图14所示,将第一图像1301的各个描述符1313与第二图像1401的各个描述符比较。图14仅示出了图像1301和1401,未示出描述符。通过采用距离测量,在不同的关键点(例如第一图像1301中的第一关键点1305与第二图像1401中的第二关键点1405)之间识别匹配。正确的匹配(通常称为内点1407)需要在图像1301和1401中具有一致的相对位置,尽管可能存在尺寸缩放、旋转、透视失真。匹配阶段中可能出现的由于提取关键点所采用的统计方法导致的错误随后通过称为几何一致性检查的阶段消除,在该几何一致性检查阶段中估计不同关键点位置的一致性。这些错误(通常称为外点1409)被移除,如图14中的虚线所示。
[0007]根据剩余内点1407的数目,可以估计两个图像1301和1401中是否存在相同的物体。
[0008]VS管道系统1500代表典型的客户端-服务器业务架构,如图15所示,在VS管道系统1500中,描述符通过关键点识别(1505)、特征计算(1507)、下述特征选择(1509)以及编码(1511)流程在客户端设备1501上进行计算并发送到服务器1503,服务器1503将那些描述符1519与从数据库中的参考图像提取的描述符(即,参考描述符1521)进行匹配(1513)。具体而言,对来自客户端1501的数据流1515进行解码(1517)以获取原始图像的描述符1519,这些描述符1519与通过关键点识别(1523)和特征计算(1525)计算的来自数据库中的参考图像的参考描述符1521进行匹配(1513)。在进行匹配(1513)之后,应用几何一致性检查(1527)用于检查重建图像的几何一致性。
[0009]可以从一个图像中提取多达上千个特征,从而导致大量信息(也就是说,每个图像有几千字节)需要通过网络发送。在一些场景下,发送描述符所需的比特率可以大于压缩图像本身的比特率。
[0010]由于客户端/服务器链路中可能存在的网络延时以及服务器侧所需的内存量,这会给实时应用带来问题,在服务器侧,数以百万计的参考图像的描述符必须同时保存在存储器中。因此,对描述符的压缩版本的需求正在增长。启用描述符压缩需要两个步骤,描述符压缩从未压缩的描述符开始。第一步为关键点选择机制,如下:并非所有从图像提取的描述符都发送到服务器,只有那些根据统计分析导致在匹配阶段不易出错以及参照那些对于所描绘的物体更为独特的点的描述符才会发送到服务器。第二步为应用到剩余描述符的压缩算法。
[0011 ] MPEG (运动图像专家组)标准目前正定义标准MPEG-7 (IS0/IEC15938-多媒体内容描述接口)的一个新的部分(第13部分),专门用于开发压缩描述符的标准格式。为了测试新标准的压缩能力,已识别六个运算点为512-1024-2048-4096-8192-16384字节,这六个运算点表示存储或发送从图像提取的所有描述符所需的比特率。使用那些运算点作为参考进行测试阶段。由于应用了关键点选择机制,在那些运算点处,不同数目的关键点将发送到服务器,数目范围为最低运算点处的114个关键点至最高运算点处的970个关键点。
[0012]当描述符压缩应用到描述符时,压缩了两种不同类型的信息。第一种涉及描述符的值。第二种为描述符的位置信息,即χ/y位置,也就是说,图像中关键点的笛卡尔坐标。
[0013]在VS标准的当前参考模型(RM)以及现有文献中的绝大多数VS算法中,在描述符提取阶段之前,图像缩放到VGA(视频图像阵列)分辨率,即640x480像素。VGA分辨率在下文中称为全分辨率。
[0014]因此,描述图像中单个关键点的位置的原生x/y对可以占用19比特。这是不可接受的,尤其在最低运算点处。因此,需要压缩位置信息以分配更多比特用于插入更多的描述符或将限制较少的压缩算法应用到描述符。
[0015]关键点的坐标以原始无缩放图像分辨率中的浮点值表示。由于应用到各图像的第一操作为降低至VGA分辨率,关键点的坐标四舍五入为VGA分辨率中的整数值,即,原生的19比特。因此,可能出现若干点四舍五入为相同坐标的情况。还有可能出现两个描述符刚好在具有两个不同方向的相同关键点上进行计算的情况。第一次四舍五入对于检索性能的影响可忽略。
[0016]图16描绘了这种四舍五入操作的不例,在该操作中,各方格1603和1605对应于全分辨率的Ixl像素单元格。可以创建图像1600,在图像1600中,非空像素对应于关键点的位置,随后划分为像素单元格表示1601,像素单元格表示1601可由矩阵表示1602表示。这些方格1603和1605的值(例如第一方格1603为2,第二方格1605为1,如图16所示)在矩阵1602中表示,其中非空单元格1607和1609表示关键点的位置,例如第一非空单元格1607对应于第一方格1603且第二非空单元格1609对应于第二方格1605。因此,可以将该问题改写为需要压缩含640x480元素的矩阵1602,该矩阵1602具有极其稀疏的特征,即非空单元格数小于1000,即使在最高运算点处也是如此。为了压缩该矩阵,需要表示两种不同类型的信息,分别为直方图,即由空白和非空单元格组成的二进制图,以及直方图计数,即包含了各个非空单元格中的出现次数的向量。直方图由图16所示的像素单元格表示1601的二进制格式表示,直方图计数由通过图16所示的矩阵表示1602的非空元素创建的向量表示。为了提高压缩效率,在文献中,这两种元素通常单独进行编码。
[0017]在现有文献中,包含块量化的有损技术应用到直方图以提高压缩效率:通常采用4x4块或8x8块,使得用于直方图和直方图计数生成的机制未改变。作为该操作的结果,矩阵维度大大降低,即采用4x4块时下降为140x120像素,采用8x8块时下降为70x60像素。尽管如此,缩小矩阵依旧是非常稀疏的矩阵。在该情况下,图16中的表示依旧有效,只有单元格的尺寸发生了变化。在本文档的其余部分,直方图矩阵的元素称为矩阵单元格,这些单元格可采用任何尺寸(从全分辨率情况下的Ixl到压缩情况下的NxN,其中N>1(例如,8x8))。
[0018]在文献中,三个主要文档都介绍了位置信息压缩领域的最新进展。第一篇文档(下文称为[RM])为 MPEG 参考模型 “G.Francini,S.Lepsoy,M.Balestri,“用于 CDVS 所考虑的测试模型描述”,IS0/IEC JTC1/SC29/WG11/N12367,日内瓦,2011 年 11 月”。
[0019]第二篇文档(下文称为[斯坦福I])为MPEG输入贡献,“S.Tsai,D.Chen,V.Chandrasekhar, G.Takacs, M.Makar, R.Grzeszczuk, B.Girod, “TMuC 中的位置编码器的改进”,IS0/IEC JTC1/SC29/WG11/M23579672,圣何塞,2012年2月”。第三篇文档(下文称为[斯坦福 2])为会议论文 “S.Tsai, D.Chen, G.Takacs, V.Chandrasekhar, J.Singh,和B.Girod,“用于移动图像检索的位置编码”,国际移动多媒体通信会议(MobiMedia),2009年9月”。
[0020]这三篇论文虽然使用了不同的方法,但均提出了同样的问题,S卩,坐标不在全分辨率下表示,而在量化域中表示,即在4x4、6x6和8x8块处表示。
[0021]尽管为有损压缩,将块量化应用到直方图能够保证检索准确性方面的性能下降有限。总之,如果必须对查询图像中已识别的物体进行定位,例如在增强现实应用中,需要在图片序列中进行定位及跟踪物体,应用这些量化块会引起性能显著下降。例如,根据[斯坦福I],当在最低运算点处应用4x4块时,定位精度下降约5%,当块具有8x8维度时,定位精度下降约10%。
[0022]当提高到全分辨率时,现有技术存在一些问题。直方图计数压缩相当直接;因此,其不会纳入考虑。直方图矩阵压缩所产生的问题将在下文描述。
[0023][RM]论文采用一种旨在通过删除直方图中没有关键点出现的空行和列来降低矩阵稀疏性的方法。各行和列占据一比特以指示全行或列是否为空。全分辨率下的问题在于使用480x640矩阵时,需要1120比特将该信息嵌入压缩比特流中。这一比特数目是不可接受的,其使得最低运算点(114个点)处的每个关键点都为近10比特。
[0024]在[斯坦福I]中,在整个矩阵上采用二进制熵编码,其中有以下两处改进:应用宏块分析,即该矩阵划分为宏块(下文称为跳过宏块),为每个宏块分配一个指示该块是否为空的比特。如果该块完全为空,该块的元素不进行熵编码。另外,将上下文建模应用到熵编码,上下文建模基于待编码单元格周围的单元格。尤其考虑10个邻近单元格时,会产生45个上下文。除了其复杂性,尤其对于需要生成45个上下文的训练阶段,该方法无法有效地应用到全分辨率的情况,在全分辨率情况下,矩阵非常稀疏,所以很难在10个最邻近的单元格中碰到非空单元格。
[0025]根据[斯坦福2]论文,应用了两种方法,第一种与[斯坦福I]论文中呈现的非常类似并提出了相同的问题;因此,此处将不再进一步讨论。另一种方法基于四叉树。矩阵密集时,四叉树提供了一种相当有效的表示,但是如果矩阵非常稀疏,如全分辨率情况中的一样,建立树会消耗太多比特,从而导致性能下降。

【发明内容】

[0026]本发明的目的在于提供一种用于图像处理的概念,该概念展示了相对于上述现有技术概念更高的位置信息压缩率和很低的复杂度。
[0027]此目的可以通过独立权利要求的特征来实现。进一步的实施形式在从属权利要求、具体说明和附图中显而易见。
[0028]图像直方图压缩任务可以视作对非常稀疏矩阵的压缩。本发明基于以下发现:尽管矩阵稀疏,关键点未在图像中均匀分布,尤其当比特率较低时。这特别是因为关键点选择机制,该机制应用于从所有抽取的关键点中识别关键点子集。由于通常感兴趣物体倾向于描绘在图像中心,关键点选择机制还偏向于距离图像中心的较短距离。当应用了替代性关键点选择方法时,例如基于感兴趣区域(ROI),图像中关键点的分配依旧不均匀。因此,存在分布更密集的区域(通常位于图像中心周围),而矩阵侧边将具有很多零。所以,可以设想对[斯坦福I]方法中利用的跳过宏块信息进行自适应使用,该方法反过来将块表示均匀地应用在图像中以利用此特征。在矩阵中心,空白区域很少出现:因此,设想采用非常大的宏块,以此方式使用很少的比特用于跳过宏块信息发送。另一方面,在矩阵的侧边处,应用较小的宏块以更闻的精度识别空白区域很有益。
[0029]本发明的方面提供一种用于图像处理的概念,该概念提高了位置信息压缩算法的性能。
[0030]为了详细描述本发明,将使用以下术语、缩写和符号:[0031]VS:视觉搜索。VS为自动化系统通过仅分析图像或图像序列的可视部分而不利用任何外部数据(例如文本描述、元数据等)来识别某个图像或图像序列中描绘的一个物体或多个物体的能力。
[0032]AR:增强现实。增强现实(AR)可以视作VS的高级用法,尤其可以应用到移动领域。在识别了帧序列中描绘的物体后,将附加内容(通常为合成物体)叠加到真实场景中,从而‘增强’ 了真实内容,其中合成物体的位置与真实物体的一致。
[0033]SIFT:尺度不变特征变换。
[0034]SURF:加速稳健特征。
[0035]MPEG-7:运动图像专家组_7,定义根据IS0/IEC15938的第13部分多媒体内容描述接口,专门用于开发视觉搜索标准。
[0036]RO1:感兴趣区域。
[0037]RM:参考模型。
[0038]VGA:视频图像阵列,也称为全分辨率。
[0039]局部特征:局部特征是一种对图像中的关键点周围的片段的紧凑描述,与旋转、照度和透视失真无关。
[0040]描述符:局部特征。
[0041]关键点:在图像中,描述符计算所基于的点通常涉及场景的特有元素,例如边角、具体图案等。这些点通常称为关键点。计算关键点的过程基于识别多尺度图像表示中的局部极值。
[0042]跳过宏块:表示不含非空值的图像的直方图的矩阵段。
[0043]根据第一方面,本发明涉及一种用于处理图像的方法,所述方法包括:提供来自所述图像的关键点集;以二进制矩阵形式描述所述关键点集的位置信息;以及根据预定顺序扫描所述二进制矩阵,从而创建所述关键点集的所述位置信息的新表示。
[0044]通过本发明的第一方面,呈现了一种用于处理从图像抽取的描述符(局部特征)的所述位置信息的新方法,所述新方法具体用于直方图矩阵的所述压缩。与最先进技术相t匕,所述方法的特征为压缩率提高。可以应用所述方法而不会遇到在采用全分辨率时的任何原生问题。本发明的关键元素基于数据的新表示,这实现了更高效的基于块的分析和表示。可以将自适应基于块的分析应用到该新表示,更好地利用数据本质来实现压缩率的提高。本方法的复杂性极其有限,因为该方法不含复杂操作。
[0045]在根据第一方面或根据第一方面的任一前述实施形式的所述方法的第三可能实施形式中,逆时针或顺时针扫描所述二进制矩阵。
[0046]通过逆时针或顺时针扫描,处理可以得到改善。
[0047]在根据第一方面或根据第一方面的第一实施形式的所述方法的第四可能实施形式中,扫描所述二进制矩阵在所述图像的同心圆环部分进行。
[0048]由于最核心的特征均位于所述图像的中心,朝向所述图像中心的小环携带的信息最多,而朝向所述图像外围的大环携带的信息较少。朝向所述外围的大环被稀疏地占用,因此出现空白区域,这可以通过跳过宏块信息来识别。
[0049]在根据第一方面或根据所述第一方面的任一前述实施形式的所述方法的第五可能实施形式中,所述关键点集的所述位置信息的所述新表示采用另一二进制矩阵的形式。[0050]在根据第一方面的第五可能实施形式的所述方法的第六可能实施形式中,所述另一二进制矩阵以列优先或行优先顺序创建。
[0051]因此,携带所述核心信息的区域位于所述新矩阵表示的邻区,从而能够采用下述自适应块分析。
[0052]在根据第一方面的第五实施形式或根据第一方面的第六实施形式中,为所述关键点集的各个关键点从所述关键点周围的取向片段中计算描述符。
[0053]描述符通常涉及所述图像的特有元素,例如边角、具体图案等。因此,依赖描述符进行图像处理提高了物体识别和跟踪的性能。
[0054]在根据第一方面的第五到第七实施形式中的任一实施形式的所述方法的第八可能实施形式中,所述二进制矩阵是由空白和非空单元格组成的直方图,非空单元表示关键点在所述图像中的位置。
[0055]在根据第一方面的第五到第八实施形式中的任一实施形式的所述方法的第八可能实施形式中,所述方法进一步包括:压缩所述关键点集的所述位置信息的所述新表示。
[0056]当所述关键点集的所述位置信息的所述新表示由根据第一方面或根据第一方面的任一前述实施形式的所述方法生成时,由于大多所述相关信息(即非空元素)集中于所述矩阵的一个区域,压缩得到改进。所述另一二进制矩阵包括高位置信息密集度部分和低位置信息密集度部分。因此,不同的压缩技术可以用于这些部分,从而改进压缩。
[0057]在根据第一方面的第九实施形式的所述方法的第十可能实施形式中,压缩所述关键点集的所述位置信息的所述新表示包括:通过消除未携带位置信息的二进制矩阵的外围部分缩小所述二进制矩阵的大小,所述缩小在扫描所述二进制矩阵之前进行。
[0058]因此,非核心信息可以在进行扫描之前移除,从而减少了待压缩的信息量且就速度和存储而言提高了所述图像处理方法的性能。
[0059]在根据第一方面的第九实施形式的所述方法的第十一可能实施形式中,压缩所述关键点集的所述位置信息的所述新表示包括:消除对应于未携带位置信息的所述二进制矩阵的同心圆的所述另一二进制矩阵的空白元素。
[0060]因此,非核心信息可以在进行扫描之后移除,从而减少了待压缩的信息量且就速度和存储而言提高了所述图像压缩方法的性能。
[0061]在根据第一方面的第五到第十一实施形式中的任一实施形式的所述方法的第十二可能实施形式中,所述另一二进制矩阵划分为不同大小的宏块,其中携带位于所述图像的感兴趣区域处或其周围的关键点的位置信息的宏块比携带位于所述图像外围处的关键点的位置信息的宏块更大。
[0062]因此,来自所述图像中心的信息存储在大宏块中,而来自所述图像外围的信息存储在小宏块中。所以,可以识别一些仅携带空白元素的小宏块,这些空白元素可以移除而无需进一步处理,从而提高了所述图像处理的性能。
[0063]在根据第一方面的第十二实施形式的所述方法的第十三可能实施形式中,将熵编码应用到所述另一二进制矩阵的跳过宏块信息及所述另一二进制矩阵的非空宏块中。
[0064]在根据第一方面的第十三实施形式的所述方法的第十四可能实施形式中,当应用所述熵编码时应用上下文建模。
[0065]在根据第一方面的第十二到十四可能实施形式中的任一实施形式的所述方法的第十五可能实施形式中,所述另一二进制矩阵包括第一数目的携带位于所述图像中心处及其周围的位置信息的特定大小(下文称为MB_Size)维度的宏块,以及第二数目的携带位于所述图像外围处的位置信息的一部分MB_Size的宏块。
[0066]使用具有MB_Size大小维度及其部分维度的宏块使所述方法易于执行。无需应用不同内存大小的复杂内存分配。内存结构非常简单。
[0067]在根据第一方面的第十五实施形式的所述方法的第十六可能实施形式中,第一数目的MB_Size大小维度的宏块在所有图像中是固定的或取决于所述另一矩阵表示的大小。
[0068]在根据第一方面的第五到第十六实施形式中的任一实施形式的所述方法的第十七可能实施形式中,所述方法进一步包括:使用跳过宏块比特序列指示未携带位置信息的所述另一二进制矩阵的空白宏块。
[0069]通过指示未携带位置信息的所述另一二进制矩阵的空白宏块,所述方法可以使这些宏块不考虑进一步的压缩步骤,从而提高压缩率。
[0070]在根据第一方面的第十七实施形式的所述方法的第十八可能实施形式中,通过合并所述另一二进制矩阵的非空宏块的所述熵编码的跳过宏块比特序列和所述熵编码的位置信息压缩所述所述关键点集的所述位置信息的所述新表示。
[0071]在根据第一方面的第十八实施形式的所述方法的第十九可能实施形式中,通过使用上下文模型对所述位置信息进行熵编码,所述上下文模型利用通过训练集计算的所述非空宏块中的非空元素的平均值的。
[0072]该上下文无需待发送的额外信息,并允许熵编码器根据所述另一二进制矩阵中的宏块的上述平均密度进行优化。
[0073]在根据第一方面的第五到第十九实施形式中的任一实施形式的所述方法的第二十可能实施形式中,为了降低内存占用率,仅将所述另一二进制矩阵的非空元素或非空宏块的顺序类别而不是将所述整个另一二进制矩阵纳入内存。
[0074]最耗资源的操作为上下文建模(可选)。尽管如此,当应用上下文建模时,提出了一种新上下文建模方法,这比现有技术中所采用的上下文建模方法更简单。所展示的上下文建模方法依赖于非常有限的上下文。此外,由于宏块信息本质上在所述新数据表示中传送,所以没有额外的比特用于上下文建模。
[0075]根据第二方面,本发明涉及一种用于从图像的关键点集的位置信息的矩阵表示中重建所述图像的局部特征,包括:根据预定顺序解开所述图像的所述关键点集的位置信息的所述矩阵表示,其中从所述关键点周围的取向片段中计算所述图像的所述局部特征。
[0076]所述解压方法以相反的顺序执行所述压缩方法的逆向操作,从而显示了与上述压缩方法相同的优势。
[0077]根据第三方面,本发明涉及一种位置信息编码器,包括处理器,用于提供来自所述图像的关键点集;以二进制矩阵形式描述所述关键点集的位置信息;以及根据预定顺序扫描所述二进制矩阵,从而创建所述关键点集的所述位置信息的新表示。
[0078]由于位置信息编码器实施上述低复杂性的位置信息压缩方法,所述位置信息编码器的复杂性极其有限。
[0079]根据第四方面,本发明涉及一种位置信息解码器,包括处理器,用于通过根据预定顺序解开所述图像的关键点集的位置信息的矩阵表示从所述图像的所述关键点集的所述位置信息的所述矩阵表示中重建所述图像的局部特征,其中从所述关键点周围的取向片段中计算所述图像的所述局部特征。
[0080]由于位置信息解码器实施上述低复杂性的图像处理方法,因此所述位置信息解码器的复杂性极其有限。
[0081]根据第五方面,本发明涉及一种具有程序代码的计算机程序,所述程序代码用于在计算机上执行时执行根据第一方面或根据第一方面的任一前述实施形式的方法或根据第二方面的方法。
[0082]本文描述的方法可实施为数字信号处理器(DSP)、微控制器或任何其他边处理器中的软件或实施为专用集成电路(ASIC)内的硬件电路。
[0083]本发明可在数字电子电路中或在计算机硬件、固件、软件中或在其组合中实施。
【专利附图】

【附图说明】
[0084]本发明的进一步实施例将参照以下附图进行描述,附图中:
[0085]图1所示为根据实施形式的图像处理方法的示意图;
[0086]图2所示为根据实施形式的位置信息压缩方法的示意图;
[0087]图3所示为描绘图像中的关键点分布的图;
[0088]图4所示为用于创建新矩阵表示的矩阵扫描方法的示意图;
[0089]图5所示为根据实施形式的另一矩阵表示的示意图;
[0090]图6所示为根据实施形式的如图5所描绘的另一矩阵表示的基于自适应块的分析的不意图;
[0091]图7所示为根据实施形式的位置信息压缩方法的示意图;
[0092]图8所示为根据实施形式的位置信息压缩方法的示意图;
[0093]图9所示为根据实施形式的位置信息压缩方法的示意图;
[0094]图10所示为根据实施形式的位置信息解压方法的示意图;
[0095]图11所示为根据实施形式的位置信息编码器的方框图;
[0096]图12所示为根据实施形式的位置信息解码器的方框图;
[0097]图13所示为用于视觉搜索的局部特征的抽取和表示的示例;
[0098]图14所示为两个图像的常规比较中的特征匹配和外点消除的示例;
[0099]图15所示为典型的客户端-服务器服务架构中采用的视觉搜索管道的方框图;
[0100]图16所示为常规直方图和直方图计数生成方法的示意图。
【具体实施方式】
[0101]图1所示为根据实施形式的图像处理方法100的示意图。图像处理方法100包括:提供(101)来自图像的关键点集;以二进制矩阵形式描述(103)关键点集的位置信息;以及根据预定顺序扫描(105) 二进制矩阵,从而创建关键点集的位置信息的新表示。在实施形式中,关键点集的位置信息的新表示的形式为另一二进制矩阵。
[0102]图2所示为根据实施形式的位置信息压缩方法201的示意图。图像压缩方法201包括生成(200)直方图和直方图计数,压缩(210)直方图,压缩(220)直方图计数,以及根据压缩的描述符230创建(240)编码后的比特流。直方图为根据图16所描绘的图解的像素单元格表示1601中的图像1600的空白及非空单元格组成的二进制图。图像1600可以划分为像素单元格表示1601,像素单元格表示1601可以由矩阵表示1602表示。直方图计数为根据图16所描绘的图解的矩阵表示1602中的图像1600的各个非空单元格中的发生次数。在实施形式中,压缩(210)直方图和压缩(220)直方图计数可以并行执行。在实施形式中,压缩(210)直方图和压缩(220)直方图计数彼此独立执行。在实施形式中,仅压缩(210)直方图,而不压缩(220)直方图计数。
[0103]在实施形式中,生成(200)直方图和直方图计数对应于确定(101)图像中的局部特征集和通过描述符描述(103)各个关键点,压缩(210)直方图对应于通过扫描(105)创建关键点的矩阵表示以及下述211-212-213-214-215-216-217操作。
[0104]本发明的各个方面提供了一种用于压缩从图像中抽取的描述符(局部特征)的位置信息的新方法,尤其用于压缩直方图矩阵,如图2所示。与最先进技术相比,该方法的特征为压缩率提高。可以应用所述方法而不会遇到在采用全分辨率时的任何原生问题。
[0105]本发明的各个方面基于数据的新表示,这实现了更为有效的基于块的分析和表示。可以将基于自适应块的分析应用到该新表示,在下文中将参照图7、8和9来描述,这更好地利用了数据本质来实现压缩率的提高
[0106]本方法的复杂性极其有限,因为该方法不含复杂操作。最耗资源的操作为上下文建模(可选)。尽管如此,当应用上下文建模时,在下文中将参照图9来描述,使用新上下文建模方法,这比现有技术所采用的上下文建模方法更简单。在实施形式中,上下文建模方法依赖于数目非常有限的上下文。此外,由于宏块信息本质上在所述新数据表示中传送,所以没有额外的比特用于上下文建模。
[0107]本发明的实施 形式提供了边界消除,即消除了矩阵侧的全空白区域。本发明的实施形式提供了一种识别空白区域的新颖方法,而不是传统上识别由RM采用的空白行和列的方法。
[0108]图3所示为描绘图像300中的关键点301的分布的图。如下所述,压缩直方图压缩的任务可以视作压缩非常稀疏的矩阵。本发明的基本思想在于尽管稀疏,关键点301在图像中并不均匀分布,尤其在较低比特率时,从图3所示。尤其当应用关键点选择机制以从所有抽取的关键点中识别关键点子集时会出现这种情况。由于通常感兴趣物体倾向于描绘在图像中心,关键点选择机制还偏向于距离图像中心的较短距离。因此,直方图矩阵中心将更为稀疏,而矩阵侧边将具有很多零。当应用了替代性关键点选择方法时,例如基于感兴趣区域(ROI),图像中关键点的分配依旧不均匀。所以,实施形式对[斯坦福I]方法中利用的跳过宏块信息进行自适应使用(该方法反过来将块表示均匀地应用在图像中)以利用此特征。在矩阵中心,空白区域很少出现。因此,本发明的实施形式采用非常大的宏块,以此方式使用很少的比特用于跳过宏块信息发送。在矩阵的侧边,应用较小的宏块以更好的精度识别空白区域。
[0109]图4所示为根据实施形式用于生成新矩阵表示的扫描阶段的示意图。该图示出了参照图1所述的扫描步骤105。直方图矩阵的元素由元素1、2、3……42表示。
[0110]在图4所示的实施形式中,扫描图像401从位于图像中心的元素1、2、3、4、5、6(圆圈)开始到位于图像外围的元素21、22……41、42(三角形)结束。扫描后的元素重新映射到代表新矩阵表示的矩阵402中。在图4所示的实施形式中,矩阵元素在矩阵402中以列优先顺序放置。通过该扫描流程,位于图像401的中心的元素1、2、3、4、5、6(圆圈)存储在矩阵402的左侧,位于图像401的中心和外围之间的元素7、8、9……20 (正方形)存储在矩阵402的中间,以及位于图像401的外围的元素21、22……41、42 (三角形)存储在矩阵402的右侧。
[0111]在从中心到外围的扫描(未在图4中示出)的替代性实施形式中,元素在矩阵402中以行优先顺序放置。通过该扫描流程,位于图像401的中心的元素1、2、3、4、5、6(圆圈)存储在矩阵402的上部,位于图像401的中心和外围之间的元素7、8、9……20 (正方形)存储在矩阵402的中部,以及位于图像401的外围的元素21、22……41、42(三角形)存储在矩阵402的下部。
[0112]在图4中未示出的实施形式中,扫描图像401从位于图像外围的元素21、22......41、42(三角形)开始到位于图像中心的元素1、2、3、4、5、6(圆圈)结束。矩阵402中提供了扫描后的元素,代表新矩阵表示。在实施形式中,元素在矩阵402中以列优先顺序放置。通过该扫描流程,位于图像401的外围的元素21、22……41、42(三角形)存储在矩阵402
的左侧,位于图像401的中心和外围之间的元素7、8、9......20(正方形)存储在矩阵402的
中间,以及位于图像401的中心的元素1、2、3、4、5、6(圆圈)存储在矩阵402的右侧。
[0113]在从外围到中心的扫描的替代性实施形式中,关键点在矩阵402中按行放置。通过该扫描流程,位于图像401的外围的元素21、22……41、42(三角形)存储在矩阵402的上部,位于图像401的中心和外围之间的元素7、8、9……20 (正方形)存储在矩阵402的中间,以及位于图像401的中 心的元素1、2、3、4、5、6(圆圈)存储在矩阵402的下部。
[0114]矩阵402提供了描述符的位置信息的表示。图像中心的关键点映射到一侧,即另一矩阵表示的左侧、右侧、顶部或底部。因此,通常位于图像中心的图像相关信息被映射到矩阵的一侧。该矩阵的一侧密集,另一侧稀疏。该矩阵结构或矩阵格式允许应用有效的压缩技术。
[0115]该新矩阵格式完全可逆,并且该自适应块表示便于应用。在实施形式中,按如下方式创建新矩阵表示:
[0116].选择宏块大小(例如,在下述图5和图6的不例中,宏块大小为128);
[0117].消除矩阵的空白边界为可选操作;
[0118].从矩阵中心开始,通过在同心圆环上进行逆时针或顺时针扫描对所有像素进行扫描,并且在图4所示的新矩阵格式中以行优先或列优先的顺序存储像素。
[0119]在实施形式中,在图4所示的同心矩阵中扫描像素。在实施形式中,在同心圆、三角形、五角形或其他几何形式上扫描像素。
[0120]在参照图1至图4所述的方法的实施形式中,逆时针或顺时针扫描图像。在参照图1至图4所述的方法的实施形式中,扫描图像在图像的同心圆环部分进行。在参照图1至图4所述的方法的实施形式中,以列优先或行优先的顺序提供另一矩阵表示。
[0121]图5所示为根据实施形式的从由矩阵表示的一个图像中抽取的关键点集的另一矩阵表示500的示意图。可以从附图中所见,根据参照图1至4所述的方法获取的新矩阵表示的左侧包含了原始矩阵的中心元素,比右侧更为密集。
[0122]图6所示为根据实施形式的如图5所示的另一矩阵表示500的基于自适应块的矩阵分析600的示意图。[0123]从新矩阵表示500开始,应用基于自适应块的分析。根据矩阵表示600的尺度,将MB_Size维度(例如128像素xl28像素)的宏块应用到新矩阵表示500的左侧。根据矩阵表示600的尺度,将一部分MB_Size维度(通常为MB_Size/2)(例如64像素x64像素)的宏块应用到对矩阵表示500的右侧。在该方式下,遇见空白宏块(可以通过应用到块的后续压缩技术排除)的可能性增加。在实施形式中,MB_Size维度的宏块数目在图像中固定。在替代性实施形式中,MB_Size维度的宏块数目根据矩阵中的行或列数而变化。随后对跳过宏块的0/1指示进行熵编码。
[0124]图7所示为根据实施形式(下文称为第一实施例)的位置信息压缩方法202的示意图。第一实施例采用了参照图1至6所述操作的顺序。
[0125]在可选步骤边界消除(211)后,生成新矩阵表示(称为替代性矩阵表示)(212),即从中心到同心圆,并且应用根据参照图6进行的描述的自适应块分析214。在随后的步骤216和217中对该分析的结果(即跳过宏块的信息和非空宏块的矩阵元素)进行熵编码。压缩后的信息和直方图计数220压缩合并完成位置信息压缩阶段。使用该压缩后的信息生成(240)比特流。
[0126]在实施形式中,边界消除211包括通过消除未确定局部特征的图像的外围部分缩小图像大小,该缩小操作在扫描图像(对应于创建(212)另一矩阵表示)之前进行。
[0127]在实施形式中,基于自适应块的分析214将另一矩阵表不划分为不同大小的宏块,如参照图6所述,其中携带位于图像中心处或其周围的关键点的宏块比携带位于图像外围的关键点的宏块更大。在实施形式中,位置信息的矩阵表示包括第一数目的MB_Size维度的宏块,用于提供位于图像中心或其周围的关键点,例如根据图6的图解,第一数目可为3或任意其他数目,以及第二数目的部分MB_Size维度(例如根据图6图解的第四部分或任意其他部分)的宏块,用于提供位于图像外围的关键点,例如根据图6的图解,第二数目为14或任意其他数目。在实施形式中,第一数目的MB_Size大小维度的宏块在所有图像中固定。在替代性实施形式中,第一数目的MB_Size大小维度的宏块取决于压缩后的图像的矩阵表示大小,尤其取决于矩阵表示的列数或行数。
[0128]在实施形式中,跳过宏块比特序列用于指示未携带位置信息的矩阵表示的空白宏块。根据图6,跳过宏块比特序列{1,0,I, I, I, I, I, I, I, 1,0,0, I, 1}指示第二数目的部分MB_Size维度的宏块的空白宏块,其中“I”指示非空宏块,“O”指示空白宏块。
[0129]解码器以相反顺序应用逆向操作。在实施形式中,解码器应用解开矩阵表示的按序通过的元素的关键点集(从位于图像外围的关键点到位于图像中心的关键点,反之亦然)的位置信息的矩阵表示,其中图像的各个关键点由描述符描述,描述符包括指明关键点在图像中的位置的位置信息,并且从关键点周围的取向片段中计算局部特征。
[0130]图8所示为根据实施形式(下文称为第二实施例)的位置信息压缩方法203的示意图。
[0131]图像压缩方法203包括参照图7所述的步骤211、212、214、216、217、220和240,并
进一步包括创建另一矩阵表示步骤212和基于自适应块的分析步骤214之间的消除空白元素可选步骤213。
[0132]在创建另一矩阵表示步骤212之后,应用消除空白区域的新方法。与上述参考模型解决方案相比,在参考模型解决方案中消除了空白行和列,此处描述的方法在新矩阵表示建立期间识别空白同心圆。在编码后的比特流中,使用指示同心圆是否为空的一个比特。本文所述方法的优点在于每个同心圆(其数目等于较低矩阵维度的一半)仅使用一个比特,而不是图像中的每行和每列均使用一个比特。
[0133]从图8中可以看出,在附加步骤213(消除空白元素)中,如上所述消除空白同心圆。在实施形式中,消除空白元素步骤213消除压缩后图像的矩阵表示的空白元素,这些空白元素对应于根据图3的图解的未携带局部特征的图像的同心圆。解码器以相反顺序应用逆向操作。
[0134]图9所示为根据实施形式(下文称为第三实施例)的位置信息压缩方法204的示意图。
[0135]图像压缩方法204包括参照图8所述的步骤211、212、213、214、216、217、220和240,并进一步包括基于自适应块的分析步骤214之后的可选步骤215,基于每块的非空元素数目创建上下文。创建上下文步骤215的结果是矩阵元素的算术熵编码步骤217的输入。
[0136]在第三实施例中,应用上下文建模,以适当增加复杂性的代价压缩效率偏向压缩效率。可以应用两种不同的上下文模型。在第一实施形式中,基于对应于新矩阵表示中相同位置处的宏块的训练集中的非空单元格的平均数,在宏块上应用上下文建模。该方法的优点在于由于位置为先验已知,压缩的比特流中无需附加比特。在第二实施形式中,基于当前分析的宏块中的元素数目应用上下文建模。在该情况下,在压缩的比特流中需消耗额外的比特来发送每个宏块中非空单元格的数目。
[0137]在实施形式中,通过将参照如图7所述的熵编码的跳过宏块比特序列和压缩后图像的矩阵表示的非空宏块的熵编码的位置信息合并提供压缩后的矩阵,其中通过使用利用如图9的步骤215所示的非空宏块中的非空元素的平均数的上下文模型对位置信息进行熵编码。
[0138]解码器以相反顺序应用逆向操作。
[0139]图10所示为根据实施形式的用于从图像的关键点集的位置信息的矩阵表示中重建图像的位置信息的方法1000的示意图。
[0140]方法1000包括:根据预定顺序解开(1001)图像的关键点集的位置信息的矩阵表示,其中从关键点周围的取向片段中计算图像的局部特征。
[0141]在实施形式中,方法1000进一步包括:对跳过宏块比特进行熵编码。在实施形式中,方法1000进一步包括:对非空单元格相关的位置信息进行熵编码。
[0142]图11所示为根据实施形式的位置信息编码器1100的方框图。位置信息编码器1100包括处理器1101,用于参照图1至图9执行所述方法之一,即用于提供来自图像的关键点集;以二进制矩阵形式描述关键点集的位置信息;以及根据预定顺序扫描二进制矩阵,从而创建关键点集的位置信息的新表示。在实施形式中,处理器1101用于以另一二进制矩阵或另一合适形式输出关键点集的位置信息的新表示。
[0143]在实施形式中,位置信息编码器1100进一步用于扫描直方图矩阵,从位于图像中心的元素开始到位于图像外围的元素结束,反之亦然,以提供新矩阵表示;以及应用下列步骤(即自适应块分析和熵编码)以获取描述符的压缩位置信息。
[0144]图11所示为位置信息编码器1100在其输入1103处接收图像并仅在其输出1105处提供位置信息。然而,可以在其输出1105处提供不同的其他信息,例如描述符等。[0145]图12所示为根据实施形式的位置信息解码器1200的方框图。图像解码器1200包括处理器1201,用于参照图10所示执行方法,即通过根据预定顺序解开图像的关键点集的位置信息的矩阵表示从图像的关键点集的位置信息的矩阵表示中重建图像的局部特征,其中从关键点周围的取向片段中计算图像的局部特征。
[0146]图12所示为仅在其输入1203处接收位置信息的位置信息解码器1200。然而,可以在其输入处接收不同的其他信息,例如描述符等。
[0147]通过阅读以上内容,所属领域的技术人员将清楚地了解,可提供多种方法、系统、记录媒体上的计算机程序及其类似者。
[0148]本发明还支持包含计算机可执行代码或计算机可执行指令的计算机程序产品,这些计算机可执行代码或计算机可执行指令在执行时使得至少一台计算机执行本文所述的执行及计算步骤。
[0149]本发明还支持用于执行本文所述的执行及计算步骤的系统。
[0150]通过以上启示,对于本领域技术人员来说,许多替代产品、修改及变体是显而易见的。当然,所属领域的技术人员容易意识到除本文所述的应用之外,还存在本发明的众多其他应用。虽然已参考一个或多个特定实施例描述了本发明,但所属领域的技术人员将认识到在不偏离本发明的范围的前提下,仍可对本发明作出许多改变。因此,应理解,只要是在所附权利要求书及其等效文句的范围内,可以用不同于本文具体描述的方式来实践本发明。
【权利要求】
1.一种用于处理图像的方法(100),所述方法(100)包括: 提供(101)来自所述图像的关键点集; 以二进制矩阵形式描述(103)所述关键点集的位置信息;以及 根据预定顺序扫描(105)所述二进制矩阵,从而创建所述关键点集的所述位置信息的新表示。
2.根据权利要求1所述的方法(100),其特征在于,根据所述预定顺序扫描(105)所述二进制矩阵包括: 扫描(105)所述二进制矩阵,从所述图像的感兴趣区域处或其周围的关键点开始到位于所述图像外围的关键点结束,反之亦然。
3.根据权利要求2所述的方法(100),其特征在于,所述图像的所述感兴趣区域位于所述图像的中心处或其周围。
4.根据前述权利要求中任一权利要求所述的方法(100),其特征在于,逆时针或顺时针扫描(105)所述二进制矩阵(401)。
5.根据前述权利要求中任一权利要求所述的方法(100),其特征在于,在同心圆环部分扫描(105)所述二进制矩阵(401)。
6.根据前述权利要求中任一权利要求所述的方法(100),其特征在于,所述关键点集的所述位置信息的所述新表示采用另一二进制矩阵(402)。
7.根据权利要求6所述的方法(100),其特征在于,所述另一二进制矩阵(402)以列优先或行优先的顺序创建。
8.根据权利要求6或权利要求7所述的方法(100),其特征在于,为所述关键点集的各个关键点从所述关键点周围的取向片段中计算描述符。
9.根据权利要求6至8所述的方法(100),其特征在于,所述二进制矩阵为由空白和非空单元格组成的直方图,非空单元格表示关键点在所述图像中的位置。
10.根据权利要求6至9中任一权利要求所述的方法(100),其特征在于,进一步包括: 压缩所述关键点集的所述位置信息的所述新表示。
11.根据权利要求10所述的方法(100),其特征在于,压缩所述关键点集的所述位置信息的所述新表示包括: 通过消除未携带位置信息的所述二进制矩阵的外围部分缩小(211)所述二进制矩阵的大小,所述缩小(211)在扫描(105,212)所述二进制矩阵之前进行。
12.根据权利要求10所述的方法(100),其特征在于,压缩所述关键点集的所述位置信息的所述新表示包括: 消除(213)对应于未携带非空值的所述二进制矩阵的同心圆的所述另一二进制矩阵的空白元素。
13.根据权利要求6至12中任一权利要求所述的方法(100),其特征在于,所述另一二进制矩阵(402)划分为不同大小的宏块,其中携带所述图像的感兴趣区域处或其周围的关键点的位置信息的宏块比携带所述图像外围处的关键点的位置信息的宏块更大。
14.根据权利要求13所述的方法(100),其特征在于,将熵编码应用到所述另一二进制矩阵(402,212)的跳过宏块信息(216)以及所述另一二进制矩阵(402,212)的非空宏块(217)中。
15.根据权利要求14所述的方法(100),其特征在于,当应用所述熵编码时,应用上下文创建(215)。
16.一种用于从图像的关键点集的位置信息的矩阵表示中重建所述图像的局部特征的方法(1000),其特征在于,包括: 根据预定顺序解开(1001)所述图像的所述关键点集的位置信息的所述矩阵表示,其中从所述关键点周围的取向片段中计算所述图像的所述局部特征。
17.—种位置信息编码器(1100),其特征在于,包括处理器(1101),用于 提供(101)来自图像(1103)的关键点集; 以二进制矩阵形式描述(103)所述关键点集的位置信息;以及 根据预定顺序扫描(105)所述二进制矩阵,从而创建所述关键点集的所述位置信息(1105)的新表示。
18.—种位置信息解码器(1200),其特征在于,包括处理器(1201),用于通过根据预定顺序解开(1001)图像(1205)的关键点集的位置信息(1203)的矩阵表示从所述图像的所述关键点集的所述位置信息的所述矩阵表示中重建所述图像的局部特征,其中从所述关键点周围的取向片段中计算所述图像的所述局部特征。
【文档编号】H04N19/136GK104012093SQ201280063487
【公开日】2014年8月27日 申请日期:2012年4月20日 优先权日:2012年4月20日
【发明者】基奥万尼·科达拉, 爱默德·鲍阿齐齐, 卢卡斯·康德拉德 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1