《信息处理系统、信息处理方法和程序.pdf》由会员分享,可在线阅读,更多相关《信息处理系统、信息处理方法和程序.pdf(44页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103377374 A (43)申请公布日 2013.10.30 CN 103377374 A *CN103377374A* (21)申请号 201310130640.X (22)申请日 2013.04.16 2012-097714 2012.04.23 JP G06K 9/46(2006.01) (71)申请人 索尼公司 地址 日本东京都 (72)发明人 福地正树 多井坚一郎 柏谷辰起 (74)专利代理机构 北京集佳知识产权代理有限 公司 11227 代理人 李春晖 李德山 (54) 发明名称 信息处理系统、 信息处理方法和程序 (57) 摘要 本申请公开了一种信息。
2、处理系统、 信息处理 方法和程序, 该信息处理系统包括 : 图像获取单 元, 被配置成获取由图像拍摄装置拍摄的图像数 据 ; 识别单元, 被配置成识别所获取的图像数据 中的多个特征点的分布密度 ; 以及显示控制单 元, 被配置成基于多个特征点的分布密度来控制 显示器显示引导信息。 (30)优先权数据 (51)Int.Cl. 权利要求书 2 页 说明书 19 页 附图 22 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书19页 附图22页 (10)申请公布号 CN 103377374 A CN 103377374 A *CN103377374A* 1/2 。
3、页 2 1. 一种信息处理系统, 包括 : 图像获取单元, 被配置成获取由图像拍摄装置拍摄的图像数据 ; 识别单元, 被配置成识别所获取的图像数据中的多个特征点的分布密度 ; 以及 显示控制单元, 被配置成基于所述多个特征点的分布密度来控制显示器显示引导信 息。 2. 根据权利要求 1 所述的信息处理系统, 其中, 所述显示控制单元被配置成控制所述显示器显示重叠在所显示的获取的图像数据上 的虚拟图像, 并且显示与重叠在所获取的图像数据上的虚拟图像对应的预定效果, 作为所 述引导信息。 3. 根据权利要求 2 所述的信息处理系统, 其中, 与重叠在所获取的图像数据上的虚拟图像对应的所述预定效果指。
4、示在所显示的获取 的图像数据的多个区域中的每个区域中的增强现实处理的稳定性水平。 4. 根据权利要求 1 所述的信息处理系统, 其中, 所述显示控制单元被配置成通过控制所述显示器显示重叠在所显示的获取的图像数 据上的虚拟对象来执行增强现实处理。 5. 根据权利要求 1 所述的信息处理系统, 其中, 所述识别单元被配置成连续地跟踪所获取的图像数据中包括的特征点, 以绘制与所获 取的图像数据对应的真实空间的地图。 6. 根据权利要求 1 所述的信息处理系统, 其中, 所述显示控制单元被配置成显示用于对所述图像拍摄装置进行导航以使得所拍摄的 图像数据中包括的特征点的数量超过预定阈值的指令, 作为所述。
5、引导信息。 7. 根据权利要求 1 所述的信息处理系统, 其中, 所述显示控制单元被配置成显示用于对所述图像拍摄装置进行导航以避免所述特征 点偏向于所拍摄的图像数据的特定区域的状态的指令, 作为所述引导信息。 8. 根据权利要求 1 所述的信息处理系统, 其中, 所述显示控制单元被配置成显示用于基于所述多个特征点的分布密度以预定速度对 所述图像拍摄装置进行导航的指令, 作为所述引导信息。 9. 根据权利要求 1 所述的信息处理系统, 其中, 所述识别单元被配置成确定所获取的图像数据的至少上部边缘区域、 下部边缘区域、 右部边缘区域和左部边缘区域中的多个特征点的密度。 10. 根据权利要求 9 。
6、所述的信息处理系统, 其中, 所述识别单元被配置成基于所获取的图像数据的至少所述上部边缘区域、 所述下部边 缘区域、 所述右部边缘区域和所述左部边缘区域中的所确定的所述多个特征点的密度, 预 测如果在向上方向、 向下方向、 向右方向或向左方向中的至少一个方向上指引所述图像拍 摄装置, 在随后拍摄的图像数据中是否将存在超过预定阈值的数量的特征点。 11. 根据权利要求 10 所述的信息处理系统, 其中, 所述显示控制单元被配置成基于所述预测控制所述显示器显示所述引导信息。 12. 根据权利要求 5 所述的信息处理系统, 其中, 所述识别单元被配置成识别所述真实空间中所拍摄的图像数据中包括的特征点。
7、的数 权 利 要 求 书 CN 103377374 A 2 2/2 页 3 量超过预定阈值的至少一个区域。 13. 根据权利要求 12 所述的信息处理系统, 其中, 所述显示控制单元被配置成控制所述显示器显示用于将所述图像拍摄装置导航到所 述真实空间中的所述至少一个区域的指令, 作为所述引导信息, 在所述至少一个区域中, 所 拍摄的图像数据中包括的特征点的数量超过所述预定阈值。 14. 根据权利要求 5 所述的信息处理系统, 其中, 所述识别单元被配置成识别所述真实空间中尚未拍摄其图像数据的至少一个区域。 15. 根据权利要求 14 所述的信息处理系统, 其中, 所述显示控制单元被配置成控制所。
8、述显示器显示用于将所述图像拍摄装置导航到所 述真实空间中尚未拍摄其图像数据的所述至少一个区域的指令, 作为所述引导信息。 16. 根据权利要求 1 所述的信息处理系统, 其中, 所述显示控制单元被配置成控制所述显示器显示重叠在所显示的拍摄的图像数据上 的虚拟图像, 作为所述引导信息。 17. 根据权利要求 16 所述的信息处理系统, 其中 所述显示控制单元被配置成基于所述多个特征点的分布密度, 控制所述显示器在与所 述图像拍摄装置的推荐导航方向对应的方向上移动重叠在所显示的获取的图像数据上的 虚拟图像。 18. 根据权利要求 1 所述的信息处理系统, 其中, 所述显示控制单元被配置成控制所述显。
9、示器显示重叠在所显示的获取的图像数据上 的虚拟图像, 作为所述引导信息, 所述虚拟图像指示所显示的获取的图像数据中的增强现 实处理的稳定性水平。 19. 根据权利要求 4 所述的信息处理系统, 其中, 所述虚拟对象被配置成由用户输入的指令来控制, 并且所述显示控制单元被配置成控 制所述显示器显示与所述用户输入的用于控制所述虚拟对象的指令相反的指令, 作为所述 引导信息。 20. 一种信息处理方法, 包括 : 获取由图像拍摄装置拍摄的图像数据 ; 识别所获取的图像数据中的多个特征点的分布密度 ; 以及 基于所述多个特征点的分布密度来控制显示器显示引导信息。 21. 一种包括计算机程序指令的非暂态。
10、计算机可读介质, 所述计算机程序指令当由电 路执行时使得所述电路执行以下步骤 : 获取由图像拍摄装置拍摄的图像数据 ; 识别所获取的图像数据中的多个特征点的分布密度 ; 以及 基于所述多个特征点的分布密度来控制显示器显示引导信息。 权 利 要 求 书 CN 103377374 A 3 1/19 页 4 信息处理系统、 信息处理方法和程序 技术领域 0001 本公开涉及一种信息处理系统、 信息处理方法和程序。 背景技术 0002 近年来, 已关注于称为增强现实 (AR) 的技术, 该技术通过将附加信息重叠在真实 空间上来将这样的信息呈现给用户。通过 AR 技术呈现给用户的信息也称为批注并且可使 。
11、用多种形式 (诸如文本、 图标和动画) 的虚拟对象来可视化。AR 空间中的批注的布置通常是 基于对出现在图像中的真实空间的三维结构的识别 (以下称为 “环境识别” ) 来执行的。公 知的环境识别方法包括例如 SLAM(即时定位与地图构建) 和 SfM(来自运动的结构) 。在下 述 NPL1 中描述了 SLAM 的基本原理。根据 SLAM, 与输入图像中的改变一致地动态更新的一 组特征点用于同时执行特征点的位置识别和环境中的摄像装置的位置和姿势的识别。 对于 SfM, 根据所拍摄的多个图像中出现的特征点的位置来计算视差, 同时基于算出的视差来识 别视点改变和环境。PTL1 公开了一种使用 SfM。
12、 来识别在 SLAM 的初始化期间所选择的特征 点的三维位置的方法。PTL2 公开了可通过应用 SLAM 来实现的 AR 应用的示例。 0003 引用列表 0004 专利文献 0005 PTL1JP2009-237845A 0006 PTL2JP2011-159162A 0007 非专利文献 0008 NPL1Andrew J.Davison,“Real-Time Simultaneous Localization and Mapping with a Single Camera” , Proceedings of the 9th IEEE International Conference o。
13、n Computer Vision Volume2,2003,pp.1403-1410. 发明内容 0009 技术问题 0010 基于图像中的一组特征点的环境识别技术的精度取决于图像中的特征点的分布。 随着特征点的数量增加, 识别的稳定性也增加。 如果特征点的数量过低, 则可能变得不再能 够跟踪环境。另外, 当图像中的特征点的数量相同时, 特征点的分布的偏向性越大, 则识别 变得越不稳定。 然而, 使用AR应用的用户通常没有环境识别技术的这种特性的知识。 因此, 当向用户提供 AR 应用时, 存在如下情形的实际风险 : 在该情形中, 由于用户将终端 (或摄像 装置) 指向不利于环境识别技术的方。
14、向而导致环境识别变得不稳定并且阻碍对AR应用的使 用。 0011 因此, 当向用户提供 AR 应用时, 期望提供能够避免上述情形的架构。 0012 问题的解决方案 0013 根据第一示例性实施例, 本公开涉及一种信息处理系统, 包括 : 图像获取单元, 被 配置为获取由图像拍摄装置拍摄的图像数据 ; 识别单元, 被配置为识别所获取的图像数据 说 明 书 CN 103377374 A 4 2/19 页 5 中的多个特征点的分布密度 ; 以及显示控制单元, 被配置为基于多个特征点的分布密度而 控制显示器显示引导信息。 0014 根据另一示例性实施例, 本公开涉及一种信息处理方法, 包括 : 获取由。
15、图像拍摄装 置拍摄的图像数据 ; 识别所获取的图像数据中的多个特征点的分布密度 ; 以及基于多个特 征点的分布密度而控制显示器显示引导信息。 0015 根据另一示例性实施例, 本公开涉及一种包括计算机程序指令的非暂态计算机可 读介质, 该计算机程序指令当由电路执行时, 使得电路执行以下步骤 : 获取由图像拍摄装置 拍摄的图像数据 ; 识别所获取的图像数据中的多个特征点的分布密度 ; 以及基于多个特征 点的分布密度而控制显示器显示引导信息。 0016 本发明的有利效果 0017 根据本公开的以上实施例, 当向用户提供 AR 应用时, 可以避免环境识别变得不稳 定并且阻碍对 AR 应用的使用的情形。
16、。 附图说明 0018 图 1 是用于说明根据本公开的一个实施例的图像处理设备的概况的图。 0019 图 2 是用于说明用于环境识别的特征点的图。 0020 图 3 是用于说明特征点的分布与环境识别的稳定性之间的关系的图。 0021 图 4 是示出根据本实施例的图像处理设备的硬件配置的一个示例的框图。 0022 图 5 是示出根据本实施例的图像处理设备 100 的逻辑功能配置的示例的框图。 0023 图 6 是示出由图 5 所示的 SLAM 计算单元执行的 SLAM 计算处理的流程的一个示例 的流程图。 0024 图 7 是用于说明真实对象上设置的特征点的图。 0025 图 8 是用于说明特征。
17、点的添加的图。 0026 图 9 是用于说明预测模型的一个示例的图。 0027 图 10 是用于说明特征数据的构成的一个示例的图。 0028 图 11 是用于说明根据特征点的分布来判定导航方向的第一方法的图。 0029 图 12 是用于说明根据特征点的分布来判定导航方向的第二方法的图。 0030 图 13 是用于说明由自主操作代理进行的导航的第一示例的图。 0031 图 14 是用于说明由自主操作代理进行的导航的第二示例的图。 0032 图 15 是用于说明由自主操作代理进行的导航的第三示例的图。 0033 图 16 是用于说明由虚拟指示进行的导航的第一示例的图。 0034 图 17 是用于说。
18、明由虚拟指示进行的导航的第二示例的图。 0035 图 18 是用于说明由虚拟指示进行的导航的第三示例的图。 0036 图 19 是用于说明由用户操作代理进行的导航的示例的图。 0037 图 20 是示出根据本实施例的图像处理的总体流程的一个示例的流程图。 0038 图 21 是示出当使用自主操作代理时的导航控制处理的流程的一个示例的流程 图。 0039 图 22 是示出在使用虚拟指示的情况下的导航控制处理的流程的示例的流程图。 0040 图 23 是示出在使用用户操作代理的情况下的导航控制处理的流程的示例的流程 说 明 书 CN 103377374 A 5 3/19 页 6 图。 具体实施方式。
19、 0041 在下文中, 将参照附图来详细描述本公开的优选实施例。 注意, 在该说明书和附图 中, 具有基本上相同的功能和结构的结构元件用相同的附图标记来指示, 并且省略对这些 结构元件的重复说明。 0042 按下述顺序给出以下描述 : 0043 1概况 0044 2根据一个实施例的设备的配置 0045 2-1硬件配置 0046 2-2功能配置 0047 2-3导航的示例 0048 2-4处理的流程 0049 3结论 0050 1概况 0051 首先将参照图 1 至 3 给出本公开的实施例的概况。 0052 图 1 是用于说明根据本公开的一个实施例的图像处理设备 100 的概况的图。在图 1 中。
20、, 示出了用户 Ua 持有的图像处理设备 100。图像处理设备 100 包括具有指向真实空间 10 的镜头的图像拍摄单元 102 和显示单元 110。在图 1 的示例中, 在真实空间 10 中存在包 括桌子 14 的多种真实对象。图像处理设备 100 的图像拍摄单元 102 拍摄真实空间 10 的图 像。这样拍摄的图像可显示在显示单元 110 上。图像处理设备 100 可包括执行 AR 应用的 控制单元 (未示出) 。这样的 AR 应用接收由图像拍摄单元 102 拍摄的图像作为输入图像, 将 虚拟对象重叠在这样的图像上, 并且将结果输出到显示单元 110。在图 1 的示例中, 将虚拟 对象 V。
21、O1 重叠在输出图像 Im01 上, 以使得虚拟对象 VO1 看起来就像其存在于桌子 14 上一 样。 0053 在图 1 中, 示出了移动终端作为图像处理设备 100 的一个示例。然而, 图像处理设 备 100 不限于这样的示例。作为其它示例, 图像处理设备 100 可以是 PC (个人计算机) 、 PDA (个人数字助理) 、 智能电话、 游戏终端、 便携式导航装置 (PND) 、 内容播放器或者数字家庭电 器。另外, 取代在用户操作的终端上运行, AR 应用可在能够与该终端通信的其它设备 (诸如 应用服务器) 上运行。 0054 为了在 AR 应用中适当地将虚拟对象重叠到图像上, 重要的。
22、是至少以特定的精度 水平来识别终端 (尤其是图像拍摄单元 102) 相对于真实空间的位置和姿势。作为用于这样 的环境识别的技术, 基于图像中的一组特征点的技术是公知的。作为一个示例, 根据 SLAM, 与输入图像的改变一致地动态更新的一组特征点用于同时执行特征点的位置的识别和环 境中的摄像装置的位置和姿势的识别。 对于SfM, 根据所拍摄的多个图像中出现的特征点的 位置来计算视差, 同时基于计算出的视差来识别视点改变和环境。 0055 然而, 基于图像中的一组特征点的环境识别的精度取决于特征点的分布。随着特 征点的数量增加, 识别的稳定性也增加。 如果特征点的数量过低, 则可能变得不再能够跟踪。
23、 环境并且变得难以判定在何处重叠虚拟对象。 另外, 当图像中的特征点的数量相同时, 特征 说 明 书 CN 103377374 A 6 4/19 页 7 点的分布的偏向性越大, 则识别变得越不稳定, 从而导致诸如虚拟对象的不规则移动的阻 碍。 0056 图 2 是用于说明用于环境识别的特征点的图。图 2 再次示出了图 1 中所示的真实 空间 10。图 2 中的星形符号表示具有被检测作为真实空间 10 中的特征点的高概率的点。 根据图可以理解, 在区域 12a 和 12b 中不存在特征点。因此, 如果例如拍摄输入图像以使得 仅区域 12a 或区域 12b 出现在整个图像中, 则这将导致环境识别失。
24、败并且 AR 应用不能正常 工作的情形。 0057 现在将参照图 3 进一步描述特征点的分布与环境识别的稳定性之间的关系。在图 3 中, 用圆形框示出了真实空间 10 的抽象概念, 并且用星形符号表示真实空间 10 中的特征 点。 这里, 假设当前的摄像装置角度指向圆形框的中心。 大量特征点出现在此时拍摄的图像 Im10 中, 其中这样的特征点比较均匀地分布在整个图像中。因此, 通过使用图像 Im10, 可以 以比较高的稳定性识别环境。 如果此后用户向上移动摄像装置角度, 则将拍摄到图像Im11。 如果用户向下移动摄像装置角度, 则将拍摄到图像Im12。 在图像Im11和图像Im12中, 多个。
25、 特征点比较均匀地分布在整个图像中。 相反, 如果用户向左移动摄像装置角度, 则将拍摄到 图像 Im13。在图像 Im13 中没有出现特征点。在该情况下, 环境识别可能失败。另外, 如果 用户向右移动摄像装置角度, 则将拍摄到图像 Im14。尽管多个特征点出现在图像 Im14 中, 但是这样的特征点将偏向于图像的上部。 在该情况下, 环境识别可能变得不稳定 (对于图像 Im14 的示例, 尽管可以以足够的精度来判定摄像装置在偏航 (yaw) 方向上的姿势 (旋转角 度) , 但是对于摄像装置在俯仰方向上的姿势没有实现足够的精度) 。因此, 对于使用基于一 组特征点的环境识别技术的 AR 应用,。
26、 更优选的是用户在向上方向或向下方向上移动摄像 装置角度而不是向左或向右移动摄像装置角度。 0058 为此, 如以下详细描述的, 本公开的以下实施例提供了用于对 AR 应用的用户进行 导航以便稳定基于一组特征点的环境识别的导航架构。 0059 2根据一个实施例的设备的配置 0060 现在将描述根据本实施例的图像处理设备 100 的示例配置。该说明将关注于使用 SLAM 来识别终端相对于真实空间的位置和姿势的示例。然而, 以下描述的实施例不限于这 样的示例, 而是可与基于特征点来执行环境识别的任何其它技术相结合。 0061 2-1. 硬件配置 0062 图 4 是示出根据一个实施例的图像处理设备。
27、 100 的硬件配置的一个示例的框图。 如图4所示, 图像处理设备100包括图像拍摄单元102、 传感器单元104、 输入单元106、 存储 单元 108、 显示单元 110、 通信单元 112、 总线 116 和控制单元 118。 0063 (1) 图像拍摄单元 0064 图像拍摄单元 102 是拍摄图像的摄像装置模块。图像拍摄单元 102 使用诸如 CCD (电荷耦合器件) 或 CMOS(互补金属氧化物半导体) 的图像拍摄元件来拍摄真实空间的图像 以生成拍摄图像。由图像拍摄单元 102 所生成的拍摄图像用作由控制单元 118 执行的图像 处理的输入图像。注意, 图像拍摄单元 102 不需要。
28、是图像处理设备 100 的一部分。作为一 个示例, 无线地或有线地连接到图像处理设备 100 的图像拍摄设备可被视为图像拍摄单元 102。 0065 (2) 传感器单元 说 明 书 CN 103377374 A 7 5/19 页 8 0066 传感器单元 104 可包括多种传感器, 比如定位传感器、 加速度传感器和陀螺仪传 感器。由传感器单元 104 获得的测量结果可用在多种应用中, 比如支持环境识别、 获取特定 于地理位置的数据以及检测用户输入。注意, 可从图像处理设备 100 的配置中省略传感器 单元 104。 0067 (3) 输入单元 0068 输入单元 106 是用户用于操作图像处理。
29、设备 100 或将信息输入到图像处理设备 100 中的输入装置。作为一个示例, 输入单元 106 可包括触摸传感器, 该触摸传感器检测用 户在显示单元 110 的屏幕上进行的触摸。取代触摸传感器 (或除触摸传感器之外) , 输入单 元 106 可包括诸如鼠标或触摸板的指向装置。另外, 输入单元 106 可包括其它类型的输入 装置, 诸如键盘、 小键盘、 一个或多个按钮或者一个或多个开关。 0069 (4) 存储单元 0070 存储单元 108 由存储介质比如半导体存储器或硬盘驱动器构成, 并且存储用于图 像处理设备 100 的处理的程序和数据。存储单元 108 存储的数据可包括稍后描述的拍摄图。
30、 像数据、 传感器数据以及多种数据库 (DB) 中的数据。注意, 取代存储在存储单元 108 中, 本 说明书中描述的程序和数据中的一些可从外部数据源 (作为示例, 数据服务器、 网络存储或 外部存储器) 获取。 0071 (5) 显示单元 0072 显示单元 110 是包括比如 LCD(液晶显示器) 、 OLED(有机发光二极管) 或 CRT(阴 极射线管) 的显示器的显示模块。作为一个示例, 显示单元 110 用于显示由图像处理设备 100 生成的 AR 应用的图像。注意, 显示单元 110 不需要是图像处理设备 100 的一部分。作 为一个示例, 无线地或有线地连接到图像处理设备 100。
31、 的显示设备可被视为显示单元 110。 0073 (6) 通信单元 0074 通信单元112是用作用于图像处理设备100与其它设备进行通信的中介器的通信 接口。通信单元 112 支持任意无线通信协议或有线通信协议并且建立与其它设备的通信连 接。 0075 (7) 总线 0076 总线 116 将图像拍摄单元 102、 传感器单元 104、 输入单元 106、 存储单元 108、 显示 单元 110、 通信单元 112 和控制单元 118 相互连接。 0077 (8) 控制单元 0078 控制单元 118 对应于比如 CPU(中央处理单元) 或 DSP(数字信号处理器) 的处理 器。通过执行存储。
32、在存储单元 108 或其它存储介质中的程序, 控制单元 118 使得图像处理 设备 100 以如稍后所述的多种方式起作用。 0079 2-2功能配置 0080 图 5 是示出了由图 4 所示的图像处理设备 100 的存储单元 108 和控制单元 118 实 现的逻辑功能的配置示例的框图。如图 5 所示, 图像处理设备 100 包括图像获取单元 120、 数据获取单元 125、 识别单元 130、 地图数据库 (DB) 160、 地图管理单元 165、 应用单元 170 和 显示控制单元 180。 0081 (1) 图像获取单元 0082 图像获取单元 120 获取由图像拍摄单元 102 生成的。
33、拍摄图像作为输入图像。图像 说 明 书 CN 103377374 A 8 6/19 页 9 获取单元 120 所获取的输入图像是出现真实空间的图像。输入图像通常是构成视频的单独 帧。图像获取单元 120 将所获取的输入图像输出到识别单元 130 和显示控制单元 180。 0083 (2) 数据获取单元 0084 数据获取单元 125 获取要用在识别单元 130 执行的环境识别和应用单元 170 执行 的 AR 应用的提供中的数据。作为示例, 数据获取单元 125 可获取由传感器单元 104 生成的 传感器数据、 与真实对象有关的数据和与虚拟对象有关的数据。 0085 (3) SLAM 计算单元。
34、 0086 识别单元130基于出现在图像获取单元120所获取的输入图像中的至少一个特征 点的 (一个或更多个) 位置来识别图像拍摄单元 102 相对于真实空间的位置和姿势。在本实 施例中, 识别单元 130 包括 SLAM 计算单元 135、 对象 DB140 和图像识别单元 145。 0087 SLAM 计算单元 135 执行根据 SLAM 的计算以动态地识别来自单目摄像装置的输入 图像中出现的真实空间的三维结构并且识别图像拍摄单元 102 的位置和姿势。 0088 首先, 将参照图6描述由SLAM计算单元135执行的SLAM计算处理的总体流程。 此 后, 将参照图 7 至 10 详细描述 。
35、SLAM 计算处理。 0089 图 6 是示出由 SLAM 计算单元 135 执行的 SLAM 计算处理的流程的一个示例的流程 图。在图 6 中, 当 SLAM 计算处理开始时, SLAM 计算单元 135 首先执行初始化处理以初始化 状态变量 (步骤 S10) 。在本实施例中, 表述 “状态变量” 指的是包括摄像装置的位置和姿势 (旋转角度) 、 摄像装置的移动速度和角速度以及至少一个特征点的位置作为元素的矢量。 将图像获取单元 120 所获取的输入图像接连输入到 SLAM 计算单元 135 中 (步骤 S20) 。可针 对每个输入图像 (即, 针对每个帧) 重复从步骤 S30 至步骤 S5。
36、0 的处理。 0090 在步骤 S30 中, SLAM 计算单元 135 跟踪出现在输入图像中的特征点。例如, SLAM 计算单元 135 将新的输入图像与预先获取的每个特征点的补丁 (patch) (例如, 以特征点为 中心的 33=9 个像素的小图像) 进行匹配。SLAM 计算单元 135 然后检测输入图像中的补 丁的位置, 即特征点的位置。这里所检测的特征点的位置在稍后更新状态变量时使用。 0091 在步骤 S40 中, SLAM 计算单元 135 例如基于指定的预测模型生成下一帧中的状态 变量的预测值。另外, 在步骤 S50 中, SLAM 计算单元 135 使用在步骤 S40 中所生。
37、成的状态变 量的预测值和与在步骤 S30 中所检测的特征点的位置一致的观察值来更新状态变量。SLAM 计算单元 135 基于扩展的卡尔曼滤波器的原理来执行步骤 S40 和 S50 中的处理。 0092 作为这样的处理的结果, 输出在每个帧中更新的状态变量的值。现在将更详细地 描述状态变量的初始化 (步骤 S10) 、 特征点的跟踪 (步骤 S30) 、 状态变量的预测 (步骤 S40) 和状态变量的更新 (步骤 S50) 的相应的处理内容。 0093 (3-1) 状态变量的初始化 0094 在SLAM计算单元135所使用的状态变量的元素之中, 摄像装置的位置、 姿势、 移动 速度和角速度的初始。
38、值可以为零或任意其它值。另外, 从输入图像中选择多个特征点。作 为示例, 这里所选择的特征点可以是在图像中动态地检测的点 (例如, 纹理的边缘和拐角) 或者可以是针对初始化目的而预先设置的已知点。也可根据诸如 SfM 的方法来计算特征点 的三维位置。SLAM 计算单元 135 使用这样初始化的元素来构造状态变量。 0095 (3-2) 特征点的跟踪 0096 使用可能存在于真实空间中的真实对象的外观上出现的至少一个特征点的补丁 说 明 书 CN 103377374 A 9 7/19 页 10 数据来执行特征点的跟踪。在图 7 中, 作为真实对象的两个示例, 示出了柜子 (在图中的左 侧) 和日。
39、历 (在图中的右侧) 。在每个真实对象上设置至少一个特征点 (FP) 。作为一个示例, 特征点 FP1 是设置在柜子上的特征点, 并且定义了与特征点 FP1 相关联的补丁 Pth1。以此 方式, 特征点 FP2 是设置在日历上的特征点, 并且定义了与特征点 FP2 相关联的补丁 Pth2。 0097 SLAM 计算单元 135 将在初始化处理中所选择的特征点的补丁数据或此后新选择 的特征点的补丁数据与输入图像中所包括的局部图像进行匹配。作为这样的匹配的结果, SLAM 计算单元 135 指定输入图像中包括的特征点的位置 (例如, 所检测的补丁的中心像素 的位置) 。 0098 SLAM的一个特。
40、性是所跟踪的特征点随时间动态地改变。 例如, 在图8的示例中, 当 时间 T=t-1 时, 在输入图像中检测到六个特征点。接下来, 如果摄像装置的位置或姿势在时 间 T=t 处改变, 则在时间 T=t-1 处出现在输入图像中的六个特征点中的仅两个特征点出现 在输入图像中。在该情况下, SLAM 计算单元 135 可在输入图像中具有特性像素图案的位置 设置新特征点并且在随后的帧中在 SLAM 计算处理中使用这样的新特征点。作为一个示例, 对于图 8 所示的情况, 在时间 T=t 处, 在真实对象上设置四个新特征点。通过使用 SLAM 的 这种特性, 可以降低在预先设置特征点时所需的成本并且通过使。
41、用增加的大量特征点来提 高识别精度。 0099 (3-3) 状态变量的预测 0100 在本实施例中, SLAM 计算单元 135 使用在以下等式中表示的状态变量 X 作为要应 用于扩展卡尔曼滤波器的状态变量。 0101 数学式 1 0102 0103 如以下等式中所示, 等式 (1) 的状态变量 X 的第一个元素表示真实空间中的摄像 装置的三维位置。 0104 数学式 2 0105 0106 状态变量的第二个元素是具有与表示摄像装置的姿势的旋转矩阵对应的四元组 作为元素的四维矢量。注意, 取代四元组, 可使用欧拉角来表示摄像装置的姿势。另外, 状 态变量的第三和第四个元素分别表示摄像装置的移动。
42、速度和角速度。 0107 另外, 状态变量的第五和随后的元素每个分别表示特征点 FPi的三维位置 pi(其 说 明 书 CN 103377374 A 10 8/19 页 11 中, i=1N) 。注意, 如之前所述, 特征点的数量 N 可在处理期间改变。 0108 数学式 3 0109 0110 SLAM计算单元135基于在步骤S10中初始化的状态变量X的值或在先前帧中更新 的状态变量 X 的值, 生成最新的帧的状态变量的预测值。根据以下等式中所示的多维正态 分布, 根据扩展卡尔曼滤波器的状态等式来生成状态变量的预测值。 0111 数学式 4 0112 预测状态变量 0113 这里, F 是与。
43、系统的状态转移有关的预测模型, 并且 a 是预测条件。w 是高斯噪声 并且作为示例可包括模型近似误差和观察误差。高斯噪声 w 的平均值将通常为零。 0114 图9是用于说明根据本实施例的预测模型的示例的图。 如图9所示, 在根据本实施 例的预测模型中存在两个预测条件。首先, 作为第一条件, 假设特征点的三维位置不改变。 即, 如果时间 T 处的特征点 FP1 的三维位置被表示为 pT, 则满足以下关系。 0115 数学式 5 0116 pt pt-1 (5) 0117 接下来, 作为第二条件, 假设摄像装置的移动是均匀运动。即, 从时间 T=t-1 到时 间 T=t, 对于摄像装置的速度和角速。
44、度满足以下关系。 0118 数学式 6 0119 0120 0121 基于等式 (4) 所示的预测模型和状态等式, SLAM 计算单元 135 生成最新的帧的状 态变量的预测值。 0122 (3-4) 状态变量的更新 0123 SLAM 计算单元 135 然后使用观察等式来评估例如根据状态变量的预测值所预测 的观察信息与作为跟踪特征点的结果而获得的实际观察信息之间的误差。以下等式 (8) 中 的 Nu 是这样的误差。 0124 数学式 7 0125 观察信息 0126 预测误差信息 0127 这里, H 表示观察模型。例如, 图像拍摄平面 (u-v 平面) 上的特征点 FPi的位置由 以下等式。
45、来定义。 0128 数学式 8 说 明 书 CN 103377374 A 11 9/19 页 12 0129 图像拍摄平面上的特征点 FPi的位置 0130 这里, 摄像装置的位置 x、 摄像装置的姿势 和特征点 FPi的三维位置 pi都被提 供作为状态变量X的元素。 这样, 根据使用以下等式的针孔摄像装置模型找到特征点FPi在 图像拍摄平面上的位置。注意, 是用于归一化的参数, A 是摄像装置内部参数矩阵, 以及 具有下标 的 R 是与表示状态变量 X 中包括的摄像装置的姿势的四元组 对应的旋转矩 阵。 0131 数学式 9 0132 0133 因此, 通过搜索使得使用等式 (11) 推出的。
46、预测观察信息 (即, 各个特征点在图像拍 摄平面上的位置) 与在图 6 中的步骤 S30 中跟踪特征点的结果之间的误差最小化的状态变 量 X, 可以获得可用的最新状态变量 X。 0134 数学式 10 0135 最新状态变量 0136 SLAM 计算单元 135 将根据 SLAM 以此方式动态更新的状态变量 X 中所包括的参数 的值输出到地图管理单元 165 并且将这样的值存储在地图 DB160 中。 0137 (4) 对象 DB 0138 对象 DB140 是预先存储表示对象的特征的特征数据的数据库。存储在对象 DB140 中的特征数据用在图像识别单元 145 所执行的图像识别处理中。图 1。
47、0 是用于说明特征数 据的构成的一个示例的图。 0139 在图 10 中, 特征数据 141 被示出作为真实对象 RO1 的一个示例。特征数据 141 包 括对象 ID142a、 从六个方向拍摄的图像数据 142b、 补丁数据 142c 和三维形式数据 142d。 0140 对象 ID142a 是用于唯一地标识真实对象 RO1 的标识符。图像数据 142b 包括分别 从六个方向 (即, 前、 后、 左、 右、 上和下) 对真实对象 RO1 进行拍摄的六个图像的图像数据。 补丁数据 142c 是对于真实对象上设置的每个特征点的一组小图像, 其中, 每个小图像以相 应的特征点为中心。三维形式数据 。
48、142d 包括表示在真实对象 RO1 的本地坐标系中每个特 征点的三维位置的位置信息 (即, 每个特征点相对于在真实对象 RO1 上本地定义的原点的 位置) 。 0141 (5) 图像识别单元 0142 图像识别单元145使用由对象DB140存储的上述特征数据来识别出现在输入图像 中的真实对象。更具体地, 作为一个示例, 图像识别单元 145 将包括在图像获取单元 120 所 获取的输入图像中的局部图像与包括在特征数据中的每个特征点的补丁进行匹配, 以检测 包括在输入图像中的特征点。图像识别单元 145 可再次使用由 SLAM 计算单元 135 产生的 跟踪特征点的结果。接下来, 当已在图像的给定区域中以高密度检测到属于一个真实对象 的特征点时, 图像识别单元 145 可识别出这样的真实对象出现在该区域中。图像识别单元 145 还可基于所检测的特征点与图 10 所示的三维数据之间的位置关系来识别所识别的真 实对象的位置和姿势。基于图像识别单元 145 所识别的真实对象的位置和姿势以及 SLAM 说 明 书 CN 103377374 A 12 10/19 页 13 计算单元 135 所识别的图像拍摄单元 102 的位置和姿势, 实现在 SLAM 的初始化之后对真实 对象的位置和姿势的跟踪。图像识别单元 145 将以此方式跟踪的真实对象的位置和姿势输 出到地图管。