首页> 中国专利> 能够提供随后体验影像的影像提供装置、影像提供方法、影像提供程序

能够提供随后体验影像的影像提供装置、影像提供方法、影像提供程序

摘要

影像提供装置向用户提供使用立体照片的没有不舒适感的自然的随后体验。具体而言,在特征点提取器(15、22)中提取前景图像和背景图像的特征点。立体匹配模块(25)搜索前景图像的特征点与背景图像的特征点的对,利用这些对,得到用于将前景图像投影到背景图像内部的变换矩阵。针对与前景图像对应的深度前景数据,实施基于匹配单元得到的变换矩阵的变换。最后,通过执行基于变换后的深度前景数据的基于深度的绘制,得到与前景图像对应的两个以上的视点图像。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-06-08

    授权

    授权

  • 2016-04-13

    专利申请权的转移 IPC(主分类):G06T19/00 登记生效日:20160324 变更前: 变更后: 申请日:20120229

    专利申请权、专利权的转移

  • 2014-01-29

    实质审查的生效 IPC(主分类):G06T19/00 申请日:20120229

    实质审查的生效

  • 2012-12-05

    公开

    公开

说明书

技术领域

本发明属于图像合成技术的技术领域。

背景技术

图像合成技术是指如下技术:对应该在背景图像的哪个位置合成 前景图像进行解析,选择最佳位置,将前景图像合成到背景图像中。 这里,在选择用户个人拍摄的照片作为前景图像、选择该拍摄地点的 街景作为背景图像进行合成的情况下,能够向用户提供使用户随后体 验该拍摄时的氛围的合成影像。

具体而言,目前,在因特网上运营街景检索服务这样的服务,在 该服务中,在服务器内蓄积世界范围内收集的背景图像。如果下载该 背景图像中的期望图像并与用户拍摄的人物进行合成,则能够以各种 角度再现该拍摄当时的氛围。这样,将以街景检索服务为前提进行用 户个人照片的拍摄时的随后体验的功能称为随后体验功能。

现有技术文献

专利文献

专利文献1:US6,711,293B1

发明内容

发明要解决的课题

作为随后体验功能的进一步的发展形式,存在要实现作为立体视 照片的前景图像和作为立体视街景的背景图像的合成的动向。这里, 关于立体视的实现,存在以下方法:使用深度图像生成右眼图像和左 眼图像这2个视点图像;以及在拍摄时得到右眼图像和左眼图像这2 个视点图像,它们在图像中表现的建筑物的进深不同。即,即使对地 球上的同一场所进行拍摄,由于照相机所取的建筑物或人物的进深不 同,所以,在对照片和街景进行合成时,人物和建筑物的进深感也不 协调,得到不耐看的立体视图像。这里,考虑进行专利文献1所记载 的特征点提取,在前景图像和背景图像中进行平面的定位,但是,在 背景图像和照片中,深度图像完全不同,在街景的近前大幅突现照片、 或者照片进入街景里侧的情况下,即使通过专利文献1的技术对平面 的位置关系进行匹配,也无法消除由于上述不协调感而导致的视觉上 的不匹配。

本发明的目的在于,提供如下的影像提供装置:即使在将在完全 不同的条件下拍摄的前景图像合成到背景图像中的情况下,也能够生 成没有不舒适感的立体视图像。

用于解决课题的手段

在背景图像为街景、前景图像为照片这样的假设下提示了技术课 题,但是,该假设只不过是在说明上述技术课题时选择身边的题材, 本申请中作为对象的技术课题不限于背景图像和前景图像为上述例 子的情况。关于上述技术课题,在将对进深感稍微不同的两张图像进 行合成的技术应用于工业产品时,本申请的技术领域的从业人员直面 的视觉上的不匹配的消除全部是本申请的技术课题。

能够解决上述课题的影像提供装置将背景图像数据粘贴在三维 建模空间中的立体模型的内侧表面后,对前景图像数据进行合成,其 特征在于,该影像提供装置具有:提取单元,提取前景图像数据和背 景图像数据的特征点;匹配单元,搜索前景图像数据的特征点和背景 图像数据的特征点的对,通过利用这些对,得到用于将前景图像数据 投影到背景图像数据的内部的变换矩阵;变换单元,针对与前景图像 数据对应的深度前景数据,基于匹配单元得到的变换矩阵实施变换; 基于深度的绘制单元,通过对前景图像数据实施基于变换后的深度前 景数据的基于深度的绘制,得到与前景图像数据对应的2个以上的视 点图像数据;以及合成单元,进行与前景图像数据对应的2个以上的 视点图像数据和与背景图像数据对应的2个以上的视点图像数据的 合成。

发明效果

得到用于将前景图像投影到背景图像的变换矩阵,根据该变换矩 阵对前景图像的深度图像进行变换,所以,取得前景图像的深度图像 所示的进深与背景图像的进深的匹配。如果根据这样进行变换后的前 景图像的深度图像生成2个以上的视点图像,则不会产生从背景图像 中异样突现、或前景图像异样远离背景图像这样的不自然的立体感。 由此,能够生成发挥适当立体视效果的合成影像。

由于不会产生上述这种立体视再现时的不协调感,所以,能够展 开随后体验提供这样的新的网络服务。并且,通过使电视机、记录器、 摄像机、数字照相机这样的家电产品具有该功能,能够实现家电产品 的高附加价值。

具有该课题解决手段的影像提供装置的发明记载于本申请的技 术方案中的第一个技术方案即技术方案1中。这里,通过在该影像提 供装置的发明中追加其他的发明特定事项,并且,将该系统的发明的 发明特定事项从上位概念的事项置换为下位概念的事项,能够进一步 使上述再现装置的发明发挥效果。这些发明特定事项的追加、发明特 定事项的下位概念化的变化如下所述,这些变化在技术方案中进行区 分而记载于技术方案2以下的从属技术方案中。

虽然是任意的,但是也可以是,设所述前景图像数据上的某个特 征点f(xf、yf)、与特征点f(xf、yf)对应的背景图像数据的特征 点F(XF、YF)、以及特征点F(XF、YF)的深度值ZF为X、Y、 Z坐标,应用于以下的数1的数学式,从而得到变换矩阵H。

[数1]

Q=XFYFZFq=xfyf1

q=HQ

能够使用OPEN-GL等现有的CG右眼图像实现该矩阵的导出, 所以,针对数字家电的装配容易。

虽然是任意的,但是也可以是,所述影像提供装置还具有取得单 元,该取得单元取得由立体视照相机拍摄的照片图像数据,所拍摄的 照片图像数据具有右眼照片数据和左眼照片数据,所述变换单元还通 过对背景图像数据的拍摄方向和各照片图像的拍摄方向进行比较,决 定将右眼照片数据和左眼照片数据中的哪个照片数据作为基点图像, 所述前景图像数据被决定为右眼照片数据和左眼照片数据中的基点 图像数据。

通过对背景图像的拍摄方向和各照片图像的拍摄方向进行比较, 决定将右眼照片数据和左眼照片数据中的哪个照片数据作为基点图 像,所以,能够使由于照片的拍摄方向与街景的8个方向不同而引起 的不舒适感最小化。

虽然是任意的,但是也可以是,所述影像提供装置具有深度图像 生成单元,该深度图像生成单元根据右眼照片数据和左眼照片数据生 成与照片有关的深度图像,变换单元进行变换的深度前景数据是由深 度图像生成单元生成的深度图像。即使取得前景图像的照相机不具有 取得深度图像的功能,也能够得到最佳的深度图像。

虽然是任意的,但是也可以是,所述基于深度的绘制单元根据深 度前景数据所示的进深,使左眼照片数据和右眼照片数据中的不是基 点图像的图像的像素的坐标向水平方向位移,从而再次生成图像数 据,所述2个以上的视点图像数据由左眼照片数据和右眼照片数据中 的不是基点图像数据的图像数据和再次生成的图像数据构成。

可以使用能够实现基于深度图像的绘制(DIBR)的软件和硬件, 实现与前景图像对应的2个以上的视点图像的生成。

虽然是任意的,但是也可以是,针对影像提供装置,预先确定应 该进行探索的特征点应取的进深的容许等级,所述匹配单元在从前景 图像数据中搜索用于与立体街景视点进行匹配的特征点时,排除进深 分布的中心在容许范围外的特征点,在背景图像数据中的特征点和前 景图像数据中的特征点中的、进深分布的中心在容许范围内的特征点 彼此之间进行匹配。

构成天空中的云的像素等存在于远方的像素从匹配对象中除外。 不会产生使前景图像中的云与背景图像中的云匹配这样的错误定位, 所以,能够高精度地取得变换矩阵。

虽然是任意的,但是也可以是,所述影像提供装置具有:发送单 元,使用地球上的地理信息,向图像收集服务器发送指定了当前视点 位置的图像取得请求;以及接收单元,作为针对图像取得请求的应答, 接收从图像收集服务器发送来的街景文件,所述背景图像数据存在于 接收到的街景文件中。根据使用地球上的地理信息的图像取得请求来 发送背景图像,所以,用户能够留在房屋中,从服务器下载世界中的 喜欢的场所的光景,将其合成到自己的照片中。通过该服务,能够使 用户感受在世界旅行这样的虚拟体验。

虽然是任意的,但是也可以是,所述影像提供装置具有读出单元, 该读出单元访问记录介质并读出立体照片文件,所述立体照片文件包 括左眼照片数据、右眼照片数据和地理信息,所述变换单元还通过对 背景图像数据的拍摄方向和各照片图像的拍摄方向进行比较,决定将 右眼照片数据和左眼照片数据中的哪个照片数据作为基点图像,所述 前景图像数据被决定为右眼照片数据和左眼照片数据中的基点图像 数据,所述发送单元使用存在于立体照片文件中的地理信息,生成指 定当前视点位置的图像取得请求,将其发送到图像收集服务器,从图 像收集服务器发送来的街景文件具有与图像取得请求中包含的地理 信息一致的拍摄地属性。将存在于照片文件中的地理信息作为关键 字,使服务器进行背景图像的检索,取得期望的街景文件,所以,在 影像提供装置被组入数字电视机中的情况下,能够实现使数字电视机 与立体视照相机协作的新型服务。由此,在捆绑销售数字电视机和立 体视照相机的情况下,能够实现与竞争商品之间的差别化。

虽然是任意的,但是也可以是,背景图像是视点周围图像,表示 从与图像取得请求中的地理信息对应的地理位置张望周围时的光景。 用户能够在视点周边图像中出现的范围内自由改变视线,能够实现随 后体验功能的充实化。

附图说明

图1示出立体视全景检索服务的全体结构。

图2是示意地示出作为街景对象的虚拟空间的图。

图3示出横排粘贴多个背景图像的球面模型的内侧表面。

图4示出在三维建模空间中在立体视再现时生成的2个球面模 型。

图5示出根据在球体的内侧表面粘贴的背景图像而生成多视点图 像的过程。

图6示出粘贴了左位移后的全周围图像和右位移后的全周围图像 的状态的球面模型。

图7示出左眼用纹理和右眼用纹理的配置。

图8示出前景图像与背景图像的合成。

图9示出随后体验影像的一例。

图10示出街景导航的画面结构的一例。

图11是示出实施方式1中的数据流程的例子的图。

图12是示出实施方式1中的影像提供装置的内部结构的图。

图13示出基于控制部4的随后体验GUI的一例和放映幻灯片时 的各个显示。

图14示出实施方式1中的立体照片文件的数据构造和数据例、 JPEG压缩后的左眼图像数据、右眼图像数据、深度图像。

图15示出实施方式1中的立体街景视点文件的数据构造和数据 例。

图16示出深度图像中出现的房屋、以及特征量描述符201的数 据构造和数据例。

图17是作为特征匹配对象的照片、背景图像的一例。

图18示出特征点的一例、将照片B应用于背景A中的变形的过 程及其结果。

图19示出前景图像的深度图像和背景图像的深度图像,并且示 出考虑了匹配结果的背景图像和前景图像的绘制的过程。

图20是随后体验处理的主流程。

图21是示出照片和街景的特征点提取顺序的流程图。

图22是示出与照片和街景有关的匹配以及深度图像变换的处理 顺序的流程图。

图23是影像提供装置的硬件结构图。

图24是示出GPU的内部结构的图。

图25是球面模型与纹理的对应、以及用于实现纹理映射的API 调出的描述例。

图26示出在深度图像存储器中存在于坐标(x、y)的像素Pix (x、y)和存在于坐标(x、y)的像素的进深Depth(x、y)。

图27示出通过像素电平的位移而在左眼纹理和右眼纹理中具有 什么样的视差。

具体实施方式

具有上述课题解决手段的影像提供装置的发明能够作为用于再 现街景的数字家电设备来实施,集成电路的发明能够作为组入该数字 家电设备中的系统LSI来实施。影像提供方法的发明能够作为在该数 字家电设备中实现的时序顺序来实施。影像提供程序的发明能够作为 记录在计算机可读取的非临时的记录介质中并安装在数字家电设备 中的执行形式程序来实施。在影像提供装置的说明之前,对影像提供 装置的使用环境即立体视全景检索服务的全体结构进行说明。

图1示出立体视全景检索服务的全体结构。全景收集服务器1001 是将从世界中收集的背景图像与深度数据和地形数据相对应地存储 的服务器,根据来自客户端装置的请求,与深度图像和地形数据一起 发送视点周围图像。背景图像是在专用的拍摄车辆的行驶中拍摄的。 深度数据表示在该拍摄时取得的地标的进深。进而,视点周围图像表 示从与对全景收集服务器1001发送的图像取得请求中的地理信息对 应的地理位置张望周围时的光景。视点周围图像例如是张望90度、 120度、180度、360度这样的较宽视野的图像,特别地,将张望360 度视野的视点周围图像称为全景图像或全周围图像。为了便于说明, 在以后的说明中,假设视点周围图像为张望360度视野的全景图像即 全周围图像。该拍摄车辆具有多个照相机,在多个照相机中,通过纵 4×横7的背景图像表示车辆所在的场所。深度图像通过像素的亮度表 示深度数据中的地标的进深,表示背景图像的进深。即,深度图像的 各个像素成为表示背景图像的各个像素的进深的进深信息

客户端装置1002是数字电视机等网络对应的家电设备,对服务 器发送下载请求mg1,并接收全周围图像mg2、深度图像mg3。使用 该全周围图像执行3D街景。该下载请求包括纬度、经度、海拔的信 息,能够请求发送地球上的任意场所的全周围图像。

在用户希望视听立体视的街景的情况下,由用户佩戴眼镜1003。 这里的立体视通过多视点图像群实现。这里,多视点图像群是如左眼 图像、右眼图像、中央、右斜上图像、右斜下图像、左斜上图像、左 斜下图像那样、通过与2个以上的视点对应的视点图像实现立体视的 视点图像的集合体。对多视点图像群的全部变化进行说明时,说明变 得烦杂,所以,在以后的说明中,设多视点图像群是由必要最低限度 的视点图像组、即左眼图像和右眼图像的组构成的立体图像群,从而 进行说明。

图2是示意地示出街景立体视系统的图。本图的上半部分是模型 所在的虚拟空间,下半部分是客户端装置1002、眼镜1003所在的现 实空间。

首先,对虚拟空间进行说明。虚拟空间是指由用于配置三维坐标 的坐标系规定的三维建模空间,该三维坐标规定立体模型的几何学形 状。立体模型的形状不限。可以是圆柱、圆锥、三角锥、椭圆体等的 任意形状的三维模型,但是,为了便于说明,在以后的说明中,设为 球面模型进行说明。作为立体模型的球体的中心是照相机的位置。为 了简化,仅描绘一个球面模型,但是,在立体视时,存在分别与左眼 用、右眼用有关的球面模型。图中的照相机CL是配置在从球面模型 中心向右侧隔开p的位置的照相机。照相机CR是配置在从球面模型 中心向左侧隔开p的位置的照相机。这些照相机CL、CR成为左眼拍 摄时、右眼拍摄行为时的球面模型的中心位置。

在该立体模型的斜上方配置有结合了纵4×横7的背景图像的全 周围图像。全周围图像具有右眼用的全周围图像m1和左眼用的全周 围图像m2,在右眼用纹理和左眼用纹理中,三维建模空间中的配置 位置不同。在本图中,仅描绘球面模型的上半部分,但是,实际上还 存在下半部分。并且,关于全周围图像,也仅描绘上半部分,但是, 实际上还存在下半部分。

接着,对球面模型进行说明。在球体的内侧表面存在右眼用纹理 的粘贴范围m4和左眼用纹理的粘贴范围m5。球面模型中的粘贴范 围是指在球面模型中由4个或3个交点规定的网格。该网格具有球面 模型的曲率,被定义为将球面模型的极坐标作为顶点的三角形带的一 部分或全部。在纹理映射时,设图形类型为三角形带,通过与存储有 背景图像的正文缓存坐标进行对应,执行图形描绘。在纹理的近前存 在显示面,在该显示面中定义窗口mg6。窗口规定三维建模空间中的 用于显示的部分。投影到该窗口中的影像用于再现。窗口存在于左眼 投影范围和右眼投影范围交叉的场所。即,窗口配置在左眼用和右眼 用共同的位置。

在球面模型的内侧粘贴的纹理是全周围图像,所以,张望360° 的全周围。如果将三维建模空间中的球面模型展开为墨卡托图形,则 成为全周围图像。半球体中的纵2×横7的网格的个数与全周围图像 中的纵2×横7的背景图像的个数一致。即,进行将全周围图像中的 各个背景图像变换为纹理、并粘贴在球面模型的各个网格中的纹理映 射。

以上是与虚拟空间有关的说明。接着,对现实空间进行说明。

在本图中,在作为立体模型的球体的正下方描绘客户端装置1002 和佩戴了眼镜1003的用户的面部。客户端装置1002的显示画面存在 于球面模型内的窗口的正下方。并且,眼镜1003存在于比照相机CL、 CR的正下方更靠里侧。这是因为,用户的右眼、左眼成为照相机CL、 CR的位置,所以,眼镜1003必须配置在其附近。

如上所述,照相机CL、CR的位置与用户的右眼、左眼相当,窗 口与客户端装置1002的画面相当,所以,在客户端装置1002与用户 之间出现立体视图像。在虚拟空间中,房屋以平面方式表现,但是, 在现实空间中,房屋成为从客户端装置1002的画面中突现的形式。

图3示出从球面模型中心对粘贴在球面内侧的纹理进行视听的状 态。图3示出横排粘贴多个背景图像的球面模型的内侧表面。在图3 中,在正面配置近代的教堂,在右手侧存在滑梯。它们粘贴在球体的 内侧表面,所以,当在截面圆的中心配置照相机的情况下,以从全周 围包围该照相机的方式配置背景图像。在该球面模型中粘贴的纹理伴 随由地球上的纬度、经度、海拔确定的视点位置而变化。即,在用户 进行了视点位置的变更操作的情况下,影像提供装置对由地球上的地 理信息(纬度、经度、海拔等)确定的当前视点位置进行更新,下载 与更新后的当前视点位置一致的全周围图像,将该全周围图像粘贴在 球面模型中,进行再次描绘。

在图2的球面模型中,照相机存在于球面模型的中心,但是,这 是用于平面视的照相机位置,立体视的照相机位置不同。在立体视时, 通过在从球面模型中心隔开p的位置配置照相机,得到2个球面模型。 图4示出在三维建模空间中在立体视再现时生成的2个球面模型。图 4(a)是左眼用的球面模型,在内侧粘贴有通过对横向结合了横7张 背景图像的图像执行DIBR而生成的左眼图像。

图4(b)是通过对(a)的图像执行基于深度图像的基于深度的 绘制而生成的右眼图像,在内侧粘贴有通过对横向结合了横7张背景 图像的图像执行基于深度图像的基于深度的绘制而生成的右眼图像。

设构成全周围图像的横7张图像为图像A、B、C、D、E、F、G。 对如何根据该图像A~G生成右眼用纹理和左眼用纹理进行说明。图 5示出根据在该球体的内侧表面粘贴的背景图像而生成多视点图像的 过程。(a)示出如下的一例:在通过对球体内侧表面进行分割而得 到的7个分割区域中,按照A→B→C→D→E的顺序粘贴构成全周围 图像的横7张图像中的A、B、C、D、E这5张背景图像。对图5(a) 的图像A、图像B、图像C、图像D、图像E进行说明。在图像A 中,设由于基于DIBR的位移而使坐标变化的像素集合为AL、AM、 AR。在图像B中,设由于基于DIBR的位移而使坐标变化的像素集 合为BL、BM、BR,在图像C中,设由于基于DIBR的位移而使坐 标变化的像素集合为CL、CM、CR。在图像D中,设由于基于DIBR 的位移而使坐标变化的像素集合为DL、DM、DR,在图像E中,设 由于基于DIBR的位移而使坐标变化的像素集合为EL、EM、ER。 这些像素群在图像中呈现“V”的形状。

在左眼用纹理的生成中,结合图像A~E来执行DIBR。由此, 左端部分的像素在显示区域外,所以,在相邻图像即图像A、B、C、 D、E的右侧端部追加图5(a)中的像素集合BL、CL、DL、EL、 FL。该结果为图5(b)。如图5(b)所示,左眼用纹理由包含像素 群AM、AR、BL的图像A(L);包含像素群BM、BR、CL的图像 B(L);由像素群CM、CR、DL构成的图像C(L);包含像素群 DM、DR.EL的图像D(L);以及包含像素群EM、ER、FL的图像 E(L)构成。由于是纸面上的情况,所以,在图5中省略图像F、G 的图示,但是,图像F、G也进行与本图相同的处理。

在右眼用纹理的生成中,结合图像A~E来执行DIBR。由此, 右端部分的像素在显示区域外,所以,在相邻图像即图像A、B、C、 D、E的左侧端部追加图5(a)中的像素集合GR、AR、BR、CR、 DR。该结果为图5(c)。如图5(c)所示,右眼用纹理由包含像素 群GR、AL、Am的图像A(R);包含像素群AR、BL、Bm的图像 B(R);由像素群BR、CL、Cm构成的图像C(R);包含像素群 CR、DL、Dm的图像D(R);以及包含像素群DR、EL、Em的图 像E(R)构成。

图6(a)示出在球面内侧粘贴图5(b)的左位移后的像素时的 纹理。图6(b)示出在球面内侧粘贴图5(c)的右位移后的像素时 的纹理。

图7(a)示出在图1的三维建模空间中左眼用纹理、右眼用纹理 与窗口的关系。图7(a)是左眼用纹理的配置。在本图中,在左眼 用照相机的视线矢量前方配置左眼用纹理,在球面模型内侧粘贴左眼 用纹理。由此,与窗口相当的部分被用于显示。图7(b)是右眼用 纹理的配置。在本图中,在右眼用照相机的视线矢量前方配置右眼用 纹理,在球面模型内侧粘贴右眼用纹理。由此,与窗口相当的部分被 用于显示。

图8示出前景图像与背景图像的合成。(a)是作为题材的前景 图像,这是以近代的教堂为背景、新郎和新娘相互面对的内容的抓拍 照片。该近代的教堂也存在于背景图像中,所以,教堂的轮廓线形状 成为前景图像和背景图像的共同特征。图8(b)示出前景图像与背 景图像的匹配。通过该匹配,能够得到表示背景图像和前景图像的对 应关系的变换矩阵,所以,如果根据该矩阵对前景图像的深度图像进 行变换后进行DIBR,则得到与背景图像没有不舒适感的合成图像。

以该图8的合成为前提,能够实现随后体验。图9示出画面合成 的一例。视线vw1表示通过眼镜1003对右眼进行遮光时的影像的入 射。视线vw2表示通过眼镜1003对左眼进行遮光时的影像的入射。 通过该vw1对左眼图像进行视听。并且,通过vw2对右眼图像进行 视听。通过佩戴眼镜1003,用户交替视听右眼图像和左眼图像,再 现立体视图像。图9的图像是通过根据变换矩阵对窗口中得到的前景 图像和背景图像进行合成而得到的立体视图像。以在球面体内部粘贴 的多个背景图像为背景来显示人物,所以,得到临场感高的立体视影 像。如上所述,如果从服务器取得与照片的全局位置一致的全周围图 像,则能够在与该照片一致的全周围图像中合成照片。

并且,能够在街景中合成UI目标。图10示出合成了UI目标的 街景。方向导航ui在视觉上显示当前的视线方向。指示器ir1、ir2表 示当前的视点位置所在的地名(loss-Less Citycentral park)和建筑物 的名称(CABAC church)。十字按钮bn2在变更当前视点位置的情 况下受理其行进方向的选择。变焦放大按钮bn3在不改变视点位置和 视线方向的状态下受理显示内容的放大/缩小操作。角度按钮bn4受 理当前视线方向的右旋转、左旋转的指定。这些GUI被分配给遥控 器的键,所以,通过对遥控器进行操作,能够进行街景中的移动、旋 转这样的控制。以上是与全景检索服务有关的说明。

(实施方式1)

实施方式1涉及用于将作为前景图像的照片合成到背景图像中 的改良。在实施方式1中的影像提供装置的说明之前,对应该在本实 施方式的影像提供装置中实现的数据流程进行说明。

图11是示出实施方式1中的数据流程的例子的图。该数据流程 表示作为处理对象的图像及其处理内容。在本图中,对数据流程中的 各个处理内容标注df1~df9这样的参照标号。该图11的数据流程的 特征在于,在与照片有关的深度图像生成之前进行全周围图像90L 与照片数据60L的特征点匹配df7,然后,对通过针对照片图像60R、 60L的DIBR而得到的深度图像实施与匹配结果对应的深度变换df9。 下面,按照这些参照标号对影像提供装置中的数据流程进行说明。

“针对SV的DIBR”df1是针对全周围图像90C和深度图像90D 的DIBR处理,生成第二全周围图像90R。

“针对右眼球面的映射”df2是如下处理:进行与通过DIBR而 得到的右眼用纹理有关的纹理映射,进行窗口变换,得到右眼窗口图 像90R'。

“右眼SV与右眼照片的合成”df3是如下处理:对通过DIBR 而得到的右眼窗口图像90R'和照片的右眼图像60R进行合成,得到 合成图像150R。

“照片的DIBR”df4是如下处理:对照片深度60D和右眼照片 60R进行DIBR处理,得到左眼照片60L'。

“针对左眼球面的映射”df5是如下处理:进行与通过DIBR而 得到的左眼用纹理90L有关的纹理映射,得到左眼窗口图像90L'。

“左眼SV与左眼照片的合成”df6是如下处理:对照片的左眼 图像60L'和左眼窗口图像90L'进行合成,得到合成影像150L。

以后的df7~df9是本数据流程中的特征性处理。

“特征点匹配”df7是全周围图像90L与左眼照片60L之间的特 征点匹配处理。

“深度生成”df8是针对左眼照片60L和右眼照片60R的深度生 成。

“与匹配对应的深度图像生成”df9是如下处理:对通过深度生 成df8而生成的深度图像实施与匹配对应的变换,从而生成照片深度 60D。以上是与实施方式1中的影像提供装置的数据流程有关的说明。 对用于具体实现该数据流程的影像提供装置的具体结构要素进行说 明。

(影像提供装置的内部结构)

图12是示出实施方式1中的影像提供装置的内部结构的图。如 本图所示,影像提供装置由网络接口1a、输入接口1b、内部媒体1c、 文件系统2、UO模块3、控制部4、描绘部5、左眼照片平面存储器 6a、右眼照片平面存储器6b、左眼窗口存储器7a、右眼窗口存储器 7b、合成部8a、8b、立体输出模块9构成。在本图中,鼓状记号意 味着存储器,菱形记号意味着存储器器件。

<网络接口1a>

网络接口1a用于与影像提供装置的外部进行通信,能够访问可 利用因特网访问的服务器,或者访问利用本地网络连接的服务器。例 如,可以用于下载在因特网上公开的随后体验内容。网络接口1a具 有请求发送部和应答接收部。请求发送部向全景收集服务器1001发 送指定了地球上的当前视点位置的图像取得请求。这里,请求发送部 使用在读出立体照片文件时通过输入接口1b读出的立体照片文件、 和存在于从内部媒体1c读出的立体照片文件中的地理信息,生成指 定当前视点位置的图像取得请求,将其发送到全景收集服务器1001。

应答接收部接收从全景收集服务器1001发送来的立体街景视点 文件,作为针对图像取得请求的应答。从全景收集服务器1001发送 来的立体街景视点文件具有与图像取得请求中包含的地理信息一致 的拍摄地属性。

<输入接口1b>

输入接口1b例如是从具有移动性的外部设备进行输入的输入接 口,优选为SD卡槽和用于从装配在槽中的移动媒体中读取照片文件 的存储卡I/F。当在槽中装配SD卡等移动媒体时,移动媒体与影像 提供装置被电连接,利用存储卡I/F,能够将记录在半导体存储器中 的数据变换为电信号并读出。

<内部媒体1c>

内部媒体1c例如是内置于再现装置中的硬盘驱动器、存储器等 的可写入的记录介质,蓄积立体街景视点文件、立体视照片文件。

<文件系统2>

文件系统2对通过网络接口1a的通信、通过输入接口1b的读写、 以及针对内部媒体1c的读写进行控制。并且,进行输入接口1b等的 媒体装卸通知。特别地,文件系统2包括读出部,通过输入接口1b 读出立体照片文件,或者从内部媒体1c中读出立体照片文件。

<UO模块3>

UO模块3受理针对GUI的用户操作。优选为用于接收红外线遥 控的模块。

<控制部4>

控制部4根据针对GUI画面的用户操作进行描绘部的控制。根 据用户身边的GUI画面的局面补充控制部4的控制内容。图13(a) 是示出实施方式1中的控制部4的随后体验GUI的图。随后体验GUI 在文件的一览显示302中分别对应记录日期(Date)303和复选框301。 在本图中,Photo1.mpo、Phto2.mpo、Phto3.mpo、Photo6.mpo这样的 多个文件用于与缩略图对应地进行一览显示。它们对应有拍摄日期 (2011/2/12 10:22、2011/2/12 10:25)、复选框301,在复选框中选中 的文件成为随后体验的对象。复选框指定针对立体视照片文件是否需 要放映幻灯片。在该GUI的下侧存在有用于受理放映幻灯片的开始 指示的按钮304。

图13(b)示出放映幻灯片时的各个显示。在该显示中,可知以 从全景收集服务器取得的全周围图像为背景显示照片402。在本图中, 缩略图sn1、sn2、sn3、sn4在随后体验功能中一览可显示的照片。跳 过按钮sk1受理针对前后照片切换合成对象的操作。按照以上的GUI 画面对描绘部5进行描绘控制,由此,控制部4实现对话的操作环境。 以上是与控制部4有关的说明。

<描绘部5>

描绘部5根据控制部4的控制从文件系统2中读取数据,对照片 平面存储器6a、6b和窗口存储器7a、7b进行描绘。

<左眼照片平面存储器6a>

左眼照片存储器6a是存储左眼用的照片图像的存储器。

<右眼照片平面存储器6b>

右眼照片存储器6b是存储右眼用的照片图像的存储器。

<左眼窗口存储器7a>

左眼窗口存储器7a是存储左眼用的窗口图像的存储器。

<右眼窗口存储器7b>

右眼窗口存储器7b是存储右眼用的窗口图像的存储器。

<合成部8a、8b>

合成部8a、8b对左眼窗口存储器的存储内容和左眼照片存储器 的存储内容进行合成,对右眼窗口存储器的存储内容和右眼照片存储 器的存储内容进行合成。

<立体输出模块9>

立体输出模块9向显示装置(未图示)输出由合成部8a、8b进 行层合成后的存储器的存储内容。优选为HDMI1.4传送器和HDMI 输出连接器。

以上是影像提供装置的全体结构的说明。以上的结构要素中的描 绘部5是构成影像提供装置的核心的结构,在本实施方式中承担特别 重要的作用。以该描绘部5的内部结构为焦点,更加详细地说明描绘 部的内部结构。

如图12所示,描绘部由立体照片管理模块11、照片解码器12、 照片存储器13a、13b、照片深度生成器14、照片深度存储器15、立 体SV管理模块16、SV解码器17、SV存储器18、SV深度解码器 19、SV深度存储器20、SVDIBR部21、纹理存储器22a、22b、照 片特征点提取器23、SV特征点提取器24、立体匹配模块25、深度 变换部26、照片深度缓存27、照片DIBR部28、CG处理部30(包 括顶点处理部31、绘制处理部32、纹理映射处理部33、像素处理部 34)构成。

<立体照片管理模块11>

立体照片管理模块11从文件系统2中读取立体照片文件并进行 解析。

<照片解码器12>

照片解码器12是JPEG解码器,进行立体照片文件中包含的压 缩左眼图像504和压缩右眼图像505的展开。根据处理对象的数据构 造的局面补充照片解码器12的处理内容。作为解码对象的立体视对 应的照片数据被存储在MPO文件中。MPO(Multipicture object)文 件是能够通过任天堂株式会社的3DS、富士胶片FinePix REAL 3D W1和W3照相机拍摄的文件,存储2个JPEG文件。图14(a)示出 立体照片文件的数据构造。图14(a)是示出实施方式1中的立体照 片文件501的数据构造和数据例的图。立体照片文件包括拍摄日502、 尺寸503、压缩左眼图像504、压缩右眼图像505,并且,作为与拍 摄地有关的地理信息,具有地理的纬度506、经度507、海拔508、 方位509、倾斜5 10的数据。拍摄日502表示进行拍摄的日期。尺寸 503表示图像的纵横尺寸。压缩左眼图像504是以JPEG形式压缩后 的数据。压缩右眼图像505是以JPEG形式压缩后的数据。地理信息 即纬度506、经度507、海拔508表示拍摄时的位置。方位509、倾 斜510表示拍摄时的方向。用于拍摄的立体照相机具有二个镜头,通 过左侧镜头和右侧镜头分别对左眼图像例6L和右眼图像例6R进行 压缩,进而附带附加信息而记录为立体照片文件。如本图所示,示出 拍摄地的纬度、经度、海拔、方位,所以,如果使用这些信息,则能 够正确地与作为背景图像的全周围图像进行匹配。图14(b)示出JPEG 压缩后的左眼图像数据和右眼图像数据。照片解码器12可以将这种 能够严格匹配的立体照片文件作为解码对象。以上是与照片解码器 12有关的说明。

<左眼照片存储器13a、右眼照片存储器13b>

右眼照片存储器13a、左眼照片存储器13b的对存储由照片解码 器12展开的左眼图像和右眼图像。

<开关13c>

开关13c向照片DIBR执行部28输出照片存储器13a、13b中的 作为基点图像的图像。

<照片深度生成器14>

照片深度生成器14对由照片解码器12展开的左眼图像和右眼图 像进行解析,生成深度图像。图14(c)示出根据图14(b)中的左 眼图像例60L和右眼图像例60R生成的深度图像。进深由亮度表现, 意味着随着颜色变浅,像素变近。黑色表示比某个阈值远的距离,白 色表示比某个阈值近的距离。

<照片深度存储器15>

照片深度存储器15是存储由照片深度生成器14生成的深度图像 的存储器。

<立体SV管理模块1 6>

立体SV管理模块16从文件系统2中读取立体街景视点文件并 进行解析。

<SV解码器17>

SV解码器17是JPEG解码器,进行存储在立体街景视点文件中 的压缩墨卡托图像802的展开,将通过该展开而得到的非压缩的全周 围图像数据存储在SV存储器19中。立体街景视点文件是再现地球 上的任意地点的视点的文件,是在地球上的该视点的拍摄地属性中对 应作为全周围图像的压缩墨卡托图像和作为对应深度图像的压缩墨 卡托深度的文件。这里的拍摄地属性是纬度、经度、海拔、方位、倾 斜。根据处理对象的数据构造的局面补充SV解码器17的处理内容。 图15示出实施方式1中的立体街景视点文件的数据构造和数据例。 在图15中,存储在立体街景视点文件中的压缩墨卡托图像是以JPEG 形式对通过墨卡托图法生成的全周围图像进行压缩编码后的数据,通 过对其进行解码,得到全周围图像。图15(a)示出立体视街景视点 文件的数据构造。立体视街景视点文件具有与立体照片文件共通的数 据构造,所以,在检索适于某个照片的立体视街景视点文件时,如果 搜索到数据库中存在的立体街景视点文件中的具有相同纬度、经度、 海拔作为拍摄地属性的文件,则能够早期发现与立体照片文件匹配的 立体视街景视点文件。通过这种搜索而发现的立体街景视点文件内的 全周围图像是SV解码器17的解码对象。图15(b)是示出实施方式 1中的存储在立体视街景视点文件801中的压缩墨卡托深度802的一 例的图。全周围图像90C是从全方位拍摄并通过墨卡托图法生成的 图像。如上所述,全周围图像(墨卡托图像)被存储在立体街景视点 文件中,以街景这样的单位进行处理,所以,在本说明书中,将全周 围图像(墨卡托图像)总称为“街景(SV)”。以上是与SV解码器 17有关的说明。

<SV存储器18>

SV存储器18是存储由SV解码器17展开的全周围图像511的 存储器。

<SV深度解码器19>

SV深度解码器19是PNG解码器,进行立体视街景视点文件801 中包含的压缩墨卡托深度803的展开,将其存储在SV深度存储器20 中。图15(c)示出深度图像90D的一例。深度图像90D是表示相 对于全周围图像90C的进深的图像。进深由亮度表现,意味着随着 变得明亮,像素接近拍摄场所。黑色表示无限远,白色表示拍摄场所 (距离零)。

<SV深度存储器20>

SV深度存储器20是存储通过SV深度解码器19的解码而得到 的非压缩的深度图像的存储器。

<街景DIBR执行部21>

街景DIBR执行部21对全周围图像实施基于深度图像的DIBR 处理,生成另一视点的全周围图像。DIBR(Depth Image Based  Rendering或Depth Image Based Representations)是如下处理:根据 深度图像(深度映射图),从基本图像起使各像素左右位移,生出另 一视点的视点图像。在将基本的全周围图像分配给左眼用的情况下, 如果要生成的视差图像(即右眼用的图像)上的像素相对于基本像素 向右位移,则在3D空间上向里侧移动,如果相对于基本像素向左位 移,则在3D空间上向近前移动。这是基于通过所谓的人眼的阻塞角 之差而生出的立体知觉,当相对于基本的左眼图像而使右眼图像上的 像素向左位移时,阻塞角减小,成为所谓的斜视状态,所以,感觉由 该像素表现的物体位于近前。相反,当相对于基本的左眼图像而使右 眼图像上的像素向右位移时,阻塞角变大,感觉由该像素表现的物体 位于里侧。由此,如果根据由深度图像所示的各像素的进深值使基本 的左眼图像的各像素左右位移,则能够生成对应的可立体视的右眼图 像。

<左眼纹理存储器22a、右眼纹理存储器22b>

右眼纹理存储器22a、左眼纹理存储器22b的对存储街景DIBR 执行部21进行DIBR而得到的左眼纹理和右眼纹理。

<照片特征点提取器23>

照片特征点提取器23根据存储在左眼照片存储器13a中的照片 数据和存储在右眼照片存储器13b中的照片数据提取特征点,生成特 征点701。

<SV特征点提取器24>

SV特征点提取器24与照片特征点提取器23同样,进行全周围 图像的特征点提取后,进行深度图像中的基于深度探索范围的特征点 的除外,然后,利用其余特征点进行全周围图像数据与照片数据的匹 配。匹配的结果,导出表示立体照片与全周围图像数据的立体关系的 变换矩阵。

<立体匹配模块25>

立体匹配模块25进行由照片特征点提取器23生成的特征点701 与由SV特征点提取器24生成的特征点701的匹配,生成表示立体 照片与作为街景的全周围图像的立体的相对位置关系的变换矩阵。

<深度变换部26>

深度变换部26使用立体匹配模块25得到的变换矩阵对存储在照 片深度存储器15中的照片深度进行变换,将变换后的照片深度写入 照片深度缓存27中。

<照片深度缓存27>

在照片深度缓存27中存储有深度变换部26实施变换后的照片深 度。

<照片DIBR执行部28>

照片DIBR执行部28对存储在照片存储器13a、13b中的照片中 的由开关13c选择出的照片(基点图像)实施基于照片深度的DIBR。 将作为其处理结果的左眼照片数据、右眼照片数据写入左眼照片平面 存储器6a和右眼照片平面存储器6b中。

<CG处理部30>

CG处理部30进行如下处理:将构成建模数据的三维坐标配置在 三维建模空间中,将该三维建模空间中的三维坐标投影到窗口中。该 处理具有坐标/视野变换、照度计算(纹理映射处理)、窗口处理。

<坐标变换部31>

坐标变换部31将视点设为照相机,通过指定照相机的方向和变 焦等级,决定投影立体物的幕。然后,将规定球面模型的建模数据的 三维坐标变换为三维建模空间中的世界坐标。这里的坐标变换是指, 将三维建模空间中的照相机位置作为原点,将规定建模数据的三维坐 标变换为从照相机观察的坐标系中的世界坐标。

<照度计算部32>

照度计算部32计算对立体物照射从在三维建模空间中设定的光 源位置照射的光时的各顶点中的照度。

<纹理映射部33>

纹理映射部33在三维建模空间上准备左眼用和右眼用的2个球 体,将对背景图像进行变换而得到的2个以上的左眼用纹理和右眼用 纹理映射到三维建模空间中的球体模型的内侧表面。

<窗口变换部34>

窗口变换部34按照包含显示器的分辨率等的显示器信息,将三 维建模空间中的三维坐标的顶点坐标变换为二维的幕坐标,从而提取 窗口图像。提取出的图像具有左眼窗口图像和右眼窗口图像,窗口变 换部将它们分别输出到左眼平面存储器6和右眼平面存储器7。在位 置方向判定部2对描绘控制部5进行的指示为当前视点位置没有变 化、仅当前视线方向变化的情况下,纹理映射部跳过纹理映射处理, 仅窗口变换部伴随当前视线方向变化而进行窗口的再次提取和指定 平面存储器的再次输出。

以上是与影像提供装置的内部结构有关的说明。至此结束影像提 供装置的内部结构的说明。内部结构图所示的结构要素中的照片特征 点提取器23、SV特征点提取器24、立体匹配模块25是本申请新创 作的结构要素,具有用于解决上述技术课题的作用。这些新的结构要 素以外的结构要素只不过是用于担保作为现有数字家电设备的功能 的一般要素。以后,对新创作的结构要素(照片特征点提取器23、 SV特征点提取器24、立体匹配模块25)进行详细说明。在以下的详 细解说中,对上述结构要素的说明应用具体的图像例。

<应该在匹配中使用的特征点>

对照片特征点提取器23、SV特征点提取器24应该提取的特征 点进行说明。

在进行拍摄时期大大不同的立体照片与全周围图像的匹配的情 况下,尽可能使用即使时期不同也不变的特征点进行匹配。构成特征 点的像素呈现明暗分布。通过构成该明暗分布中心的亮度在预先确定 的容许范围(深度探索范围)的范围内还是范围外,决定是否将特征 点作为匹配对象。在范围外,具有明暗分布中心的特征点应该从匹配 对象中除外。例如,背景图像中的表现无限远的像素的亮度接近0。 该特征点的亮度接近0,该明暗分布中心在深度探索范围的范围外, 所以,从特征点计算中除外。由此,能够提高匹配的精度。

在立体照片中,在距离过近的对象较多的情况下,多是作为立体 照片的对象的人物等。并且,在距离过远的对象较多的情况下,多是 天空等。通过使用不过近、不过远、像素中的明暗分布中心收敛在深 度探索范围内的特征点,能够进行更加准确的匹配。

例如,在上述照片深度图像60D的例子中,将近处的人物、远处 的天空除外,能够进行基于建筑物或地面的准确匹配。

也可以应用面部识别技术。例如,对人物的面部进行识别,将该 面部的特征点作为范围,将比面部更近的部分设定在范围外。由此, 接近面部的部分的特征点从匹配对象中排除,能够提高精度。并且, 仅限于特征点的中心进行比较,是因为重视计算能力。

特征量提取是特别需要计算能力的处理,通过仅对左眼图像/右 眼图像中的某一方进行处理,能够缩短处理全体的时间,能够缩短直 到对用户输出图像为止的应答时间。并且,在左侧拍摄的情况下,与 立体街景视点最近的图像是右眼图像,通过以右眼图像为基点生成特 征量和深度,能够提高精度。并且,通过先对作为基点的图像进行解 码,能够将在特征量提取的期间内在解码中使用的硬件资源用于不是 基点的图像的解码,能够通过并行处理而期待高速化。

为了提高精度,也可以通过使用考虑了特征点半径的式子的均衡 式对深度图像进行均衡。该均衡式根据特征点的面积全体与中心之间 的距离改变明暗分布。这样,如果均衡后的深度图像在深度探索范围 内,则能够选出适于匹配的特征点。以上是与用于匹配的特征点有关 的说明。接着,对特征点描述符进行详细说明。

<特征点描述符>

对作为照片特征点提取器23和SV特征点提取器24的提取结果 而输出的特征点描述符进行说明。

图16(a)放大示出在深度图像中出现的房屋。在本图中,房屋 的正面部分、侧面部分、窗户部分分别具有不同的亮度,利用不同的 阴影图案示出这些亮度的差异。在该深度图像中,从亮度变化大的场 所、即处于房屋轮廓线的部分中提取特征点。图中的圆形记号表示作 为特征点而提取的像素集合。特征点提取的结果由特征点描述符表 现。图16(b)是示出实施方式1中的特征量描述符701的数据构造 和数据例的图。特征量描述符701由中心702、半径703、方向704、 特征量705的数据构成。中心702表示将特征量描述符701作为对象 的图像中的相对中心点。半径703表示将特征量描述符701作为对象 的图像中的相对半径。方向704表示在将特征量描述符701作为对象 的图像中光谱分布朝向哪个方向。特征量705不是特征点的值。通过 在多个图像中探索特征量,能够导出相似的图像。

以上是应该作为照片特征点提取器23、SV特征点提取器24安 装的特征点提取处理的详细解说。接着,进行应该作为立体匹配模块 25安装的处理的详细解说。说明立体匹配模块25如何进行照片与背 景图像的匹配。在以后的说明中,使用图17所示的背景A、照片B。 图17是作为特征匹配对象的照片、背景图像的一例。本图中的背景 A、照片B拍摄了巴黎的凯旋门前的光景,拍摄的日期时间不同,但 是,映入的店铺的建筑物是相同建筑物。这样,由于存在相同建筑物, 所以,关于背景A、照片B,通过对照片实施伴有旋转/移动的变换, 能够使照片B变化成与背景A匹配的照片。通过对背景A、照片B2 中的特征点进行匹配,进行该旋转/移动。

特征点作为圆状的像素的集合体而出现在图像上。图18(a)示 出特征点的一例。设这些背景A、照片B的特征点中的背景A中的 特征点F1与照片B中的特征点f1、背景A中的特征点F2与照片B 中的特征点f2、背景A中的特征点F3与照片B中的特征点f3的类 似性最高。由此,能够针对背景A和照片B求出特征点的对。使用 已知算法得出各个特征点后,通过最小二乘法得到特征点对。然后, 求出使照片B变形为矩形C的矩阵H。

图18(b)示出立体匹配模块25将照片B应用于背景A中的变 形的过程及其结果。图18(b)的左侧是变形的过程。下侧的背景A 中的矩形C的框表示如下的变形基准:在将上侧的照片B应用于下 侧的背景A中时,变形为背景A的哪个位置/形状即可。如本图所示, 在将照片B应用于背景A中时,使照片B变形为矩形C的框的形状 即可。如果相互匹配的特征点对为3个以上,则求出能够进行上述旋 转/移动的矩阵、即单应矩阵H。

经过这种变形,应用照片B的结果为图18(b)的右侧。这里, 通过单应矩阵H,照片B被投影到由矩形C包围的平面。

然后,针对照片B的深度映射图Mf进行基于单应矩阵H的投影, 得到Mf'。由此,能够求出投影到背景A后的照片B的深度。

对单应矩阵进行说明。例如,设三维建模空间上的某个点Q(X、 Y、Z)位于某个平面上。而且,在将其投影到另一平面上、该点为q (x、y)的情况下,在q与Q之间,以下的数2的数学式的关系成 立。

[数2]

Q=XYZ1q=xy1

q=sHQ

这里,在上述数学式中,“s”是换算系数,“H”是单应矩阵。 下面,对单应矩阵进行说明。单应矩阵根据“旋转、并行移动”的要 素和“投影变换”的要素这2个要素而成立。

这里,当设具有旋转/并行的要素的矩阵为“W=[Rt]”、具有投 影变换的要素的矩阵为M(照相机的内部矩阵)时,以下的数3的 数学式成立。

[数3]

W=[Rt]

M=fx0Cx0fyCy001

q=sMWQ

关于街景,作为进行匹配后的特征点的Z坐标,可以使用深度图 像中的对应像素的进深Tf。如果将该Tf作为z坐标而应用于“用于 解决课题的手段”的栏所示的数1的数学式,则能够导出满足这些数 学式的矩阵H。

具体而言,通过将照片B上的某个特征点f(xf、yf)、与特征 点f对应的背景A上的特征点F(XF、YF)、以及与特征点(XF、 YF)对应的深度值ZF应用于上述数1的数学式,导出矩阵H。变换 矩阵的生成可以利用作为OpenCV中的参考之一的 cvFindHomography()。函数cvFindHomography求出2张图像间的 投影变换矩阵H=||hij||。API调出的格式如下所述。

void cvFindHomography(const CvMat*src#points,

const CvMat*dst#points,

CvMat*homography);

第1变量即src#points表示第1张图像上的坐标。第2变量即 dst#points表示第2张图像上的坐标。homography是作为返回值而输 出的3×3单应矩阵(平面投影变换矩阵)。以上是与变换矩阵有关的 说明。接着,对深度图像进行详细说明。

深度图像中的各像素的亮度通常用8比特来表现,对一个像素给 出0(最远)~255(最近)的范围内的深度。作为匹配对象的特征 点舍去上限、下限、上限和下限的某些,被限定为以具有其余范围的 深度的像素为中心的特征点。在将上限和下限作为对象的情况下,舍 去0和255,将以具有1~254之间的深度的像素为中心的特征点限 定为匹配范围。由此,能够提高匹配精度。

作为立体匹配模块25的处理结果,说明如何进行深度图像的映 射。图19是示意地示出深度图像的映射的概念的图。照片的深度图 像由8比特、0~255之间的值表现。SV深度由8比特、0~255之间 的值表现。根据在匹配中利用的特征点的深度进行全体的深度的映 射。这是为了抑制在DIBR中进行的像素的位移量。

图19(a)示出作为前景图像的照片数据的深度图像和作为背景 图像的全周围图像数据的深度图像。这2个深度图像成为映射对象。 图中的阴影是进深的范围。其中,菱形的范围、圆形的范围、四边形 的范围是建筑物的进深的范围。在前景图像和背景图像中,建筑物的 进深的范围分别不同。当针对这些前景图像的深度图像进行基于上述 单应矩阵的变换时,得到图19(a)的下段的映射结果。可知,背景 图像的菱形的范围与前景图像的菱形的范围大体相同,并且,背景图 像的圆形的范围与前景图像的圆形的范围大体相同,背景图像的四边 形的范围与前景图像的四边形的范围相同。通过基于以上匹配结果的 变换,在背景图像中出现的建筑物的亮度范围与在前景图像中出现的 建筑物的亮度范围大体相同,消除了对背景图像和前景图像进行合成 时的不舒适感。

图19(a)下段的右侧表示安全控制线。进深范围内的换算全体 中的除了上限和下限以外的中间部分成为由安全控制线确定的进深。 通过基于该安全控制线的校正,菱形以上的部分、四边形以下的部分 被除外。

图19(b)示出考虑了匹配结果的背景图像与前景图像的绘制过 程。上段是照片的深度图像,成为人物像部分的进深为3的亮度。中 段是照片,示出个人照片、背景图像的各个部分的进深。这里,个人 照片的进深为3,建物的进深为2,天空的进深为-3。通过上述进深 范围的映射,0~-3的部分被除外,+3~0的部分作为街景的进深是 有效的。这里,具有+3的进深的人物部分不存在于街景中,所以, 该人物的特征点不用于与街景的特征点之间的匹配。具有-3的进深的 背景存在于街景中,但是,该部分的进深在变换中被除外,所以,不 用于与街景的特征点之间的匹配。具有2的进深的建筑物既存在于街 景中也存在于照片中,所以,通过移动、旋转、缩放实施单应变换, 以使得照片的构造物与背景图像的构造物一致。

得到表示该变换的变换矩阵,对照片的深度图像进行变换后,如 果执行与照片有关的DIBR,则得到图19(b)的下段的合成影像。

在将与照片对应的深度图像投影到与全周围图像对应的深度图 像中之后进行DIBR,所以,像素位移量不会成为极端,不会生成难 看的立体视图像。由于不发生3D坐标系的运算,所以,能够实现描 绘的高速化和省硬件化。

<以CPU上的动作为前提的软件安装>

通过利用ASIC等硬件集成元件具体实现上述影像提供装置中的 各结构要素,能够以工业方式生产本实施方式的影像提供装置。在该 硬件集成元件采用CPU、代码ROM、RAM这样的通用的计算机系 统的体系结构的情况下,必须预先将利用计算机代码描述了上述各结 构要素的处理顺序的程序组入代码ROM中,使硬件集成元件内的 CPU执行该程序的处理顺序。

对在采用通用的计算机系统的体系结构的情况下软件安装所需 要的处理顺序进行说明。图20是随后体验处理的流程图。本流程图 相当于最上位的处理即主进程,作为本流程图的下位的流程图,具有 图21、图22的流程图。下面,对主进程中的处理顺序进行说明。

在步骤S1中,一览显示照片文件的缩略图,转移到步骤S2、步 骤S3的循环。步骤S2判定是否在复选框中进行了显示指定,如果进 行了显示指定,则将显示指定的照片作为放映幻灯片的对象(步骤 S4),返回步骤S2、步骤S3的循环。

步骤S3判定是否进行了放映幻灯片开始指示。这里,在用户按 下“Start Slideshow”按钮之前待机。如果按下了“Start Slideshow” 按钮,则针对用户选择出的每个立体图像进行步骤S5-步骤S6的循 环。以后,执行步骤S5-步骤S6的循环。该循环是指,针对作为放 映幻灯片对象的各个照片执行步骤S7~步骤S13的处理。

在步骤S7中,使用存在于作为放映幻灯片对象的立体照片文件 中的地理信息(纬度、经度、海拔、方位),生成图像的取得请求, 将该取得请求发送到全景收集服务器1001。在步骤S8中,等待接收 作为与所发送的取得请求对应的应答而发送的立体街景视点文件,如 果接收到该立体街景视点文件,则在步骤S9中进行与照片和街景有 关的特征点提取。在步骤S10中,执行照片与街景的匹配以及深度图 像变换。在步骤S11中,以与照片的深度图像和街景的深度图像的各 个像素的进深对应的位移量,对照片和街景执行DIBR。然后,在步 骤S12中,等待经过待机时间,在步骤S13中,判定是否进行了断开 通知。如果没有进行断开通知,则转移到步骤S6,进行与下一个照 片有关的处理。如果步骤S13为“是”,则退出步骤S5-步骤S6的 循环。

图21是示出照片和街景的特征点提取顺序的流程图。

首先,取得对象的立体照片并进行解析(步骤S21)。取得与立 体照片的纬度和经度最近的立体街景视点并进行解析(步骤S22)。 对立体照片和立体街景视点的相对关系进行比较(步骤S23),判断 是在右侧进行拍摄还是在左侧进行拍摄(步骤S24)。具体而言,如 果从立体街景视点的位置针对立体照片的位置的方位中减去立体照 片文件的方位而得到的值为180度~360度之间,则能够判断为在左 侧进行拍摄,如果值为0度~180度之间,则能够判断为在右侧进行 拍摄。

在判断为在左侧进行拍摄的情况下,先对右眼图像进行解码(步 骤S25),提取特征点(步骤S26)。然后对左眼图像进行解码(步 骤S27),以左眼图像为基点进行照片深度生成(步骤S28)。

在判断为在右侧进行拍摄的情况下,先对左眼图像进行解码(步 骤S29),提取特征点(步骤S30)。然后对右眼图像进行解码(步 骤S31),以右眼图像为基点进行照片深度生成(步骤S32),确定 深度探索范围(步骤S33)。然后,从作为基点的照片中提取1个以 上的特征点(步骤S34),执行步骤S35~步骤S36的循环。该循环 是指,针对作为基点的照片中的全部特征点反复进行步骤S37-步骤 S38的处理。步骤S37判定作为对象的特征点的中心的深度是否在深 度探索范围的范围内,如果在深度探索范围的范围内,则在步骤S38 中将作为对象的特征点除外。由此,不在后级的匹配中加以利用。

图22是示出与照片和街景有关的匹配以及深度图像变换的处理 顺序的流程图。在步骤S5 1中,针对背景A和照片B,使用已知算 法提取特征点深度图像,在步骤S52中,通过最小二乘法在背景A 和照片B中搜索特征点的对。在步骤S53中,求出在将表示照片B 的平面投影到由矩形C包围的平面时使照片B变形为矩形C的单应 矩阵。在步骤S54中,进行深度图像的校正,以使得最大值与最小值 的视差较大,阻塞角的差距不会过大,收敛在安全区域内。在步骤 S55中,通过对照片B的深度图像Mf进行基于单应矩阵H的投影, 得到投影后的照片的深度Mf。

匹配的结果,导出在匹配中利用的特征点、以及表示立体照片与 立体街景视点的立体关系的变换矩阵。

如上所述,根据本实施方式,通过活用进行匹配后的特征点的深 度并确定深度的映射,能够通过即使进行立体显示也没有不舒适感的 进深,再现立体街景视点文件中的全周围图像与立体照片文件中的前 景图像的合成影像。

并且,通过抑制全体的深度,能够维持没有不舒适感的进深,并 且,能够进行即使长时间视听也不会疲劳的立体视显示。进而,通过 在对深度和图像进行了投影的状态下进行DIBR处理,即使进行立体 视显示,立体感也不会过强,能够鉴赏立体照片。

(实施方式2)

本实施方式公开了利用什么样的硬件结构实现此前的实施方式 所述的影像提供装置。

首先,对与CG处理部有关的硬件结构进行说明。图23示出CG 处理部的硬件结构。如本图所示,影像提供装置由接口201、视频解 码器电路202、纹理存储器203、代码ROM204、CPU205、工作存储 器206、GPU207、帧存储器208构成。

接口201是与内部媒体和移动媒体的驱动器之间的接口。

视频解码器202是对通过接口201读出的背景图像和深度图像进 行解码的专用电路。

纹理存储器203存储通过视频解码器电路202的解码而得到的非 压缩的背景图像。

代码ROM204存储构成此前的流程图所述的程序的代码串。

CPU205通过读出存储在代码ROM204中的代码串并进行处理, 实现此前的实施方式所述的处理。

工作存储器206在代码ROM204进行处理时被用作变量或排列 的存储场所。

GPU207是纹理映射等的图形处理用的专用处理电路。

帧存储器208是GPU207进行处理所使用的存储器。

图24是示出GPU的内部结构的图。

X级主板800实现X(Transformation、Xformation)级的处理, 具有HIP801、GED802、显示列表超高速缓存803、SIMD芯片804a、 804b、804c、804d。X(Transformation)级的处理大致而言有二个。 一个是将三维的各顶点数据(x、y、z)变换为二维的幕坐标的处理, 第二个是关于各顶点、根据光源和材质信息计算明亮度(颜色)的照 光(lighting)计算处理。将这两个(Transformation and Lighting)处 理统称为T&L处理或TnL处理。

HIP(Host Interface Processor)801是对输入的OpenGLAPI呼叫 进行解释并转换为适合于运算处理的形式的ASIC(Application  Specific Integrated Circuit)。

GED(Geometry Element Distributor)802发挥将各顶点数据分配 给4个初级SIMD芯片中的处于等待处理状态的SIMD芯片的作用。

显示列表超高速缓存803是存储将OpenGLAPI呼叫分组后的显 示列表的超高速缓冲存储器。如果将经常使用的一连串的 OpenGLAPI呼叫设置在显示列表中,则能够大幅削减从CPU转送到 X级主板的数据量。

SIMD芯片804a、804b、804c、804d是由ASIC实现的单芯片处 理器,具有3个系统的FPU(浮动小数点运算单元),具有微代码存 储用的超高速缓存和数据超高速缓存。在一个FPU中包括二个运算 器。一个是通常的浮动小数点ALU(Arithmetic Logic Unit),另一 个是浮动小数点乘法器。在本主板中搭载了4个该SIMD芯片。FPU 的12个系统并行进行动作,所以,能够同时并行进行12个顶点数据 (x、y、z)的处理。

SIMD芯片中的处理内容(坐标变换或照光计算的算法)通过微 代码描述。运算电路根据存储在芯片上的超高速缓存中的微代码进行 动作。微代码在系统起动时被载入超高速缓存中。SIMD芯片中的运 算结果被集中到FIFO(First-In First-Out)存储器中,作为X级主板 全体的输出而被转送到称为Triangle Bus的总线。各顶点数据包括幕 坐标系上的坐标(x、y)和进深信息z、照光计算的结果即(r、g、b)、 透明度信息的a、法线矢量(nx、ny、nz)以及纹理坐标(s、t)。

并且,用于优化下一S级的计算效率的预处理也在本主板中进 行。作为代表性的预处理,具有背面剔除。背面剔除是如下处理:检 测在变换为窗口坐标系时朝向背面的三角形,针对这种三角形,将顶 点数据不输出到Triangle Bus。以上是X级主板的处理。

对S级主板805进行说明。S级主板805由4种ASIC芯片(TG806、 PG807、TF808、IMP809)构成。S(Scan conversion)级中的处理包 括涂满三角形内部的各像素的栅格化处理、隐藏面消除处理、模板掩 膜处理、雾化效果的处理等。

栅格化处理中的重要功能在于,在球面带中粘贴全周围图像这样 的纹理映射。在纹理映射中,代替利用插值求出明亮度(r、g、b), 根据对纹理坐标(s、t)进行插值后的结果来计算存储在纹理存储器 中的纹理图像的地址,读出适当的像素,将其明亮度(r、g、b)作 为断片的明亮度数据。

S级主板的输入是从X级主板通过Triangle Bus给出的三角形各 顶点中的断片形式的数据(幕坐标(x、y、z)、纹理坐标(s、t)、 明亮度(r、g、b)、透明度a、法线矢量(nx、ny、nz))。

TG(Texture Generator)芯片806进行三角形的涂满,输出每个 像素的纹理坐标(s、t)的插值结果,生成纹理存储器的地址,将纹 理像素(被称为纹理元素(texel))转送到TF(Texture Filter)。

在PG(Pixel Generator)芯片807中,进行栅格化处理即三角形 的涂满处理,进行每个像素的明亮度(r、g、b)等的插值。

TF(Texture Filter)芯片808对PG的输出结果即被隐蔽的明亮 度和纹理存储器的输出(纹理元素)进行合成,将每个像素的断片转 送到IMP(Image Memory Processor)。

IMP(IMage Proccer)809是实现像素处理流程的处理器,进行 雾化处理、抗锯齿处理、α测试、模板测试、深度测试、混合、屏蔽、 写入缓存选择这样的像素处理,将处理结果写入帧存储器208中。

D级主板812是进行D级处理的主板,具有XMAP813和 VOC814。

XMAP(Pixel Mapping Asic)813从Pixel Bus接受图像数据,根 据需要利用查阅表进行变换,并且,还进行光标的显示,在Video  Packet Bus中加入图像数据。各VOC按照描述了自身所承担的矩形 区域的VOF数据拾取图像,利用DA变换器变换为视频信号。

VOC(Video Output Channel)电路814具有放大图像的输出电路、 用于优化放大图像的画质的滤波电路,如果在显示处理中负荷较重, 则以较粗的分辨率动态地进行描绘,以硬件放大的方式进行显示。在 D级主板中具有最大8个输出通道,除此之外,还具有HDMI输出 编码器。

接着,说明应该利用软件对上述硬件结构的GPU指示什么样的 控制。

图25的上侧示意地示出球面模型与纹理之间的对应。该上侧示 出构成球面模型的网格,右侧示出存储纹理的纹理缓存的存储内容。 左侧的球面模型在横向被分割成W个,在各个分割部分上粘贴纹理。 在本实施方式中,设作为纹理映射对象的图形类型为三角形带,设该 三角形带的全部或一部分为纹理映射对象。该三角形带的全部或一部 分被规定为顶点网格。具体而言,由T1、T2、T3构成的网格成为纹 理映射对象,由T3、T4、T5、T6构成的网格成为1个纹理映射的对 象。将构成这些网格的交点的坐标指定为索引后,进行纹理映射。

图25的下侧是用于实现纹理映射的OPEN-GL中的API调出的 描述例。

“glVertexPointer(3、GL#FLOAT、0、g#v);”存储三维建模空 间中的网格的各交点的坐标群作为顶点群。变量的"3"是三维建模空 间的维数,GL#FOLAT表示坐标群的各个坐标的类型为浮动小数点 形式。

“glTexCoordPointer(2、GL#FLOAT、0、g#v);”是用于存储 与三维建模空间中的网格对应的纹理的坐标群g#v作为纹理坐标值 的API调出。

“for(I=0;i<W;i++)”针对横向的W个坐标分别被规定为反复 进行glDraw Elements的调出的循环构造。

对“glDrawElements(GL#TRIANGLE#STRIP、(H+1)*2、 GL#UNSIGNED#SHORT、getStaticData()->g#index[i]);”进行说 明。该API调出的第1变量指定3D模型的图形类型为三角形带 (GL#41Triangle#Stirp)。第2变量是顶点数的指定,指定(纵分割 数H+1)×2的数值。GL#UNSIGNED#SHORT表示存储顶点的index 的类型为无码的short形式。g#index[W]是决定描绘顺序的索引排列, 存储网格交点的顶点坐标作为各个排列要素。通过按照作为g#index 的排列要素而存储的顶点坐标执行描绘,进行纹理映射。

首先,对用于实现DIBR的硬件结构(SV存储器18、街景DIBR 执行部21、右眼照片存储器13a、左眼照片存储器13b、照片DIBR 执行部28的硬件结构)进行说明。

SV存储器18由多个行存储器构成,SV数据分别被存储在构成 行存储器的32比特长的存储元件中。而且,SV数据在画面上的坐标 例如对应于SV存储器中的行存储器的地址即ROW地址与行存储器 中的存储元件的相对地址即COLUMN地址的组。

以上是与SV存储器18有关的说明。接着,对街景DIBR执行部 21的硬件结构进行说明。

街景DIBR执行部21关于街景,对左眼SV和街景深度图像实施 DIBR,生成右眼街景。如上所述,街景在画面上的坐标对应于指示 街景的行存储器的ROW地址与指示该行存储器中的存储元件的 COLUMN地址的组,所以,如果针对指示街景存储器的存储元件的 COLUMN地址增减相当于与街景深度中的对应像素的进深对应的视 差的地址,则得到与相反视线有关的街景。在希望以与街景深度中的 对应像素的进深对应的视差X对街景的X坐标进行变更而生成左眼 SV的情况下,在从SV存储器18针对纹理存储器22a进行复制时, 事前以与像素数X相当的地址对指示作为其复制目的地的存储元件 的COLUMN地址进行调整。如果以这种地址调整为前提执行复制, 则左眼街景的坐标向左方向位移。由此,街景DIBR执行部21针对 左眼SV,在伴随地址调整的复制处理中执行从SV存储器18向纹理 存储器22a的复制,由此执行基于街景深度的DIBR。

在希望对街景的X坐标进行变更而生成右眼SV的情况下,在从 SV存储器18向纹理存储器22b进行复制时,事后以与像素数X相 当的地址对指示作为其复制目的地的存储元件的COLUMN地址进行 调整。如果以这种地址调整为前提执行复制,则右眼街景的坐标向右 方向位移。由此,街景DIBR执行部21针对右眼SV,在伴随地址调 整的复制处理中执行从SV存储器18向纹理存储器22b的复制,由 此执行基于街景深度的DIBR。

以上是与街景DIBR执行部21有关的说明。接着,对右眼照片 存储器13a和左眼照片存储器13b进行详细说明。

右眼照片存储器13a和左眼照片存储器13b也由多个行存储器构 成,构成照片数据的像素分别被存储在构成行存储器的32比特长的 存储元件中。而且,照片数据在画面上的坐标例如对应于视频投影中 的行存储器的地址即ROW地址和行存储器中的存储元件的相对地址 即COLUMN地址的组。以上是与右眼照片存储器13a和左眼照片存 储器13b有关的说明。关于照片DIBR执行部28,如果进行同样的 带地址调整的复制,则能够执行针对照片的DIBR。

接着,说明如何利用硬件决定街景DIBR执行部21和照片DIBR 执行部28进行位移时的位移量。作为代表,对街景DIBR执行部21 进行说明。街景DIBR执行部21从SV存储器18中取出由横512× 纵512的像素构成的图像数据,并且,从SV深度存储器20中取出 由横512×纵512的像素构成的深度图像,基于该横512×纵512的深 度图像对横512×纵512的像素的集合执行DIBR。叙述在执行像素位 移时对各像素设定什么样的视差。在存在于深度图像的坐标(x、y) 的像素中,在从视点起的进深为Depth(x、y)的情况下,例如,能 够根据以下的数学式从深度图像中存在于坐标(x、y)的亮度Y(x、 y)变换为进深Depth(x、y)。

(数学式)

Y(x、y)=255-(log(Depth(x、y)+1)×100)

通过将这样求出的进深Depth(x、y)变换为与显示器的画面尺 寸对应的像素数offset(x、y),能够将像素的亮度变换为适当的视 差。

在DIBR中,在使构成图像的多个像素中的位于任意坐标(x、y) 的像素的坐标沿水平方向移动时,根据由在对应的深度图像中存在于 坐标(x、y)的像素的亮度Y(x、y)导出的进深Depth(x、y), 求出该坐标(x、y)固有的offset(Depth(x、y)、y),使用该offset (Depth(x、y)、y)作为移动量,由此得到其他视点的视点图像。 图26(a)示出在深度图像中存在于坐标(x、y)的像素的进深Depth (x、y)。Depth(x、y)在位置上与图26(b)中的Pix(x、y)对 应。图26(b)示出在图像存储器中存在于坐标(x、y)的像素Pix (x、y)。图26(c)示出在生成左眼纹理时像素Pix(x、y)如何 位移。在图26(c)中,在SV图像存储器18中,Pix(x、y)沿水 平方向以Offset(Depth(x、y))进行变位。因此,位于Pix(x+Offset (Depth(x、y))、y)。在全周围图像中,Offset(Depth(x、y)) 在x、y坐标中是唯一的偏移,根据基于深度图像中的对应像素的亮 度的Depth(x、y)来设定。

在生成2个以上的视点图像时,像素沿水平方向如何变位是根据 图像的每个像素而不同的。深度图像中的像素的亮度电平与位移量即 像素数之间的对应能够根据上述数学式导出。作为该对应的一例,可 以如图26(c)那样设定。

图26(c)示出Y(x、y)中的0~255的亮度范围与1像素~16 像素的单位偏移之间的对应。在本图中,对0~63的亮度范围分配0~ 2像素的范围的偏移,对64~127的亮度范围分配3~4像素的范围 的偏移,对128~191的亮度范围分配5~8像素的偏移,对192~255 的亮度分配9~16像素的偏移。即,进行如下的非线性的对应:增大 应该对明亮部分的亮度范围分配的视差,减小应该对昏暗部分的亮度 范围分配的视差。

图27示出通过像素电平的位移而在左眼纹理和右眼纹理中具有 什么样的视差。图27(a)示出深度图像,图27(b)示出左眼纹理 存储器的存储内容,图27(c)示出右眼纹理存储器的存储内容。

Pix(x1、y)是图27(b)中并列的3个大厦中的最靠前的大厦 的像素。Pix(x2、y)是3个大厦中的第2个大厦的像素。Pix(x3、 y)是3个大厦中的第3个大厦的像素。

图27(a)是深度图像的一例,示出对左眼纹理中的像素Pix(x1、 y)、Pix(x2、y)、Pix(x3、y)赋予的进深。Depth(x1、y)表示 左眼纹理中的Pix(x1、y)的进深。Depth(x2、y)表示左眼纹理中 的Pix(x2、y)的进深。Depth(x3、y)表示左眼纹理中的Pix(x3、 y)的进深。

图27(c)的下侧示出在DIBR中对各像素赋予的偏移。Offset (Depth(x1、y)、y)表示对左眼纹理中的Pix(x1、y)赋予的偏 移。Offset(Depth(x2、y)、y)表示对左眼纹理中的Pix(x2、y) 赋予的偏移,Offset(Depth(x3、y)、y)表示对左眼纹理中的Pix (x3、y)赋予的偏移。如本图所示,由于具有Depth(x1、y)>Depth (x2、y)>Depth(x3、y)的关系,所以,对构成最靠前的大厦的像 素赋予最大的视差,从画面中大幅突现。

如上所述,在DIBR中,像素的变位量根据深度图像中的对应像 素的亮度而不同,所以,如果使用算术运算器而根据深度图像中的各 像素的亮度计算偏移,则能够通过硬件元件安装街景DIBR执行部 21和照片DIBR执行部28。

<备注>

以上,对申请人在本申请的申请时点得知的最佳实施方式进行了 说明,但是,关于以下所示的技术话题,能够进行进一步的改良或变 更实施。希望注意到,如各实施方式所示那样实施、或者是否实施这 些改良/变更均为任意的,基于实施者的主观。

(视点周围图像的范围增减)

在各实施方式中,将横向结合了横7张背景图像而得到的全周围 图像作为对象进行了说明,但是,通过减少横向图像的结合数,也可 以变更从视点张望的街景的范围。上述实施方式的全周围图像在横7 张背景图像中网罗了360°的视野,所以,一张背景图像中网罗的范 围为52°(≈365°/7)。由此,在结合了2张图像的情况下,能够张 望104°(≈52°×2)的范围,在结合了3张图像的情况下,能够张望 156°(≈52×3)的范围。这样,通过在街景收集服务器或影像提供装 置中改变横向图像的结合数,能够改变视点周围图像的规模,能够减 轻纹理映射处理或纹理中的视差计算等的负荷。

(基于行扫描电路的实现性)

并且,能够利用行扫描电路实现DIBR。行扫描电路是如下的硬 件元件:按照横1920像素的每一个像素读出存储在帧存储器中的一 个画面的像素(1920×1080)的集合,将其变换为数字影像信号。该 行扫描电路可以通过能够存储1行的像素数据的行像素存储器、滤波 电路、进行并行/串行变换的变换电路而实现。如上所述,DIBR是将 深度图像的各个像素的亮度变换为视差并进行像素位移的处理。如果 使从行存储器中读出的全周围图像的一行的像素的坐标沿横向移动 与针对全周围图像的深度图像中的对应行的进深对应的像素数,则能 够生成具有深度图像中的各个像素所示的进深的其他视点的视点图 像。

(深度图像的变化)

压缩墨卡托深度图像803是以PNG形式对表示相对于墨卡托图 像的进深的图像进行压缩后的数据,但是,进深的压缩噪声明显,所 以,优选以PNG形式等的无损形式进行压缩。另外,立体街景视点 801中的压缩墨卡托深度图像803的数据冗长,所以,除了PNG形 式的压缩以外,也可以具有周围的地形数据、以及表示压缩墨卡托图 像802与地形数据之间的关系的数据。另外,在利用因特网收发立体 街景视点801的情况下,当压缩墨卡托图像被分割成多个文件时,在 下载中途的状态下,除了能够进行显示以外,还能够并行进行SV解 码器218和SV特征点提取器的处理,全体能够高速进行处理。

(集成电路的实施方式)

排除第1实施方式所示的再现装置的硬件结构中的记录介质的驱 动部、与外部连接的连接器等的机构部分,可以对与逻辑电路和存储 元件相当的部分、即逻辑电路的核心部分进行系统LSI化。系统LSI 是指在高密度基板上安装裸芯片并进行封装。通过将多个裸芯片安装 在高密度基板上并进行封装,将使多个裸芯片恰好具有1个LSI的外 形构造的模块称为多芯片模块,但是,这种模块也包含在系统LSI 中。

这里,着眼于封装的类别时,系统LSI具有QFP(四方扁平阵列)、 PGA(针网格阵列)这样的类别。QFP是在封装的四个侧面安装有针 的系统LSI。PGA是在底面全体安装有多个针的系统LSI。

这些针发挥电源供给、地线、作为与其他电路之间的接口的作用。 系统LSI中的针具有这样的接口的作用,所以,通过在系统LSI中的 这些针上连接其他电路,系统LSI发挥作为再现装置的核心的作用。

(对左眼图像和右眼图像中的任意一方进行处理的技术意义)

另外,在立体照片的DIBR中,通过将立体照片放置在近前,能 够衬托立体照片,能够实现更加易于观看的随后体验。

另外,本实施方式对立体照片进行了说明,但是,同样能够适用 于动态图像。在动态图像的情况下,将动态图像的一帧视为静态图像 进行处理即可。

(基于数学式的运算的具体化)

在此前的实施方式中,公开了基于数学式的运算处理,但是,这 些数学式不意味着数学概念,而彻底意味着在计算机上执行的数值运 算,所以,当然可以施加用于使计算机实现该运算所需要的改变。例 如,当然可以施加用于以整数型、固定小数点型、浮动小数点型对数 值进行处理的饱和运算或正值化运算。进而,各实施方式所示的基于 数学式的运算处理中的与常数之间的乘法可以通过使用常数ROM的 ROM乘法器而实现。预先计算被乘数与常数之积的值并存储在常数 ROM中。例如,在被乘数为16比特长的情况下,按照每4比特将该 被乘数划分成4个,该4比特部分与常数之积、即常数的0~15的倍 数被存储在上述常数ROM中。上述一个区间的4比特与常数16比 特之积为20比特长,上述四个常数被存储在同一地址中,所以, 20×4=80比特长成为一个单词的比特长。如上所述,能够通过ROM 乘法器实现,所以,本说明书中所说的“运算处理”不仅意味着纯粹 的算术运算,还包括根据被运算符的值读出存储在ROM等记录介质 中的运算结果这样的记录介质的读出。

(程序的实施方式)

各实施方式所示的程序可以如下生成。首先,软件开发者使用程 序设计语言描述用于实现各流程图和功能性的结构要素的源程序。在 该描述时,软件开发者按照程序设计语言的语法,使用等级构造体、 变量、排列变量、外部函数的呼叫,描述具体实现各流程图和功能性 的结构要素的源程序。

所描述的源程序作为文件提供给编译程序。编译程序翻译这些源 程序而生成目标程序。

基于编译程序的翻译由语法解析、优化、资源分配、代码生成这 样的过程构成。在语法解析中,进行源程序的字句解析、语法解析和 意思解析,将源程序变换为中间程序。在优化中,针对中间程序进行 基本模块化、控制流程解析、数据流程解析这样的作业。在资源分配 中,为了使目标处理器适合于命令组,将中间程序中的变量分配给目 标处理器所具有的寄存器或存储器。在代码生成中,将中间程序内的 各中间命令变换为程序代码,得到目标程序。

这里生成的目标程序由使计算机执行各实施方式所示的流程图 的各步骤、功能性的结构要素的各个顺序的1个以上的程序代码构 成。这里,程序代码如处理器的本地码、JAVA(TM)字节码那样具 有多个种类。基于程序代码的各步骤的实现具有多个种类。在能够利 用外部函数实现各步骤的情况下,呼叫该外部函数的呼叫文成为程序 代码。并且,实现1个步骤的程序代码有时也归属于不同的目标程序。 在命令种类受限的RISC处理器中,也可以通过组合算术运算命令、 逻辑运算命令、分支命令等,实现流程图的各步骤。

生成目标程序后,程序员针对这些目标程序起动连接程序。连接 程序对存储器空间分配这些目标程序和关联的库存程序,将它们结合 成一个程序,生成载入模块。这样生成的载入模块以基于计算机的读 取为前提,使计算机执行各流程图所示的处理顺序和功能性的结构要 素的处理顺序。将该计算机程序记录在非临时的计算机可读取的记录 介质中提供给用户即可。

(立体视再现的变化)

在立体视再现时,根据一张全周围图像生成左眼纹理和右眼纹 理,但是,也可以将该全周围图像用作左眼纹理而仅生成右眼纹理。 同样,也可以将全周围图像用作左眼纹理而仅生成右眼纹理。该情况 下,与立体视再现时的照相机位置相比,将隔开2×p的位置作为右眼 照相机的配置位置,在该配置位置配置照相机,由此执行上述坐标变 换、纹理映射、窗口变换即可。

产业上的可利用性

本发明的影像提供装置能够在制造产业中以经营性质持续和反 复制造、销售。特别地,能够在与照片内容的制作和再现有关的民生 设备产业中加以利用。

标号说明

1a:网络接口;1b:输入接口;1c:内部媒体;2:文件系统;3: UO模块;4:控制部;5:描绘部。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号