首页> 中国专利> 图像文件生成装置、图像处理装置、图像文件生成方法、图像处理方法以及图像文件的数据结构

图像文件生成装置、图像处理装置、图像文件生成方法、图像处理方法以及图像文件的数据结构

摘要

使一个图像的分辨率不同的图像数据按分辨率顺序排列后的阶层数据成为由首部(150)、索引块(160)、平铺图像(170)这三个数据构成的结构。首部(150)是定义将生成阶层数据的虚拟空间中的锥状的阶层结构体分割而成的多个区域,并对各区域分别设定有指向某个索引块(160)的指针的数据。索引块(160)是按首部(150)定义的结构体的各区域分别生成,并对属于各区域的多个阶层的图像上的位置设定指向某个平铺图像(170)的指针的数据。平铺图像(170)是实际描绘图像时所用的图像数据。

著录项

  • 公开/公告号CN102667864A

    专利类型发明专利

  • 公开/公告日2012-09-12

    原文格式PDF

  • 申请/专利权人 索尼计算机娱乐公司;

    申请/专利号CN201080045762.3

  • 发明设计人 稻田彻悟;

    申请日2010-07-29

  • 分类号G06T11/00(20060101);G09G5/39(20060101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人黄小临

  • 地址 日本东京都

  • 入库时间 2023-12-18 06:28:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-06-03

    授权

    授权

  • 2012-11-07

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

    实质审查的生效

  • 2012-09-12

    公开

    公开

说明书

技术领域

本发明涉及使显示器上显示的图像放大或缩小、或者上下左右移动的图 像处理技术。

背景技术

目前已提案有不仅能执行游戏程序,还能再现动图像的家庭用娱乐系统。 在该家庭用娱乐系统中,GPU生成使用了多边形的三维图像(例如参照专利 文献1)。

不论图像显示的目的如何,怎样高效地显示图像总会成为重要的问题。 特别是为高速地描绘出高精细的图像,需要进行各种各样的加工,例如已提 案有另外保持纹理数据来高效地进行映射的方法(例如参照非专利文献1和 2)。

〔在先技术文献〕

〔专利文献〕

〔专利文献1〕美国专利第6563999号公报

〔非专利文献〕

〔非专利文献1〕Sylvain Fefebvre,et.al.,Unified Texture Managementfor  Arbitrary Meshes,Repport de recherche,N5210,May 2004,Institut National De  Recherche En Informatique Et En Automatique

〔非专利文献2〕Martin Kraus,et.al.,Adaptive Texture Maps,Graphics  Hardware(2002),pp 1-10,The Eurographics Association

 发明内容

〔发明所要解决的课题〕

为了响应性良好地显示图像,即使图像高精细化也能将数据尺寸抑制得 较小、高速地进行描绘总是一个重要的课题。另外,还存在以下问题:在需 要修正图像的一部分等情况下,即使适用了上述的纹理映射等对数据结构进 行加工的技术,也需要对已构建出的数据结构全部重新更新等,更新处理容 易变得繁杂。

本发明是鉴于这样的课题而设计的,其目的在于提供一种即使是尺寸较 大的图像,也能抑制数据尺寸,并高效地进行生成、显示、修正的图像处理 技术。

〔用于解决课题的手段〕

本发明的一个方案是一种图像文件生成装置。该图像文件生成装置包括: 图像阶层生成部,根据被输入的图像数据生成不同分辨率的多个图像数据, 并生成按分辨率顺序阶层化而构成的阶层数据;图像分割部,将构成阶层数 据的各阶层的图像数据分割成预定尺寸的平铺图像;索引生成部,生成使将 构成阶层数据的各阶层的图像分割成平铺图像时的各平铺区域与描绘该区域 时所使用的平铺图像的数据建立对应关系的索引数据;以及图像文件生成部, 生成包含平铺图像的数据和索引数据的图像文件。其中,索引生成部以索引 块的形式来生成索引数据,所述索引块针对在由阶层数据的图像平面和与之 垂直的分辨率轴定义的虚拟空间中分割阶层数据所构成的阶层结构体而成的 各个区域,分别汇总了各平铺区域的索引数据。

本发明的另一方案是一种图像处理装置。该图像处理装置的特征在于, 包括:保持图像文件的存储装置,所述图像文件包含将以不同分辨率表现一 个图像的图像数据所构成的阶层数据的各个图像分割成预定尺寸而成的平铺 图像的数据,和使构成阶层数据的各阶层的图像分割成平铺图像时的各平铺 区域与描绘该区域时所使用的平铺图像的数据建立对应关系的索引数据;输 入信息取得部,从用户接收包括图像平面上的移动和分辨率的变更的显示区 域变更要求;平铺图像确定部,通过参照索引数据来确定根据显示区域变更 要求而描绘应新显示的区域时所需要的平铺图像的数据;以及显示图像处理 部,从存储装置读出所确定的平铺图像的数据,描绘应新显示的区域。其中, 索引数据具有索引块的形式,所述索引块针对在由阶层数据的图像平面和与 之垂直的分辨率轴定义的虚拟空间中分割阶层数据所构成的阶层结构体而成 的各个区域,分别汇总了各个平铺区域的索引数据。

本发明的另一方案是一种图像处理装置。该图像处理装置的特征在于, 包括:读取图像文件的图像文件取得部,该图像文件包含将以不同分辨率表 现一个图像的图像数据所构成的阶层数据的各个图像分割成预定尺寸而成的 平铺图像的数据,和使构成阶层数据的各阶层的图像分割成平铺图像时的各 平铺区域与描绘该区域时所使用的平铺图像的数据建立对应关系的索引数 据;更新信息取得部,取得使用图像文件而显示的图像的更新信息;平铺图 像生成部,基于更新信息生成在描绘更新对象区域时所使用的新的平铺图像 的数据;索引数据更新部,将在索引数据中与更新对象区域所包含的平铺区 域相对应的平铺图像的数据更新为新的平铺图像的数据;以及图像文件生成 部,生成包含平铺图像生成部所生成的平铺图像的数据和索引数据更新部更 新了的索引数据的新的图像文件。其中,索引数据具有索引块的形式,所述 索引块针对在由阶层数据的图像平面和与之垂直的分辨率轴定义的虚拟空间 中分割阶层数据所构成的阶层结构体而成的各个区域,分别汇总了各个平铺 区域的索引数据。

本发明的再一个方案是一种图像文件生成方法。该图像文件生成方法的 特征在于,包括如下步骤:根据被输入的图像数据生成不同分辨率的多个图 像数据,并生成按分辨率顺序阶层化而构成的阶层数据,存储到存储器中; 从存储器读出构成阶层数据的各阶层的图像数据并将之分割成预定尺寸的平 铺图像;生成使将构成阶层数据的各阶层的图像分割成平铺图像时的各平铺 区域与描绘该区域时所使用的平铺图像的数据建立对应关系的索引数据,并 存储到存储器中;生成包含平铺图像的数据和索引数据的图像文件,并存储 到存储器中。其中,在生成索引数据的步骤中,针对在由阶层数据的图像平 面和与之垂直的分辨率轴定义的虚拟空间中分割阶层数据所构成的阶层结构 体而成的各个区域,分别以汇总了各平铺区域的索引数据的索引块的形式来 生成索引数据。

本发明再一个方案是一种图像处理方法。该图像处理方法的特征在于, 包括以下步骤:从存储器中读出图像文件,所述图像文件包含将以不同分辨 率表现一个图像的图像数据所构成的阶层数据的各个图像分割成预定尺寸而 成的平铺图像的数据,和使构成阶层数据的各阶层的图像分割成平铺图像时 的各平铺区域与描绘该区域时所使用的平铺图像的数据建立对应关系的索引 数据;从用户接收包括图像平面上的移动和分辨率的变更的显示区域变更要 求;通过参照索引数据来确定根据显示区域变更要求而描绘应新显示的区域 时所需要的平铺图像的数据;从存储器读出所确定的平铺图像的数据,描绘 应新显示的区域,使之显示到显示装置上。其中,索引数据具有索引块的形 式,所述索引块针对在由阶层数据的图像平面和与之垂直的分辨率轴定义的 虚拟空间中分割阶层数据所构成的阶层结构体而成的各个区域,分别汇总了 各个平铺区域的索引数据。

本发明的再一个方案是一种图像处理方法。该图像处理方法的特征在于, 包括以下步骤:从存储器读出图像文件,该图像文件包含将以不同分辨率表 现一个图像的图像数据所构成的阶层数据的各个图像分割成预定尺寸而成的 平铺图像的数据,和使构成阶层数据的各阶层的图像分割成平铺图像时的各 平铺区域与描绘该区域时所使用的平铺图像的数据建立对应关系的索引数 据;取得使用图像文件而显示的图像的更新信息;基于更新信息生成在描绘 更新对象区域时所使用的新的平铺图像的数据,并存储到存储器中;将在索 引数据中与更新对象区域所包含的平铺区域相对应的平铺图像的数据更新为 新的平铺图像的数据;生成包含新生成的平铺图像的数据和更新了的索引数 据的新的图像文件,并存储到存储器中。其中,索引数据具有索引块的形式, 所述索引块针对在由阶层数据的图像平面和与之垂直的分辨率轴定义的虚拟 空间中分割阶层数据所构成的阶层结构体而成的各个区域,分别汇总了各个 平铺区域的索引数据。

本发明的再一个方案是一种图像文件的数据结构。该数据结构是一种为 将图像的至少一部分显示在显示器上而从存储装置读出的图像文件的数据结 构,其特征在于,使平铺图像的数据与索引数据建立对应,其中,所述平铺 图像是将以不同分辨率表现一个图像的图像数据分割成预定尺寸而成的图 像,所述索引数据是使将图像数据按分辨率顺序阶层化后的阶层数据中的各 阶层的图像分割成平铺图像时的各平铺区域与描绘该区域时所使用的平铺图 像的数据建立对应的数据;索引数据具有索引块的形式,所述索引块针对在 由阶层数据的图像平面和与之垂直的分辨率轴定义的虚拟空间中分割阶层数 据所构成的阶层结构体而成的各个区域,分别汇总了各个平铺区域的索引数 据。

本发明的再一个方案是一种图像处理装置。该图像处理装置的特征在于, 包括:图像处理要求部,发出包含用于描绘因执行程序而应新显示的图像的 信息的图像处理要求;阶层数据存储部,存储使保持描绘对象图像的各像素 的色彩信息的彩色值像素平面和保持各像素的相对于视点的深度信息的Z值 像素平面与描绘对象图像的多个分辨率相对应地阶层化了的阶层彩色缓存区 和阶层Z缓存区;以及图像处理部,接收图像处理要求而执行图像处理,更 新阶层彩色缓存区和阶层Z缓存区。其中,图像处理部包括:描绘用彩色缓 存区和描绘用Z缓存区,分别记录从阶层彩色缓存区和阶层Z缓存区读出的 描绘对象的阶层和区域的数据;描绘部,基于图像处理要求来确定描绘对象 的阶层和区域后,将数据读出到描绘用彩色缓存区和描绘用Z缓存区,并基 于图像处理要求来进行图像处理运算,更新数据;以及阶层数据更新部,针 对被更新了的描绘用彩色缓存区和描绘用Z缓存区的数据,与多个分辨率相 对应地施加缩放处理,并更新阶层彩色缓存区和阶层Z缓存区的各阶层的数 据。

本发明的再一个方案是一种图像处理方法。该图像处理方法的特征在于, 包括以下步骤:发出包含用于描绘因执行程序而应新显示的图像的信息的图 像处理要求;在存储器中存储使保持描绘对象图像的各像素的色彩信息的彩 色值像素平面和保持各像素的相对于视点的深度信息的Z值像素平面与描绘 对象图像的多个分辨率相对应地阶层化了的阶层彩色缓存区和阶层Z缓存 区;接收图像处理要求而执行图像处理,更新阶层彩色缓存区和阶层Z缓存 区。其中,更新阶层彩色缓存区和阶层Z缓存区的步骤包括:基于图像处理 要求来确定描绘对象的阶层和区域,从阶层彩色缓存区和阶层Z缓存区分别 读出数据后,写入到描绘用彩色缓存区和描绘用Z缓存区的步骤;基于图像 处理要求来进行图像处理运算,更新描绘用彩色缓存区和描绘用Z缓存区的 数据的步骤;以及针对被更新了的描绘用彩色缓存区和描绘用Z缓存区的数 据,与多个分辨率相对应地施加缩放处理,并更新阶层彩色缓存区和阶层Z 缓存区的各阶层的数据的步骤。

当然,将以上构成要素的任意组合、本发明的表现形式在方法、装置、 系统、计算机程序等之间变换后的方案,作为本发明的实施方式也是有效的。

〔发明效果〕

通过本发明,能够提供一种能在较宽范围的分辨率下高效地构建用于显 示图像的图像数据的图像处理装置。

附图说明

图1是表示实施方式1的信息处理系统的使用环境的图。

图2是表示能适用于图1的图像处理系统的输入装置的外观构成的图。

图3是在实施方式1中使用的图像数据的阶层结构的概念图。

图4是表示实施方式1中的信息处理装置的构成的图。

图5是示意性地表示实施方式1中的图像数据的流向的图。

图6是用于说明实施方式1中的图像数据的预读处理的图。

图7是详细表示在实施方式1中具有显示阶层数据的功能的控制部的构 成的图。

图8是示意地表示实施方式1中使用的阶层数据的数据结构的图。

图9是表示在实施方式1中具有生成显示对象的图像文件的功能的控制 部的构成的图。

图10是说明在实施方式1中图像具有冗余性时的原图像与平铺(tile) 图像的关系的图。

图11是说明在实施方式1中图像具有冗余性时的原图像与平铺图像的关 系的另一例的图。

图12是说明在实施方式1中通过首部来定义基于冗余性的平铺图像的共 用的方法的图。

图13是说明在实施方式1中通过索引块来定义基于冗余性的平铺图像的 共用的方法的图。

图14是表示图9所示的控制部生成图像文件的处理步骤的流程图。

图15是表示在实施方式1中控制部显示图像文件的处理步骤的流程图。

图16是表示在实施方式1中具有修正图像的功能的控制部的构成的图。

图17是表示实施方式1中的图像的修正例的图。

图18是示意性地表示图17那样的修正中的索引块的指针的变化的图。

图19是用于说明在实施方式1中对高分辨率侧追加阶层时的处理的图。

图20是说明在实施方式1中应追加的阶层所属的索引块不存在时的首部 及索引块的变化的图。

图21是用于说明在实施方式1中对既存的图像追加新的区域的处理的 图。

图22是说明在实施方式1中追加新的区域时的首部和索引块的变化的 图。

图23是说明在实施方式1中对阶层结构体的顶点侧追加阶层时,在首部 中所定义的区域的分割方法的图。

图24是表示在实施方式1的图像处理装置中用户修正、改变图像时的处 理步骤的流程图。

图25是更详细地表示实施方式2中的信息处理装置中的控制部及主存储 器的构成的图。

图26是表示在实施方式2中对阶层数据的渲染的处理步骤的流程图。

图27是表示在实施方式2中将进行缩放处理的缩尺内置于主存储器时的 装置构成的图。

图28是表示实施方式2中的GPU缓存区的寻址情况的图。

图29是表示实施方式2中的GPU缓存区的寻址情况的图。

标号说明

1信息处理系统、10信息处理装置、12显示装置、20输入装置、38平 铺图像、50硬盘驱动器、60主存储器、100控制部、102输入信息取得部、 106载入块决定部、108载入部、110平铺图像确定部、112解码部、114显 示图像处理部、120图像阶层生成部、122图像分割部、124冗余性检测部、 126首部·索引块生成部、150首部、160索引块、170平铺图像、318图像 文件取得部、320更新信息取得部、322平铺图像生成部、324首部·索引 块更新部、326显示图像控制部、328图像文件生成部、400主处理器、402 图形处理器、404渲染部、406阶层数据更新部、408GPU彩色缓存区、410GPU -Z缓存区、412脏区掩模、414彩色缓存区、416Z缓存区、418模型数据、 422缩尺、520图形处理器。

具体实施方式

实施方式1

在本实施方式中作为处理对象的图像的数据具有由将原图像多阶段地缩 小而生成的不同分辨率的图像构成的阶层结构。将各阶层的图像分割成一个 或多个平铺图像。例如分辨率最低的图像由一个平铺图像构成,分辨率最高 的原图像由数量最多的平铺图像构成。显示图像时,通过将描绘所使用的平 铺图像在显示图像达到预定的分辨率时切换为不同阶层的平铺图像,从而迅 速地进行放大显示或缩小显示。

首先,说明具有这样的阶层结构的图像的基本显示样式。图1表示能适 用本发明的实施方式的信息处理系统1的使用环境。信息处理系统1具有执 行包含图像处理的应用程序的信息处理装置10、和输出信息处理装置10的 处理结果的显示装置12。显示装置12可以是具有输出图像的显示器和输出 声音的扬声器的电视。

显示装置12可以用有线缆线连接于信息处理装置10,也可以通过无线 LAN(Local Area Network:局域网)等无线连接。在信息处理系统1中,信 息处理装置10介由缆线14连接于因特网等外部网络,可以下载取得包含被 阶层化了的压缩图像数据的内容等。当然,信息处理装置10也可以通过无线 通信与外部网络连接。

信息处理装置10根据用户的要求,进行显示装置12的显示器上所显示 的图像的放大/缩小处理、向上下左右方向的移动处理等变更显示区域的处 理。用户一边看着显示器上显示的图像一边操作输入装置时,输入装置将显 示区域的变更要求信号发送给信息处理装置10。

图2表示输入装置20的外观构成。输入装置20上作为用户可操作的操 作手段,具有十字键21、模拟摇杆27a、27b、4种操作按钮26。4种操作按 钮26由○按钮22、×按钮23、□按钮24以及△按钮25构成。

在信息处理系统1中,输入装置20的操作手段被分配有用于输入显示图 像的放大/缩小要求、以及向上下左右方向的画面移动要求的功能。例如, 显示图像的放大/缩小要求的输入功能被分配给右侧的模拟摇杆27b。用户 通过向身体侧拉模拟摇杆27b,能够输入显示图像的缩小要求,通过从身体 侧向前推,能够输入显示图像的放大要求。另外,显示区域的移动要求的输 入功能被分配给十字键21。用户通过按下十字键21,能够输入向十字键21 所被按下的方向的移动要求。当然,图像变更要求的输入功能也可以被分配 给其它操作手段,例如可以对模拟摇杆27a分配画面移动要求的输入功能。

此外,为实现后述的各种功能,输入装置20还被分配使显示在图像上的 光标移动、选择文件及命令的功能。或者,输入装置20可以用指示设备、鼠 标、键盘、触摸板等一般的输入装置来实现。可以根据输入装置20的种类而 适当决定上述那样的功能的分配。

输入装置20具有将所被输入的显示区域变更要求信号等传送给信息处 理装置10的功能,在本实施方式中被构成为能与信息处理装置10进行无线 通信。输入装置20和信息处理装置10可以使用Bluetooth(蓝牙)(注册商标) 协议、IEEE802.11协议等建立无线连接。当然,输入装置20也可以介由缆线 与信息处理装置10连接,来将显示区域变更要求信号等传送给信息处理装置 10。

图3表示在本实施方式中使用的图像数据的阶层结构的概念图。图像数 据在深度(Z轴)方向上具有由第0阶层30、第1阶层32、第2阶层34及 第3阶层36构成的阶层结构。在该图中仅示出4个阶层,但阶层数不限于此。 以下,将具有这样的阶层结构的图像数据称作“阶层数据”。但该图的阶层数 据仅是概念性的表示,实际上是如后所述那样由多个数据集(data set)来表 现阶层数据的。

图3所示的阶层数据具有四叉树的阶层结构,各阶层由1个以上的平铺 图像38构成。所有平铺图像38都被形成为具有相同像素数的相同尺寸,例 如具有256×256像素。各阶层的图像数据以不同的分辨率来表现一个图像, 将具有最高分辨率的第3阶层36的原图像多阶段地缩小而生成第2阶层34、 第1阶层32、第0阶层30的图像数据。例如第N阶层的分辨率(N为0以 上的整数)可以在左右(X轴)方向、上下(Y轴)方向上都是第(N+1) 阶层的分辨率的1/2。

在信息处理装置10中,阶层数据以按预定压缩格式压缩了的状态保持在 存储装置中,在被显示于显示器前,从存储装置读出并被解码。本实施方式 的信息处理装置10具有与多种压缩格式对应的解码功能,例如能够解码S3TC 格式、JPEG格式、JPEG2000格式的压缩数据。

阶层数据的阶层结构如图3所示那样将左右方向设定为X轴、将上下方 向设定为Y轴、将深度方向设定为Z轴,构建虚拟的的三维空间。信息处理 装置10在从输入装置20所供给的显示区域变更要求信号中导出显示图像的 变更量后,使用该变更量导出虚拟空间中的帧的4个角的坐标(帧坐标)。虚 拟空间中的帧坐标被用于后述的向主存储器的压缩数据载入和显示图像的生 成处理。当然,信息处理装置10也可以取代虚拟空间中的帧坐标而是导出确 定阶层的信息和该阶层中的纹理坐标(UV坐标)。以下将阶层确定信息和纹 理坐标的组合也称作帧坐标。

图4表示了信息处理装置10的构成。信息处理装置10具有无线接口40、 开关42、显示处理部44、硬盘驱动器50、记录介质安装部52、盘驱动器54、 主存储器60、缓存存储器70、以及控制部100。显示处理部44具有对要显 示于显示装置12的显示器的数据进行缓存的帧存储器。

开关42是以太网开关(以太网是注册商标),是与外部的设备通过有线 或无线连接而收发数据的器件。开关42介由缆线14连接于外部网络,被构 成为能从服务器接收内容的数据等。此外,开关42连接于无线接口40,无 线接口40以预定的无线通信协议与输入装置20相连接。在输入装置20中用 户所输入的信号经由无线接口40、开关42而被提供给控制部100。

硬盘驱动器50作为存储数据的存储装置而发挥功能。介由开关42所收 到的阶层数据被存储在硬盘驱动器50中。记录介质安装部52在被安装存储 卡等可插拔记录介质后,从可插拔记录介质中读取数据。盘驱动器54在被安 装只读的ROM盘后,驱动并识别ROM盘,读取数据。ROM盘可以是光盘 或光磁盘等。阶层数据可以被记录在这些记录介质中。

控制部100具有多核CPU,在一个CPU中具有一个通用处理器核和多 个单处理器核。通用处理器核被称作PPU(PowerPC Processor Unit),其它处 理器核被称作SPU(Synergistic Processor Unit)。

控制部100具有与主存储器60及缓存存储器70连接的存储器控制器。 PPU具有寄存器,并具有主处理器作为运算执行主体,将作为要执行的应用 中的基本处理单位的任务高效地分配给各SPU。当然,PPU自身也可以执行 任务。SPU具有寄存器,并具有作为运算执行主体的子处理器和作为本地存 储区域的本地存储器。本地存储器可以作为缓存存储器70来使用。

主存储器60和缓存存储器70是存储装置,用RAM(随机存取存储器) 来构成。SPU具有专用的DMA(Direct Memory Access:直接内存存取)控 制器作为控制单元,能在主存储器60与缓存存储器70之间进行高速的数据 传输,还能在显示处理部44中的帧存储器与缓存存储器70之间实现高速的 数据传输。本实施方式的控制部100通过使多个SPU并行工作,来实现高速 的图像处理功能。显示处理部44连接于显示装置12,输出与用户的要求相 应的图像处理结果。

本实施方式的信息处理装置10为在进行显示图像的放大/缩小处理及 显示区域的移动处理时平滑地变更显示图像,而将压缩图像数据的一部分预 先从硬盘驱动器50载入到主存储器60中。并且,还预先将已载入主存储器 60的压缩图像数据的一部分解码而存储到缓存存储器70中。由此,能够在 以后需要的时刻瞬时切换显示图像的生成所要使用的图像。

图5示意性地表示了本实施方式中的图像数据的流向。首先,阶层数据 被存储在硬盘驱动器50中。也可以取代硬盘驱动器50而由被安装在记录介 质安装部52或盘驱动器54中的记录介质来保持。或者也可以是信息处理装 置10从介由网络连接的图像服务器下载阶层数据。这里的阶层数据如上所述 被进行了基于S3TC格式等的固定长度压缩、或者基于JPEG格式等的可变长 度压缩。

将该阶层数据中的一部分图像数据保持压缩状态地载入到主存储器60 中(S10)。这里,所载入的区域是基于当前的显示图像的在虚拟空间中的附 近位置、图像的内容、用户的阅览履历等而被预测为被高频率要求显示的区 域等根据预定的规则决定的。载入并不仅在被要求图像变更时进行,而是例 如以预定的时间间隔随时进行。由此,能够使载入处理不集中于一个时段。

接下来,对主存储器60所存储的压缩图像数据中的、进行显示所需要的 区域的平铺图像或者被预测为需要的区域的平铺图像的数据进行解码,并存 储到缓存存储器70中(S12)。缓存存储器70包括至少两个缓存区区域72、 74。各缓存区区域72、74的尺寸被设定得比帧存储器90的尺寸大,使得在 被从输入装置20输入了显示区域变更要求信号时,对于某程度量的变更要 求,能用已展开在缓存区区域72、74中的图像数据来生成显示图像。

缓存区区域72、74的一者是用于保持显示图像的生成所使用的图像的显 示用缓存区,另一者是用于准备被预测为以后需要的图像的解码用缓存区。 在图5的例子中,是按缓存区区域72为显示用缓存区、缓存区区域74为解 码用缓存区来显示显示区域68的。通过后述的预读处理而存储在解码用缓存 区中的图像可以是与显示用缓存区中所存储的图像同一阶层的图像,也可以 是缩尺不同的其它阶层的图像。

然后,将作为显示用缓存区的缓存区区域72中所存储的图像中的显示区 域68的图像描绘在帧存储器90中(S14)。在此期间,新的区域的图像根据 需要而被解码并存储在缓存区区域74中。根据存储完成的时刻及显示区域 68的变更量等,切换显示用缓存区和解码用缓存区(S16)。由此,能够针对 显示区域的移动或缩尺率的变更等而平滑地切换显示图像。

图6是用于说明预读处理的图。图6表示了阶层数据的结构,各阶层被 表现为L0(第0阶层)、L1(第1阶层)、L2(第2阶层)、L3(第3阶层)。 在图6所示的阶层数据结构中,深度(Z轴)方向上的位置表示分辨率,越 靠近L0的位置,分辨率就越低,越靠近L3的位置,分辨率就越高。当然, 若关注显示在显示器上的图像的大小,则深度方向上的位置对应于缩尺率, 若将L3的显示图像的缩尺率记为1,则L2的缩尺率为1/4,L1的缩尺率为 1/16,L0的缩尺率为1/64。

因此,在深度方向上,显示图像在从L0侧朝L3侧方向变化时,显示图 像逐渐放大,而从L3侧朝L0侧方向变化时,显示图像逐渐缩小。箭头80 表示来自用户的显示区域变更要求信号要求了显示图像的缩小,跨过了缩尺 率1/4(L2)的情况。在信息处理装置10中,将作为平铺图像38而准备的 L1、L2的深度方向的位置设定为深度方向的预读边界,当图像变更要求信号 跨过预读边界时,开始预读处理。

在显示图像的缩尺率处于L2附近时,使用L2(第2阶层)的平铺图像 来生成显示图像。具体来说,若要显示的图像的缩尺率处于L1平铺图像与 L2平铺图像的切换边界82和L2平铺图像与L3平铺图像的切换边界84之间, 则L2平铺图像被使用。因此,如箭头80所示那样,被要求图像的缩小处理 时,L2的平铺图像从被放大了的图像变换成被缩小了的图像而显示。另一方 面,确定根据图像变更要求信号而预测的将来需要的平铺图像38,并预先进 行解码。在图6的例子中,当基于显示区域变更要求信号的要求缩尺率跨过 L2时,信息处理装置10从硬盘驱动器50或主存储器60中预读出缩小方向 上的L1的对应的平铺图像38并进行解码,写入到缓存存储器70中。

以上说明了深度方向的预读处理,但对上下左右方向的预读处理也是同 样处理。具体来说,对已展开于缓存存储器70中的图像数据预先设定预读边 界,当基于图像变更要求信号的显示位置跨过预读边界时,预读处理就开始。

图7详细表示了在本实施方式中具有显示上述阶层数据的功能的控制部 100a的构成。控制部100a包括从输入装置20取得用户所输入的信息的输入 信息取得部102、确定包含新的应显示区域的平铺图像的平铺图像确定部 110、决定新的应载入的图像数据的载入块决定部106、以及从硬盘驱动器50 载入需要的图像块的载入部108。控制部100a还包括对压缩图像数据进行解 码的解码部112、以及描绘显示图像的显示图像处理部114。

在图7中,作为进行各种各样处理的功能块而记载的各要素在硬件上可 以通过CPU(Central Processing Unit:中央处理单元)、存储器、其它LSI构 成,软件上可以通过载入到存储器中的程序等来实现。如前所述,控制部100 具有一个PPU和多个SPU,PPU和SPU可以分别单独或协同构成各功能块。 因此,本领域技术人员当理解这些功能块能够仅由硬件、仅由软件、或者由 它们的组合以各种各样的形式实现,并不限定于某一种。

输入信息取得部102取得用户对输入装置20输入的图像显示的开始/结 束、显示区域的移动、显示图像的放大缩小等指示内容。平铺图像确定部110 按照当前的显示区域的帧坐标和用户所输入的显示区域变更要求的信息,确 定包含新的应显示的区域的平铺图像。然后,若该平铺图像已被载入主存储 器60中了,则将该信息提供给解码部112,若未载入,则将该信息提供给载 入块决定部106。平铺图像确定部110也可以除描绘该时点的显示图像所需 要的图像外,还确定被预测为以后需要的平铺图像。

载入块决定部106基于来自平铺图像确定部110的信息,确定应从硬盘 驱动器50新载入主存储器60的由多个平铺图像构成的图像块,并向载入部 108发出载入要求。载入块决定部106可以在载入部108处于非载入处理中 的状态下,例如按预定的时间间隔、或者用户进行了显示区域变更要求时等, 按预定的定时进行载入要求。载入部108按照来自载入块决定部106的要求 进行实际的载入处理。

解码部112基于从平铺图像确定部110取得的平铺图像的信息,从主存 储器60中读出平铺图像的数据并解码,将解码后的数据存储到解码用缓存区 或显示用缓存区中。显示图像处理部114基于新的显示图像的帧坐标,从缓 存存储器70的显示用缓存区读出对应的图像数据,描绘到显示处理部44的 帧存储器中。

接下来,说明在具有之前所述的阶层结构的图像数据的显示技术中,更 高效地构建并输出图像数据的实施方式。图8示意性地表示了本实施方式中 的阶层数据的数据结构。在本实施方式中,使阶层数据成为由首部150、索 引块160、平铺图像170这三个数据构成的结构。首部150和索引块160用 于基于阶层数据所形成的虚拟空间内的位置来确定处理对象的平铺图像的索 引。在本实施方式中,对虚拟空间中的阶层结构进行区域分割,针对各区域 分别汇总对平铺图像数据的索引,使对平铺图像的访问更加高效。

首部150是定义将图3所示那样的虚拟空间中的锥状的阶层结构体分割 而得到的多个区域,并对各区域分别设定了指向某个索引块160的指针的数 据。在图8所示的首部150中,三角形151表示了从侧面来看阶层结构体时 的形状,水平的虚线表示了各阶层的图像154a、154b、154c、154d、154e、…。 对这样的阶层结构体如实线所示那样进行区域分割,定义区域152a、区域 152b、区域152c等区域。在首部150中,原则上对各区域设定指向某一个索 引块160的指针。

图8的例子表示了对区域152a设定有指向索引块160a的指针(箭头A)、 对区域152b设定有指向索引块160b的指针(箭头B)、对区域152c设定有 指向索引块160c的指针(箭头C)的情况。但如后所述,也可以对首部所定 义的一部分区域设定不指向确定的索引块的空指针。

索引块160是按首部150所定义的结构体的各区域分别生成,并针对属 于各区域的多个阶层的图像上的位置设定指向某个平铺图像170的指针的数 据。如图8所示,与首部150中的一个区域对应的一个索引块包含属于该区 域的多个阶层的图像的至少一部分区域的数据。在该图的例子中,与区域152a 对应的索引块160a保持属于区域152a的2阶层量的图像154a、154b整体的 数据。与区域152b对应的索引块160b保持属于区域152b的3阶层量的图像 154c、154d、154e整体的数据。

与区域152c对应的索引块160c保持属于区域152c的3阶层量的图像 154f、154g、154h的一部分区域的数据。然后,按将各阶层的图像平面分割 成平铺图像尺寸而生成的各平铺区域分别保持指向作为该平铺区域的实际的 图像数据的某个平铺图像170的指针。但如后所述,在使用多个信息进行一 个平铺区域的描绘这样的情况下,一个平铺区域也可以保持指向多个平铺图 像的指针。在该图中,各索引块160a、160b、160分别所示的3个平面与属 于对应区域的阶层相对应,各阶层上的各个小矩形分别表示平铺区域。

图8的例子表示了在索引块160b中,对平铺区域164a设定有指向平铺 图像170a的指针(箭头D),对平铺区域164b设定有指向平铺图像170b的 指针(箭头E)的情况。但如后所述,索引块所定义的平铺区域的一部分也 可以不设定指向确定的平铺图像的指针,而是设为空指针。平铺图像170是 被压缩了的平铺图像的数据。通过这样构成阶层数据,平铺图像确定部110 能够根据应显示的图像帧的虚拟空间中的帧坐标而寻出首部150、索引块 160,确定该图像帧中所包含的平铺图像170。

在图8中,索引块160a、160b、160c分别被表示为能设定由4×4、8×8、 16×16的平铺区域构成的3阶层的图像区域量的索引数据、即指向平铺图像 170的指针。这样,将一个索引块160所能定义的平铺区域数统一后,例如 在从硬盘驱动器50向主存储器60读出某个索引块160时,不论哪个索引块, 所需要的存储区域的尺寸都不变,存储区域的管理变得容易。

因此,优选以索引块160为相同尺寸的方式生成首部150中所定义的区 域。阶层数据如图3所示那样具有第0阶层为一个平铺图像的四叉树阶层结 构时,属于图8的区域152b的3阶层的图像、即第2阶层的图像154c、第3 阶层的图像154d、第4阶层的图像154e分别由4×4、8×8、16×16个平铺区 域构成。

因此,使一个索引块160所能定义的区域如上述那样成为4×4、8×8、 16×16个平铺区域构成的图像区域的情况下,能将该3阶层的图像整体的数 据原样收纳在一个索引块160b中。即,能够使阶层数据中的第2阶层的图像 154c、第3阶层的图像154d、第4阶层的图像154e的全区域分别与索引块 160b的第0阶层162d、第1阶层162e、第2阶层162f的全区域对应,设定 指向平铺图像的指针。

另一方面,首部150中的区域152a包含第0阶层和第1阶层这两阶层的 图像154a、154b,第0阶层的图像154a由一个平铺区域构成,第1阶层的图 像154b由2×2个平铺区域构成,故与一个索引块160a所能定义的区域相比, 阶层数和平铺区域数较少。在这样的情况下,使阶层数据中的第0阶层的图 像154a与索引块160a的第0阶层162a的一部分、例如与左上方的一个平铺 区域相对应,设定指向平铺图像的指针。第1阶层的图像154b也是一样,使 之与索引块160a的第1阶层162b的一部分、例如左上方的2×2个平铺图像 相对应,设定指向平铺图像的指针。此外,索引块160a中的其它平铺区域设 定空指针。

虽然首部150中的区域152c包含第5阶层、第6阶层、第7阶层这三阶 层的图像154f、154g、154h,但由于这些图像由比一个索引块160所能定义 的平铺区域数多的平铺图像构成,故通过如图8所示那样分割图像平面,来 使各阶层的一部分区域分别与索引块160c的第0阶层、第1阶层、第2阶层 相对应。对属于各索引块的多个阶层的图像进行区域分割,使之成为分辨率 不同的相同图像区域。

当然,图8所示的阶层结构体的区域分割的方式仅是一例示,可以根据 原阶层数据的结构及所期望的索引块的数据尺寸等适当决定。另外,如后所 述,也可以根据原图像的更新而使阶层数据的分割方式变化。

接下来,说明生成包含具有以上所述的数据结构的阶层数据的图像文件 的方式。该方式也能用与图1所示信息处理系统、图4所示信息处理装置10 同样的装置结构来实现。图9表示了在本实施方式中具有生成显示对象的图 像文件的功能的控制部100b的构成。当然,控制部100b也可以具有图7的 控制部100a所示的用于进行图像显示的功能,但在此省略了图示。另一方面, 也可以在发挥显示功能的信息处理装置之外另行设置具备仅拥有图9所示的 功能的控制部100b的信息处理装置10。

控制部100b包括:读出存储在硬盘驱动器50中的图像数据并进行阶层 化的图像阶层生成部120;将各阶层的图像分割成平铺图像的图像分割部 122;解析各阶层的图像,检测冗余性的冗余性检测部124;考虑冗余性地生 成首部、索引块的数据的首部·索引块生成部126;以及生成最终要输出的、 包含平铺图像、首部、索引块的图像文件的图像文件生成部128。

图像阶层生成部120从硬盘驱动器50中读出文件生成对象的图像数据。 该图像数据可以是具有某分辨率的一张图像的数据。处理对象图像数据可以 如图所示那样由用户介由输入装置20指定,也可以从已取得原图像的其它功 能块(未图示)接收要求。图像阶层生成部120进一步生成将所读出的图像 数据阶段性地缩小为预定分辨率后的图像数据,从而生成包含原图像在内的 阶层结构的图像数据。

图像分割部122将各阶层的图像分割成预定的尺寸来生成平铺图像的数 据。所生成的平铺图像存储在主存储器60中。此时,通过对各平铺图像赋予 识别编号等来进行管理,以识别其是原图像的哪个位置的图像。

冗余性检测部124通过解析各阶层的图像,来在同一阶层内、以及阶层 间检测图像的冗余性。作为同一阶层内的冗余性,例如考虑能遍及多个平铺 区域地使用相同平铺图像的数据的情况。而作为阶层间的冗余性,考虑将低 分辨率阶层的图像放大后的图像与高分辨率阶层的图像视觉差不大的情况。 这样,具有冗余性的区域即使不分别具有平铺图像的数据,也能援用某平铺 图像的数据来进行显示。通过这样处理来实现图像数据的压缩。具体方法将 在后面叙述。

首部·索引块生成部126生成上述的首部和索引块的数据。在未被检测 到冗余性的图像中,如上所述,针对首部所定义的所有区域设定指向某个索 引块的指针,进而针对索引块所定义的所有平铺区域设定指向平铺图像的指 针。另一方面,对于有冗余性的图像区域,通过对首部或索引块设定空指针 来实现平铺图像的数据共用。

图像文件生成部128读出索引块中设定的指针所指向的平铺图像的数 据,并依次链接,从而生成最终的图像数据。然后,生成包含图像数据、首 部、索引块的图像文件,作为最终的输出数据。如上所述通过检测图像的冗 余性,在多个区域的描绘中使用一个平铺图像的数据,能够高效地压缩图像 数据的尺寸。在本实施方式中,由于将分辨率不同的相同图像包含在图像数 据中,故即使是不同阶层的图像,也能通过利用相同平铺图像的数据而实现 数据的高压缩率。

图10是说明图像中存在冗余性时的原图像与平铺图像的关系的图。在该 图中,图像180a和图像180b是表示相同区域的两个阶层的图像。即图像180a 是将图像180b缩小而得到的。图像180a和图像180b上所示的格子是分割为 平铺图像时的分界线。在该图中为说明方便,对图像180a、180b的平铺区域 和平铺图像170分别赋予有识别编号。

在该图中,假定图像180a和图像180b中被描绘椭圆形和三角形的图形, 这以外的区域涂敷为单色作为背景。从这样的图像的各区域剪切出的平铺图 像170的数据与本来的图像上的排列相独立地预先保持在主存储器60等中。 这里,图像180a中的作为单色涂敷区域的平铺区域“4”与从中剪切出的平 铺图像“4”相对应。在这样的情况下,在索引块160中对平铺区域“4”设 定指向平铺图像“4”的指针。

图像180b是比图像180a分辨率高的图像,故两个图像的各平铺区域的 对应关系能够通过放大率而容易地导出。在该图中,例如图像180a的平铺区 域“4”与图像180b的平铺区域“15”、“16”、“19”、“20”相对应。因此, 如果图像180a的平铺区域“4”是单色的涂敷区域,则能够确定图像180b的 平铺区域“15”、“16”、“19”、“20”全都是涂敷区域。即对于这些区域的显 示,只要有平铺图像“4”就可以了。

同样,若通过扫描图像180a来判别将图像180a放大到图像180b的分辨 率时成为涂敷区域的区域,可知平铺区域“3”的下半区域、即图像180b的 平铺区域“17”、“18”为涂敷区域。因此,这些区域也能通过使用平铺图像 “4”来进行显示。通过像这样共用平铺图像,能够进行平铺图像的数据压缩。 进而如后所述通过使能以低分辨率的平铺图像而显示的高分辨率的图像的区 域不具有确定的指针,还能进行首部及索引块的数据压缩。

本实施方式中使用的图像数据是以多个分辨率的相同图像为处理对象 的,故通过从分辨率最小的图像起按顺序反复进行上述冗余性检测处理,对 于高分辨率的大数据量的图像也能抑制运算负荷,确定具有冗余性的区域。 当然,在上述说明中叙述了检测单色的涂敷区域,在相同涂敷区域共用平铺 图像的数据的例子,但同样的处理在大致单色的区域、仅有随机图样或重复 图样的区域等也是有效的。关于这些区域的检测,通过各区域的彩色直方图 或频率解析等从低分辨率的图像起来实施。

图11是说明有冗余性时的原图像与平铺图像的关系的另一例子的图。图 像180a和图像180b与图10所示的是一样的。在该图中图像180a的平铺区 域“2”对应于图像180b的平铺区域“7”、“8”、“11”、“12”。图像180b是 比图像180a分辨率高的图像,故这些区域的四个平铺图像一般比将从区域“2” 剪切出的平铺图像“2”简单放大后的图像包含更多的信息。

但是,在原图像为照片等焦点未对准于图像180b的区域“7”、“8”、“11”、 “12”时等,有时与将平铺图像“2”放大后的图像不存在较大差异。在这样 的情况下,同上述涂敷区域一样,在显示区域“7”、“8”、“11”、“12”时, 即使不使用从中剪切出的平铺图像而是使用平铺图像“2”来将之放大显示, 也能显示与原图像差异不大的图像。这样的冗余性能够在将低分辨率图像放 大后的图像与高分辨率的图像的差分在阈值以下时、或对高分辨率的图像频 率解析后仅包含阈值以下的频带时等进行检测。

图12是说明通过首部来定义上述那样的基于冗余性的平铺图像的共用 方法的图。对于此时首部150a所定义的阶层结构体的区域中、能够使用其它 区域所包含的阶层的图像来显示的区域,不设定指向确定的索引块的指针, 而是使之为空指针。在图12中,在首部150a的结构体中,假定网格所示的 区域被设定指向确定的索引块的指针、即有效的指针,而空白的区域设定空 指针。

在具有这样的首部150a的阶层数据中,显示图像区域156时,包含该图 像的区域成为空指针。此时,对于阶层数据的虚拟空间,沿图像缩小的方向 搜索包含相同图像区域156的缩小图像且被设定有有效指针的区域(箭头F)。 在该图中,区域152d被设定有有效指针,故取得该指针所指向的索引块160d 的数据(箭头G)。

然后,在索引块160d保持数据的阶层中的分辨率最大的第2阶层中,确 定包含图像区域156的平铺区域,并取得与之对应的指针。由于图像区域156 处于区域152d的第2阶层的图像平面上的哪个位置能够通过阶层数据中的各 阶层的缩尺率简单地计算,故上述平铺区域的确定基于此来实施。

然后,取得所取得的指针指向的平铺图像170c的数据(箭头H),使用 它来生成图像区域156的显示图像。在此若假定图像区域156具有平铺图像 的尺寸,则在描绘图像区域156时如该图所示那样将作为缩小图像的平铺图 像170c的一部分区域172放大。如上所述与图像区域156对应的区域172的 位置能够通过两者的缩尺率简单地计算出来。

这样,通过使得在首部150a中能定义空指针,就无需对首部150a定义 的全部区域都准备索引块,数据的压缩效率得到提高。当然,设定空指针的 区域也未必一定在高分辨率侧,也可以如图12所示那样对被低分辨率区域与 高分辨率区域所夹的区域152e以空白的状态设定空指针。在该情况下,在显 示区域152e所包含的图像时,将属于分辨率较低侧的区域152f的阶层的图 像放大显示,而当显示图像的分辨率増加,进入到区域152s时,参照对该区 域设定的指针所指的索引块来取得平铺图像。

通过这样处理,能够使得当显示图像超过某分辨率时,显示出与之前不 同的图像。例如提高分辨率时,能够进行针对新闻纸面的汉字出现读音标注, 或者在照片的背景中出现其它事物这样的显示上的演绎效果。当然,这样在 首部中基本上能对任意区域设定空指针,但对阶层结构体的顶点、即包含分 辨率最小的图像的区域152g却必须设定有效的指针。由此,对其它任何区域 设定空指针,都能通过追寻阶层结构体而至少到达区域152g,生成显示图像。

图13是说明通过索引块来定义上述那样的基于冗余性的平铺图像的共 用的方法的图。在此,对属于索引块160e的图像区域中、能使用相同索引块 160e所包含的其它阶层的图像来显示的区域,不设定指向确定的平铺图像的 指针,而是设为空指针。在图13中,假定在索引块160e中以网格所示的平 铺区域被设定指向确定的平铺图像的指针、即有效的指针,而对空白的区域 设定空指针。

在该图中,要显示图像区域158时,首先在首部150b中确定包含该图像 区域158的区域152h,取得对该区域152h设定的指针所指向的索引块160e (箭头I)。在索引块160e保持数据的区域中的、与图像区域158对应的第2 阶层162g的图像中的区域被设定有空指针的情况下,针对属于相同索引块 160e的阶层沿缩小方向搜索对相同图像区域158的缩小图像设定有有效指针 的阶层。

在该图的例子中,首先到达第1阶层162h的图像(箭头J),但与图像 区域158对应的区域还是被设定有空指针。因此,再继续到达分辨率低的第 0阶层162i的图像(箭头K)。在第0阶层162i的图像中,由于与图像区域 158对应的区域被设定有有效指针,故能够取得该指针所指向的平铺图像 170d的数据(箭头L),使用它来生成图像区域158的显示图像。在此,若假 定图像区域158具有平铺图像的尺寸,则描绘图像区域158时如该图所示那 样,将作为缩小图像的平铺图像170d的一部分区域174放大。同上述一样, 与图像区域158对应的区域174的位置能够通过两者的缩尺率简单计算出来。

这样,通过使得在索引块160e中能定义空指针,不用对索引块160e所 定义的全部平铺区域都定义指向平铺图像的指针,能够进行平铺图像的数据 压缩并削减索引块自身的数据量。另外,即使平铺图像被更新了,索引块内 的图像的放大缩小关系也基本不变,故无需更新所有指向平铺图像的指针, 能够将更新处理抑制到最小限。

同首部一样,在索引块中也使得在分辨率最小的第0阶层162i的图像中 对全部平铺区域设定有效的指针。通过这样处理,即使在其它任意区域设定 空指针,也能通过沿缩小方向追寻阶层而至少到达第0阶层162i的图像,能 生成显示图像。但首部所定义的区域中、包含阶层结构体的顶点、即包含分 辨率最小的阶层的区域如上所述有时原本平铺图像的数量就少,在这样的情 况下,对应的索引块的全部阶层中可以包含被设定有空指针的区域。

此外,同首部一样,在索引块中也能够针对某图像区域,对高分辨率的 第2阶层162g和低分辨率的第0阶层162i设定确定的指针,仅对其中间分 辨率的第1阶层162h设定空指针。例如在图13中显示中间的第1阶层162h 的左下方区域时,将对分辨率低的第0阶层162i的相同区域设定的指针所指 向的平铺图像放大来显示,并当显示图像的分辨率上升到使用第2阶层162g 时,使用对该第2阶层162g的相同区域设定的指针所指向的平铺图像来生成 显示图像。通过这样处理,能够同首部一样,即使是相同区域也能实现在放 大时显示出其它图像那样的形态。

像这样用索引块定义平铺图像的共用的情况下,与用首部定义索引块的 共用时相比,能够以平铺图像单位进行详细的设定。当然,在图12和图13 的例子中表示了首部或索引块的某一者被设定了空指针的情况,但双方都被 设定有空指针时,也能通过同样的处理来定义索引块和平铺图像的共用。另 外,在上述例子中,是通过对首部或索引块设定空指针来实现在不同阶层间 共用平铺图像的方式的。另一方面,在同一阶层共用平铺图像时,只要对阶 层结构体的区域中包含同一阶层的多个区域设定指向同一索引块的指针,或 者在索引块中对多个平铺区域设定指向同一平铺图像的指针即可。

接下来,说明具有生成图像文件的功能的控制部100b的动作。图14是 表示图9所示的控制部100b生成图像文件的处理步骤的流程图。首先,由用 户或其它处理模块进行了指定图像数据的输入后,图像阶层生成部120从硬 盘驱动器50读出所被指定的图像数据(S50)。然后,通过施加一般的缩小处 理来生成具有预定分辨率的图像数据,生成由多个分辨率的图像数据构成的 阶层数据(S52)。接下来,图像分割部122将各阶层的图像分割成平铺图像 并存储到主存储器60中(S54)。此时,通过将各平铺图像的图像上的位置与 表示主存储器60的存储区域的地址建立对应地记录,来用于索引块的生成。

当然,在S50中也可以读出预先记录有平铺图像的文件。此时,可以省 略S52的阶层数据生成处理和S54的图像分割处理。如果该文件中包含有各 平铺图像的地址距文件起始地址的偏置值和图像上的位置,则通过在S54中 记录在S50中读出时的该文件在主存储器60中的起始地址,能够取得各平铺 图像的地址与图像上的位置的关系。

接下来,冗余性检测部124如上述那样确认有无冗余性(S58)。具体来 说,扫描N阶层的图像,确认与N+1阶层的图像的平铺图像的大小相对应 大小的区域内是否有以单色构成的区域。向分辨率高的阶层的方向反复执行 该处理。冗余性检测部124除此之外还确认将N阶层的图像放大到N+1阶 层的图像的大小后的图像与N+1阶层的图像的差分图像,通过N+1阶层的 图像的频率解析,确认是否存在虽然是N+1阶层的图像,但却仅含有与N 阶层的图像同程度的信息的区域。确认方法可以适当采用图像处理领域中一 般所使用的方法。

然后,首部·索引块生成部126考虑冗余性地生成首部和索引块(S60)。 具体来说,针对首部所定义的各区域,在能将属于低分辨率侧的区域的图像 放大显示的情况下,对该区域设定空指针,对于其它区域,生成对应的索引 块,将指向它们的指针设定在首部中。进而在各索引块中,对于属于它的多 个阶层的图像中能将低分辨率的图像放大显示的区域,设定空指针,对这以 外的区域设定指向从该区域剪切出的平铺图像的指针。

然后,图像文件生成部128生成用于最终输出的图像文件(S62)。在此, 若冗余性检测部124在S58中没有检测到冗余性,则从主存储器60中读出在 S54中分割而生成的所有平铺图像的数据,同在S60中生成的首部和索引块 一起作为图像文件。在检测到冗余性的情况下,仅从主存储器60中读出在 S60中生成的索引块所被设定的指针指向的平铺图像的数据,同在S60中生 成的首部和索引块一起作为图像文件。

接下来,说明使用这样生成的图像文件显示图像时的动作。图15是表示 使用本实施方式中的图像文件显示图像的处理步骤的流程图。本处理步骤可 以通过图7所示的控制部100a来实现。该图的流程图主要记载了根据显示区 域变更要求而从图像文件中读出需要的数据并解码显示的处理,但来自硬盘 的载入、所需数据的预读处理、向缓存存储器的写入等基本流程同图5所示 是一样的。

首先,在显示装置12上显示有图像的一部分的状态下,用户介由输入装 置20输入显示区域的变更要求时,输入信息取得部102接收该要求(S70)。 然后平铺图像确定部110导出所要求的显示图像的变更量,基于此决定应新 显示的帧坐标(S72)。显示图像的变更量是虚拟空间中的上下左右方向的移 动量及深度方向的移动量,应显示的帧坐标可以通过之前所显示的显示区域 的帧坐标和所导出的变更量来确定。

然后,平铺图像确定部110参照首部确定帧坐标所属的区域,确认该区 域是否被设定有指向索引块的有效指针(S74)。若设定有有效指针(S74的Y), 则取得该指针所指的索引块(S78)。若设定有空指针(S74的N),则针对阶 层结构体沿图像缩小方向搜索被设定有有效指针的区域,取得对检测出的区 域所设定的指针指向的索引块(S76、S78)。

进而在索引块中确认针对与帧坐标对应的区域是否设定有指向平铺图像 的有效指针(S80)。若设定有有效指针(S80的Y),则确定该指针所指的平 铺图像的地址或识别编号等唯一确定平铺图像的信息(S84)。若被设定有空 指针(S80的N),则针对该索引块中的阶层沿图像缩小方向搜索被设定有有 效指针的阶层,确定针对检测出的阶层的相应区域所设定的指针指向的平铺 图像(S82、S84)。

若缓存存储器70中没有存储该平铺图像的被解码了的数据(S86的N), 则解码部112从主存储器60读出平铺图像的数据进行解码(S88、S90)。

在S76中搜索到首部中被设定有有效指针的区域的情况下,或者在S82 中搜索到在索引块内设定有有效指针的阶层的情况下,需要将所确定的平铺 图像放大描绘。因此,按这样的方式确定了平铺图像的情况下,平铺图像确 定部110将该情况的信息提供给解码部112。解码部112基于该信息判定是否 需要放大平铺图像(S92)。

在需要放大的情况下(S92的Y),解码部112基于从平铺图像确定部110 取得的帧坐标将平铺图像放大后,将所需的区域存储到缓存存储器70中 (S94)。该处理在相应平铺图像已解码(S86的Y)的情况下也同样进行。 然后,不论有无放大处理,显示图像处理部114都将该平铺图像中应新显示 的区域描绘到帧存储器中(S96)。描绘处理中也包括根据所被要求的分辨率 将缓存存储器70中所存储的数据放大、缩小的处理。

接下来说明首部和索引块中的指针的数据结构。在将例如由11阶层构成 的阶层数据如图8所示那样按每个为4×4、8×8、16×16的3阶层的区域地汇 总为索引块的情况下,首部所定义的区域成为4162个。另外,一个索引块最 大能定义336个平铺区域。由于要对这些要素分别设定指针,故优选采用能 高效地进行指针的检索的数据结构。作为指针的数据结构,考虑可以采用固 定长度排列、联想排列、树结构。

在使首部的指针为固定长度排列的情况下,对各区域分别赋予识别编号, 并将之作为索引来访问固定长度的指针排列。此时,只要能确定区域就能立 刻取得指针,故能快速地进行编辑及检索处理。在采用联想排列的情况下, 对各区域分别赋予识别编号,并以此为条件访问指针的联想排列。此时,只 要仅保持有效的指针即可,故能抑制首部的数据大小。

在采用树结构的情况下,进一步定义连接区域间的指针,从图像的阶层 结构体的顶点起沿区域间指针检索所希望的区域。此时,在如后述那样对顶 点追加了阶层时,只更新顶点附近的指针就行了。这样,指针的数据结构不 同其有效性也不同,故根据存储器成本、处理成本等应重视的点适当选择。 进而,也可以适当导入B树结构等数据搜索所一般使用的方法。由于索引块 的指针也是同样的方式,故可以考虑处理速度等选择最佳的方法。

此外,指向索引块的指针、以及指向平铺图像的指针也可以含有与记录 有作为目标的索引块或平铺图像的文件名、网络相连接的服务器的定位信息 等。由此,能够在一个阶层数据中含有来自多个文件或网站的图像,或由多 个阶层数据共用一个文件。

接下来,说明对如上述那样由首部、索引块、平铺图像构成的图像文件 进行修正、改变的情况。该方式也能用与图1所示的信息处理系统、图4所 示的信息处理装置10同样的装置结构来实现。图16表示了在本实施方式中 具有修正图像的功能的控制部100c的构成。当然,控制部100c也可以具有 图7的控制部100a所示的用于进行图像显示的功能、或图9的控制部100b 所示的生成图像文件的功能,但在此省略了图示。另一方面,也可以在发挥 显示功能及图像文件生成功能的图像处理装置之外另行设置具备仅具有图16 所示的功能的控制部100c的信息处理装置10。

控制部100c包括:取得修正对象的图像文件的图像文件取得部318;取 得由因修正而被更新的区域及更新部分的图像数据等构成的更新信息的更新 信息取得部320;生成更新后的平铺图像的平铺图像生成部322;更新首部和 索引块的首部·索引块更新部324;显示修正中的图像的显示图像控制部 326;以及生成修正后的图像文件的图像文件生成部328。

图像文件取得部318接收用户所进行的修正对象图像的指定输入,从硬 盘驱动器50中读出相应的图像文件并存储到主存储器60中。该图像文件如 之前所说明的那样包含首部、索引块、平铺图像的数据。更新信息取得部320 取得用户一边看着显示装置12上所显示的修正对象图像一边介由输入装置 20输入的更新信息。更新信息中如上述那样包含应更新的区域和该区域中的 修正后的图像数据等。具体例子在后面叙述。

平铺图像生成部322确定在对应更新的区域适用更新后的图像时需要更 新的平铺图像,生成新的平铺图像。在此,当应更新的区域仅涉及某平铺图 像的一部分时,从主存储器60读出原平铺图像,并仅盖写应更新的区域,由 此来生成新的平铺图像。当某平铺图像全部被包含在应更新的区域中时,通 过剪切修正后的图像来生成新的平铺图像。此时,针对构成阶层数据的全部 阶层中的应更新的区域生成新的平铺图像。但也可以使得根据用户的指定而 仅更新特定的阶层。此时,能够实现在特定的分辨率范围内显示不同图像的 样式。

所生成的平铺图像存储在主存储器60中。此时,图像文件取得部318 存储在主存储器60中的原图像数据仍原样存储,新生成的平铺图像存储到其 它存储区域。然后,首部·索引块更新部324在主存储器60所存储的索引块 中将针对应更新的区域所设定的指针改写为指向新生成的平铺图像。另外, 当不存在与该区域对应的索引块时,新生成索引块,将首部中的空指针的设 定改写为指向所生成的索引块的指针。

显示图像控制部326可以由图7所示的控制部100a所包含的功能块构 成,在此省略了图示。显示图像控制部326通过与图15中说明过的步骤相同 的处理步骤来显示修正对象图像,但根据用户对图像的修正而如上述那样更 新首部、索引块。与此相应,描绘图像时所使用的平铺图像变成新的平铺图 像。通过这样处理,能一边确认显示图像一边对图像进行修正、改变。

在本实施方式中,不更新原来的平铺图像的数据,而是在其它存储区域 中追加新生成的平铺图像,用索引块或首部来改变参照目标,由此来更新图 像。通过这样处理,与检索出原平铺图像中的与修正区域相应的平铺图像的 数据再进行盖写的情况相比,处理成本较低,并能够响应性良好地显示修正 过程中的图像。此外,还能在修正过程中容易地返回原图像。

图像文件生成部328在用户结束修正时等用新生成的平铺图像的数据盖 写原来的平铺图像的数据。或者将新生成的平铺图像的数据作为另外的文件 而与原平铺图像的数据分别保存。然后附加更新后的索引块和首部来作为图 像文件。

接下来说明通过上述机构对图像进行修正、改变时的对各数据的处理的 具体例子。图17表示了作为说明之前提的图像的修正例。在该图中,修正前 的图像190中描绘有椭圆和三角形。对其进行修正,考虑如修正后的图像192 所示那样在图像的右上方追加星形的图形194。图18示意性地表示了这样的 修正中的索引块的指针的变化。在该图中用箭头表示了指针,但为了避免附 图变得繁杂,仅表示了代表性的箭头。

首先,在修正前,首部150所定义的各区域被设定有指向某个索引块160 的指针、或者空指针。并且,针对属于指针所指向的索引块160的多个阶层 的各平铺区域,如虚线箭头所示那样设定有指向修正前所生成的某个平铺图 像170e的指针。若假定图17中的修正前的图像190的右上方区域为单色的 背景,则该区域共用一个平铺图像。在图18中多个虚线箭头指向一个平铺图 像170f就是表示该意思。另外,其它区域被设定有指向各个平铺图像的指针。

对这样的背景部分如图17中的修正后的图像192那样追加星形图形194 后,作为各阶层的相应区域中的平铺图像,生成追加了各分辨率的星形图形 的新的平铺图像170g,并存储在与原来的平铺图像170e不同的存储区域中。 于是在索引块160中,指向应更新的区域所涉及的平铺区域的指针全部被更 新为指向某个新的平铺图像170g的平铺图像。在图18中,用单点划线的箭 头表示更新后指针。更新后,更新对象区域就并非背景了,所以如图所示那 样,针对各平铺区域设定指向各个平铺图像的指针。此外,修正对象区域以 外的区域还是指向原来的平铺图像170e即可。

接下来,说明在如图17的星形图形194那样通过更新而追加的图像具有 比之前的阶层数据的最高分辨率的图像还要高的分辨率的情况下,向高分辨 率侧追加阶层的步骤。图19是用于说明对高分辨率侧追加阶层时的处理的 图。在该图中,假定修正前的图像是由第0阶层154i、第1阶层154j、第2 阶层154k、第3阶层1541构成的阶层数据200。这里,假定在首部中对所有 区域都设定了指向索引块的有效指针,在该图中用网格表示。

在对这样的图像如图17所示那样进行在右上方区域追加高分辨率图像 的修正时,如上所述针对各阶层新生成更新对象区域的平铺图像。在此,由 于所追加的图像是比原阶层数据中具有最高分辨率的第3阶层1541还要高的 分辨率,故需要追加新的阶层。在该图中将追加的阶层记为第4阶层154m。 另外,应新生成平铺图像的区域在该图中涂黑表示。

在该例中,由于基于高分辨率图像的图像修正是局部性的,故在以第4 阶层154m的分辨率来显示更新对象区域以外的区域时,就成了将原本就有 的阶层数据中具有最高分辨率的第3阶层1541的图像放大来显示。因此,对 于第4阶层154m中的更新对象区域以外的区域设定空指针,援用第3阶层 1541的平铺图像。设定空指针的区域在该图中用空白来表示。

关于平铺图像的共用,如前所述有在首部中进行设定的方法和在索引块 中进行设定的方法。在一个索引块所能汇总的阶层数为固定的情况下,有时 与应追加的第4阶层154m对应阶层已被已有的索引块定义了。由于第4阶 层154m在原来的阶层数据中不存在,故对索引块的该阶层设定有空指针。

在这样的情况下,在该已有的索引块中,将对第4阶层154m的更新对 象区域所设定的空指针更新为指向新生成的平铺图像的指针。更新对象区域 以外的区域仍保持空指针。对于低分辨率的各阶层也是一样更新索引块的指 针。

图20是说明不存在与应追加的第4阶层154m对应的阶层所属的索引块 时的首部和索引块的变化的图。在该图的首部150中,区域152i表示了针对 修正前的阶层数据已定义的区域。首部150所定义的区域当然可以有多个, 但在该图中将其汇总,以一个区域152i来表示。修正前已存在的第0阶层154i、 第1阶层154j、第2阶层154k、第3阶层154l属于区域152i。并且,对各区 域设定有指向索引块160f的指针。此外,对索引块160f所定义的各平铺区域 设定有指向已有的平铺图像170h的指针(虚线箭头)。

这里,在追加第4阶层154m时,首先在首部150中追加包含该阶层的 新的区域。但如图20所示那样,仅对包含更新对象区域的区域152j设定有 效的指针,其它区域设定空指针。进而生成新的索引块160g,对区域152j 设定指向该索引块160g的指针。如果要追加的阶层仅是第4阶层154m,则 属于新生成的索引块160g的3阶层中要设定指向平铺图像的指针的可以只是 最低分辨率的一阶层,其它阶层对全部区域设定空指针。

然后,在新生成的索引块160g中,对更新对象区域所包含的平铺区域设 定指针,使其指向某个新生成的平铺图像170i(单点划线箭头)。另外,已有 的索引块160f也是一样,将对更新对象区域所包含的平铺区域设定的指针更 新,使之指向某个新生成的平铺图像170i。当然,最终生成图像文件时,可 以将新生成的索引块160g追加到原图像文件的末尾,也可以作为另外的文 件。由此,能够显示更新前后的图像。

接下来,说明通过对已有的图像追加背景或描绘区域等新的区域来扩展 图像尺寸的步骤。图21是用于说明对已有的图像追加新区域的处理的图。在 该图中,假定追加前的图像是由第0阶层154i、第1阶层154j、第2阶层154k、 第3阶层154l构成的阶层数据204。各阶层所属的区域在首部中被设定有指 向索引块的有效指针。

在对这样的图像追加新的区域时,按与各分辨率对应的尺寸生成对各阶 层的图像追加了新区域的阶层数据206。在图21的例子中阶层数据206由第 0阶层154n、第1阶层154o、第2阶层154p、第3阶层154q、第4阶层154r 构成。第4阶层154r和第3阶层154q可以通过对以空白表示的原图像的平 铺图像增加以网格表示的追加区域的平铺图像来生成。第2阶层154p根据其 尺寸,对原平铺图像能原样使用的以空白所示的区域增加追加区域与原图像 混合存在的以网格所示的平铺图像。关于第1阶层154o和第0阶层154n, 由于在构成它的所有平铺图像中都混合存在原图像和追加区域,故全部以网 格来表示。

这样,在对图像追加新的区域时,能够根据阶层而原样使用原来就有的 平铺图像。利用该性质,原来就有的索引块原样利用,仅针对追加区域等需 要的区域生成新的索引块。图22是说明追加新区域时的首部和索引块的变化 的图。在该图的首部150中,空白的三角形表示能使用原来的平铺图像的区 域208,网格部分表示追加或因追加而变化的区域210。

虚线表示了图21的第0阶层154n、第1阶层154o、第2阶层154p、第 3阶层154q、第4阶层154r,在各个阶层中决定能利用原平铺图像的区域以 及应追加或因追加而应更新的区域,成为图22所示那样的结构。首部所定义 的区域是从阶层结构体的顶点起按顺序生成的,故像这样首部150发生变化 时,区域的划分也发生变化。

但如后所述通过对区域的划分进行处理,即使如图22那样在阶层数据的 顶点出现阶层增加这样的变化,变化前所定义的区域也尽可能保存,进而能 够原样利用已有的索引块。在图22中,追加区域前,对区域208的各区域(未 图示)设定有指向索引块160h的指针。并且索引块160h所定义的各平铺区 域被设定有指向已有的平铺图像170h的指针(虚线箭头)。

追加区域后,生成与追加的区域对应的新的索引块160i,并对首部150 中的新的区域210设定指向该索引块160i的指针。在此,区域210在首部150 中可以被定义多个区域,但省略了图示。所生成的索引块160i按各平铺区域 分别被设定指向因区域追加而变得需要的某个新的平铺图像170k的指针(单 点划线箭头)。这里,新的平铺图像170k是在图21中网格所示的、追加的区 域自身的平铺图像、或追加的区域与原图像混合存在的平铺图像。此时,在 追加的区域为单色背景等情况下,可以共用一个平铺图像。

另一方面,在首部中原本就已定义的区域在区域的划分方式没有变更的 情况下,能够原样使用所设定的指针、进而使用其所指向的索引块。因此, 无需更新在索引块内设定的指向平铺图像的指针。当然,上述例子是追加图 像的右方和下方区域的情况,但在向任意方向扩展图像时,都能通过以扩展 后也能利用已有的索引块的方式进行区域分割,来将首部、索引块的变化抑 制到最小限。

图23是说明在如图21和图22所说明的那样,在扩展图像尺寸等情况下 在阶层结构体的顶点侧追加阶层时,在首部中定义的区域的分割方法的图。 首先,在最初的阶层数据230中,如下这样进行区域分割:将第0~1阶层整 体作为第1区域152k,将第2~4阶层整体作为第2区域152l,将第5~7阶 层按图像上的区域分割后的区域依次作为第3区域152m、第4区域152n、…。 该区域的构成同图8所示的是一样的。

如前所述一个索引块定义的平铺区域的数量不因索引块而不同,是均等 地准备的,第1区域152k仅由一个平铺图像所构成的第0阶层和2×2个平铺 图像所构成的第1阶层构成,故在与该区域对应的索引块160j中仅使用该数 量的平铺区域,对这以外的平铺区域设定空指针,使之无效。

在图23所示的索引块中,按各阶层分别用矩形表示了有效的平铺区域的 横方向的数量。因此,与第1区域152k对应的索引块160j被表示有一个和 两个矩形。与第2区域152l、第3区域152m等其它区域对应的索引块160k、 160l等能够使4×4个、8×8个、16×16个平铺区域全部有效,故被表示有4 个、8个、16个矩形。

在此,对于在阶层数据230的顶点侧追加了1阶层后的阶层数据232, 原来就属于第1区域的阶层原样不动,再将追加的阶层包含在第1区域152o 中。与原来的第1区域152k对应的索引块160j仅使用了作为数据区域而准 备的3阶层中的两阶层量,故通过利用设为无效的阶层,能够仅用第1区域 152o来吸收阶层的追加。因此,在原来的阶层数据230中包含于第2区域152l 的第2~4阶层(阶层追加后的第3~5阶层)能够还是属于相同区域。但由 于各阶层的图像被扩展了,故针对扩展部分定义新的区域并生成索引块。此 外,下面的阶层也是一样。

在此,对于在阶层数据232的顶点侧又追加了1阶层后的阶层数据234, 也是原来就属于第1区域的阶层原样不变,再使追加的阶层包含在第1区域 152p中。此时,仅第1区域152p成为4阶层,但由于在与之对应的索引块 160m中所准备的平铺区域比第1区域152p的平铺图像的数量大,故即使是 4阶层,平铺图像的信息用索引块160m也足够。于是,这以下的阶层能够属 于与在最初的阶层数据230时所属的区域相同的区域。

在对阶层数据234再追加1阶层的阶层数据236中,将在阶层数据234 中对属于第1区域152p的4阶层增加所追加的阶层后的5阶层分割成两个区 域,记作第1区域152q、第2区域152r。此时通过使第1区域152q为第0~ 1阶层、使第2区域152r为第2~4阶层,与第1区域152q对应的索引块160n 就同与最初的阶层数据230的第1区域152k对应的索引块160j一样,仅由 一个平铺图像的阶层和2×2个平铺图像的阶层构成。此外,第2区域152r也 同阶层数据230的第2区域152l一样。

并且,这以下的阶层能够属于同最初的阶层数据230时的所属一样的区 域。通过反复进行以上变化,即使对阶层数据的顶点追加阶层,也能尽可能 保持其它区域不变地定义区域,进而能够原样利用已有的索引块。

在如图21所示那样扩展图像的区域的情况下,若采用图像处理中一般所 使用的那样的基于光栅方向顺序的平铺图像的管理,则所追加的区域的平铺 图像会被插入到已有的平铺图像之间,从而需要重排平铺图像或重新赋予识 别编号。平铺图像的数量越増加,该处理的负荷就越大。在本实施方式中如 上所述仅用局部的数据变化就能进行图像区域的扩展,故处理成本较低,能 响应性良好地实现更新中的数据显示和最终的图像文件生成。

接下来说明上述构成所能实现的动作。图24是表示在图像处理装置中用 户修正、改变图像时的处理步骤的流程图。首先,用户指定修正对象图像文 件后,图像文件取得部318从硬盘驱动器50中读出该图像文件并存储到主存 储器60中(S110)。然后,显示图像控制部326将该图像文件的图像显示在 显示装置12上(S 112)。

在该状态下用户一边观看显示装置12上所显示的图像一边输入更新信 息后(S114的Y),更新信息取得部320接受该输入,平铺图像生成部322 生成更新部分的新的平铺图像后存储到主存储器60中(S116)。用户所进行 的更新信息的输入例如通过如下操作来进行,即,在显示于显示装置12的图 像附近显示想要新粘贴的图像,用户用指示设备将之拖到所希望的区域等。 或者也可以用指示设备直接绘入文字或画,或输入追加区域的命令等。

接下来,首部·索引块更新部324如上述那样根据图像的更新内容来适 当更新首部、索引块(S118)。然后,显示图像控制部326读出新成为参照目 标的平铺图像的数据并解码,由此更新显示装置12的显示(S120)。在修正 结束、再得不到更新信息之前,反复进行S114至S120的处理。

若通过用户的输入等检测到修正已结束(S114的N),则图像文件生成 部328将存储在主存储器60中的新生成的平铺图像编入原图像文件的图像数 据,再构建图像数据(S122)。或者仅将新生成的平铺图像作为其它文件保存。 然后,在S118中同更新后的最终的首部和索引块的数据一起作为图像文件输 出(S124)。

在修正过程中,首部、索引块、平铺图像存储到与已有数据不同的存储 区域中。当用户进行了取消刚进行过的图像的更新的操作(Undo)时,使这 些数据的参照目标回到原来状态,由此能够容易地使图像回到之前的状态。 在操作的再履行(Redo)时也是一样,仅变更参照目标即可。

根据以上所述的本实施方式,用首部、索引块、平铺图像这三个数据集 来构成阶层数据。由此,能够使平铺图像从本来的图像上的位置独立,除在 修正图像时等容易管理外,还能考虑图像的冗余性地在多个区域共用平铺图 像,故能高效地削减平铺图像的数据大小。

此外,在多个区域共用平铺图像时,使首部或索引块所设定的指针无效, 在成为无效的区域,针对阶层沿低分辨率侧的方向搜索被设定有有效指针的 区域。由此,与针对所有区域都设定指向某个平铺图像的指针时相比,能削 减索引所使用的数据自身的大小。

进而,通过首部对阶层结构体进行区域分割,使各区域分别对应索引块。 此时,使一个区域中包含多个阶层。由此,能够一次性地汇总操作易成为显 示或修正的对象的数据,容易避免将不需要的数据载入主存储器等存储区域 或处理方面非效率的状況。另外,通过使索引块所能定义的平铺区域的数量 为固定值,不会发生数据高速缓存(data cache)时的分片(fragmentation), 容易进行存储区域的管理。此外即使图像巨大化,数据量变大,也能通过阶 层数据的区域分割而高效地进行显示及对修正对象数据的访问。

例如在由80000个平铺图像构成的阶层数据的情况下,若使索引块定义 的平铺区域的数量为400,则生成200个索引块。在此,当想要访问一个平 铺图像时,若是简单的80000个平铺图像的罗列,则需要按顺序对其进行检 索,但若如本实施方式那样进行了区域分割,则检索一个区域就等同于检索 400个平铺图像,能够实现高效的访问。

同样,在用一般的图像显示装置进行显示时,一次显示的图像所需要的 索引块平均是1~2个,需要4个以上索引块的情况极少。因此,与不分割区 域地保持指向平铺图像的索引的情况相比,一次所需要的索引数据尺寸较少 即可,能节约主存储器。结果,能不压迫主存储器地实现同时处理多个阶层 数据的方案的可能性提高。

进而,对于首部和索引块所设定的指针,能够设定记录有索引块和平铺 图像的文件。通过这样处理,即使是一个阶层数据,也能利用从多个索引块 文件和平铺图像文件读出的数据,能更灵活地生成、更新阶层数据。另外, 只要文件不同,就无需存储在同一个存储介质中,故能够生成例如超过4GB 的巨大的图像数据。由此,还能够将非压缩图像、HDR(High Dynamic Range: 高动态范围)图像、特性(attribute)信息等作为处理对象。

同时,还能在多个阶层数据间共用所使用的数据的文件。例如对于能作 为杂志的页眉、页脚等模板而再使用的图像,通过不一个个地保持,而是进 行共用,能减小各个阶层数据的数据尺寸。不仅是平铺图像,还可以共用索 引块的数据。

若这样应用,能容易地实现使用了阶层数据的内容的升级。例如发布包 含首部、索引块、平铺图像的数据的文件作为通常版的内容。然后作为追加 用的文件,另行再准备高分辨率的阶层的平铺图像的文件。虽然在通常版的 首部和索引块中也记述指向追加用的平铺图像的指针,但只要没得到该平铺 图像,该指针就是无效的,故不进行显示。用户进行内容的升级时,追加用 的文件被下载,指向其中记录的平铺图像的指针变得有效,故追加用的图像 被显示。通过这样处理,能够不改变通常版的内容文件地容易地进行升级。 也可以对升级进行收费。

实施方式2

在实施方式1中,主要是基于用户输入的信息来生成、修正图像文件的。 在本实施方式中,说明通过图形处理器来对阶层数据进行渲染的方案。通过 在渲染中导入阶层数据,同实施方式1所述的一样,仅进行符合所需要的分 辨率的处理即可,即使是高精细的巨大图像,也能进行高效的处理。本实施 方式可以通过实施方式1的图4所示的信息处理装置10来实现。图25更详 细地表示了本实施方式的信息处理装置10中的控制部100和主存储器60的 构成。

控制部100包含主处理器400和图形处理器402。主处理器主要执行在 信息处理装置10中起动的应用程序,并控制信息处理装置10所包含的其它 功能块。图形处理器402按照来自主处理器400的图像处理要求执行图像处 理。图像处理所需要的数据被存储在主存储器60中,图形处理器402读出它 并适当进行图像处理后,将结果写入主存储器60等,由此执行图像处理。

图形处理器402按照来自主处理器400的图像处理要求使用主存储器60 所存储的模型数据418来进行渲染,并更新同样存储在主存储器60中的彩色 缓存区414和Z缓存区416。在本实施方式中,如图25所示,彩色缓存区414 和Z缓存区416都采用阶层数据的结构。即,具有使保持描绘对象图像的各 像素的色彩信息的彩色值像素平面和保持各像素的相对于视点的深度信息的 Z值像素平面与描绘对象图像的多个分辨率相对应地阶层化了的结构。该阶 层数据如在实施方式1中说明的那样,可以由首部、索引块、平铺数据构成。 这里,平铺数据是将各阶层的像素平面分割成预定尺寸后的各平铺区域的数 据。

图形处理器402包括按照来自主处理器400的要求进行渲染的渲染部 404、使渲染部404的渲染结果反映到主存储器60所存储的彩色缓存区414 和Z缓存区416的各阶层中的阶层数据更新部406。图形处理器402还包括 GPU彩色缓存区408、GPU-Z缓存区410、以及脏区掩模(dirty mask)412, 作为渲染时暂时使用的存储区域。脏区掩模412具有与GPU彩色缓存区408、 GPU-Z缓存区410相同尺寸的区域,保持各像素为1比特的信息。GPU彩 色缓存区408、GPU-Z缓存区410因渲染而被更新后,通过改变更新对象像 素的值来检测该像素的区域。

接下来说明具有上述构成的图像处理装置的渲染时的动作。图26是表示 对阶层数据的渲染的处理步骤的流程图。首先,主处理器400对图形处理器 402进行渲染要求(S200)。渲染所需的数据如上所述被存储到主存储器60 中。除模型数据418外,如上所述具有阶层结构的彩色缓存区414和Z缓存 区416也包含于此。

这样,图形处理器402的渲染部404基于模型数据418等确定彩色缓存 区414和Z缓存区416中的渲染对象阶层和区域(S202)。然后,渲染部404 从彩色缓存区414和Z缓存区416读出该区域的数据,填充到由GPU彩色缓 存区408和GPU-Z缓存区410构成的GPU缓存区中(S204)。根据渲染对 象的阶层和区域确定平铺数据方法同在实施方式1中说明的平铺图像的确定 方法一样,按首部、索引块的顺序进行检索。因此,按平铺数据单位进行读 取。

此时,渲染部404将脏区掩模412初期化(S206)。例如将各像素值统一 为“0”。然后,使用模型数据418,以一般的方法进行渲染,适当更新GPU 彩色缓存区408、GPU-Z缓存区410,并将脏区掩模412中的更新对象的像 素值更新为“1”(S208)。

然后,基于GPU彩色缓存区408、GPU-Z缓存区410中的渲染结果, 更新主存储器60的彩色缓存区414和Z缓存区416的阶层数据(S210)。具 体来说,首先在各阶层数据中的渲染对象的阶层和区域中,基于脏区掩模412 的像素值确定包含更新对象像素的平铺区域,基于GPU彩色缓存区408、GPU -Z缓存区410的渲染结果更新该平铺区域的数据。

此时如实施方式1中所述的那样,生成新的平铺数据,并将索引块所设 定的指针更新为指向新的平铺数据的指针。当然,在预想会被频繁更新的情 况下,也可以省略平铺数据的生成而仅进行指针的更新,在图像确定后生成 平铺数据。接下来对渲染对象阶层以外的阶层也新生成与所被更新的区域对 应的区域的平铺数据,将索引块所设定的指针更新为指向新的平铺数据的指 针。此时,由于因阶层不同分辨率也不同,故使渲染结果放大或缩小地反映 于新的平铺数据。

在对比已有的阶层数据分辨率高的图像进行渲染时等渲染对象区域的平 铺数据原本不存在于彩色缓存区414和Z缓存区416的情况下,将其上面的 阶层的对应的区域放大后填充到GPU彩色缓存区408、GPU-Z缓存区410 中。并在渲染后,仅使被更新了的平铺数据反映到彩色缓存区414和Z缓存 区416中,更新首部或索引块的指针。之后,对渲染对象阶层以外的阶层也 生成平铺数据、更新指针,这一点同上述是一样的。该处理是与在实施方式 1中用图19说明过的同样的处理。

在S210中使渲染的结果反映于阶层数据时,为使之反映于比渲染对象阶 层靠下的阶层而放大了渲染结果的区域若占据该阶层的某个平铺区域,则删 除该平铺数据,使指向它的指针无效。由此,能够削减平铺数据的大小。显 示时同实施方式1中所述的一样,只要搜索指针有效的阶层,将上面的阶层 的图像放大即可。

当然,彩色缓存区414和Z缓存区416既可以分别保持首部和索引块, 也可以共用。在共用的情况下,索引块对一个平铺区域设定多个指针、即指 向彩色缓存区的平铺数据和Z缓存区的平铺数据的指针。由此,与分别保持 相比能压缩首部和索引块的数据。渲染后,在确定图像时,可以删除索引块 中不再需要的指向Z缓存区的平铺数据的指针。在索引块中对一个平铺区域 设定的多个指针所指的对象根据图像内容并不限于彩色缓存区和Z缓存区。

另外,也可以在多个彩色缓存区间共用Z缓存区。例如可以准备两个彩 色缓存区的数据、一个Z缓存区的数据,用一个彩色缓存区和Z缓存区进行 渲染,用另一个彩色缓存区和Z缓存区进行渲染。在该情况下,分别单独保 持首部和索引块在控制方面更为有效。

将彩色缓存区和Z缓存区作为阶层数据来进行渲染的本实施方式能够应 用于反锯齿处理(anti-aliasing)。即生成由高分辨率的阶层和比其分辨率低的 显示用的图像的阶层构成的阶层数据。在一般的超级采样(super sampling) 中,针对单色的背景等不存在对象的区域也需要准备高分辨率图像用的存储 区域。另一方面,通过将这些缓存区作为上述那样的阶层数据,能够从高分 辨率图像的渲染对象中除去只要放大低分辨率的阶层就能得到的区域。

例如通过用户指定各区域分别需要的分辨率,在各阶层中仅必要最低限 的区域的渲染即可,存储器的使用效率提高。为响应性良好地进行频繁的平 铺数据更新和图像显示,生成的平铺数据也可以不压缩。当然,在需要对图 像整体都进行反锯齿处理的情况下,也可以进行超级采样等根据对象区域的 比例来切换反锯齿处理的方法。

在使用阶层数据进行反锯齿处理时,考虑总是仅渲染最下层的图像,并 在图像确定后生成其缩小图像的情况,和对用户指定的阶层进行渲染,并在 每次渲染时更新全部阶层的对应区域的情况。前者能将缩小处理的频率抑制 得较低,后者易于预测光栅化、阴影处理、ROP(Rendering Output Pipeline: 渲染输出管道)、像素传输等像素生成处理的成本。但后者会在图形处理器 402和主存储器60之间频繁地传输原图像、放大图像、缩小图像等数据,故 容易对传输带宽造成负荷。

不仅是反锯齿处理时,在对阶层数据渲染时也要使渲染结果反映于各阶 层,故将图像放大、缩小的缩放处理需要频繁进行。若每次缩放处理时都将 图像数据在图形处理器、主存储器间收发,则有可能会压迫两者间的传输带 宽。因此,在本实施方式中可以如图27所示那样将进行缩放处理的缩尺422 内置在主存储器60中。

由此,图形处理器520和主存储器60只要仅收发渲染对象分辨率的图像 即可,主存储器60内的阶层数据中的对各阶层的渲染结果反映由缩尺422在 主存储器60内进行。结果,能防止对图形处理器520与主存储器60间的传 输带宽的压迫,能高效地实施阶层数据的渲染。当然,缩尺422不内置在主 存储器60中,而是用不同于图形处理器520和主存储器60间的总线的总线 连接于主存储器60,也能得到同样的效果。

以上所述的本实施方式能够利用一般的图形处理器实现。这里,在一般 的图形处理器中,为抑制在内部的帧缓存区、即上述GPU缓存区寻址时对主 存储器的读取和写入的次数,采用对画面上在一起的区域分配较近的存储器 地址这样的方法。但存在被用于GPU缓存区的区域必须是连续的地址空间这 样的制约。即不能填充到地址不连续的区域。图28、29表示了此时的处理的 情况。

首先在图28中,假设将阶层数据的第3阶层的图像的一部分区域430 作为渲染对象时,被分到“11”~“18”的地址。此时,图形处理器402能 够将该区域430填充到GPU缓存区。之后,如图29所示那样将同样第3阶 层的一部分区域432作为渲染对象。区域432包含在图28中已分到地址“11” 和“12”的区域。此时,对区域432的其它区域分配“19”~“24”的地址。 这样进行地址分配后,区域432会包含地址不连续的区域,图形处理器402 将无法向GPU缓存区填充该区域。

因此,需要通过将区域432暂时复制到其它存储区域中,分配新的连续 的地址(在图29中为地址“50”~“57”)来进行向GPU缓存区的填充。为 减轻这样的处理成本,在本实施方式中可以对主存储器60的存储器控制器 (未图示)设置使区域的位置与将分配的地址建立对应关系的表。在图29的 区域432的情况下,按光栅顺序用“0”~“7”表示区域的位置,建立对应 关系为“0”=“19”、“1”=“20”、“2”=“21”、“3”=“22”、“4”=“23”、 “5”=“24”、“6”=“11”、“7”=“12”。

通过这样做,即使是被分到不连续的地址的区域的渲染,在主存储器60 中也被进行地址变换,故无需进行图29所示那样的用于填充的复制。进而, 若如图27那样主存储器60内置有缩尺422,则能够将包括生成放大/缩小后 的图像在内的、用于生成/更新阶层数据的众多处理封闭在主存储器60内。

通过如本实施方式这样使得能够进行阶层数据的渲染,能够得到通过渲 染来基于首部、索引块对平铺数据进行随机存取,基于分割首部降低各阶层 数据的存储器成本来同时处理多个阶层数据,以及追加、删除、更新平铺数 据这样的特征。这些特征与随机存取、多重贴图(Multi Texturing)、渲染目 标(Render Target)这样的纹理要件是同等的。因此,能够将阶层数据与纹理 同等地处理,能够将阶层数据应用于使用计算机图形的广范围用途。

以上基于实施方式说明了本发明。但上述实施方式仅是例示,本领域技 术人员当理解其各构成要素和各处理过程的组合可以有各种变形,并且这样 的变形例也包含在本发明的范围内。

工业实用性

如上所述,本发明能够适用于计算机、游戏机、图像处理装置、图像描 绘装置等信息处理装置。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号