首页 / 专利库 / 诊断设备和程序 / 空间编码 / 信息处理装置、控制方法及存储介质

信息处理装置、控制方法及存储介质

阅读:815发布:2023-03-05

专利汇可以提供信息处理装置、控制方法及存储介质专利检索,专利查询,专利分析的服务。并且在本 发明 的信息处理装置中,GPU获取将编码对象的 图像分割 而获得的具有既定 像素 数的多个区 块 ,针对各区块,生成排除空间冗长性后的中间区块。进而,GPU解析各中间区块的数据串,生成确定出该数据串中的值包含在既定范围内的数据的 位置 的确定信息,针对各区块,将中间区块的至少一部分数据及所对应的确定信息输出到存储装置中。另外,CPU针对多个区块的每一个,参照所对应的确定信息,从存储装置读出与该确定信息对应的至少一部分数据并执行压缩处理。,下面是信息处理装置、控制方法及存储介质专利的具体信息内容。

1.一种信息处理装置,具有中央处理器(CPU)与图形处理器(GPU),且将图像编码;该信息处理装置的特征在于:
所述GPU具有:
获取手段,获取将编码对象的图像分割而获得的具有既定像素数的多个区;以及针对所述多个区块的每一个:
排除手段,生成排除空间冗长性后的中间区块;
解析手段,解析所述各中间区块的数据串,生成对应于所述中间区块的确定信息,所述确定信息确定出该数据串中的值包含在既定范围内的数据的位置;以及输出手段,将所述中间区块的至少一部分数据及所述对应的确定信息输出至存储手段;
所述CPU具有:
针对所述多个区块的每一个:
读出手段,从所述存储手段读出所述中间区块的所述对应的确定信息;以及压缩手段,参照由所述读出手段读出的所述对应的确定信息,从所述存储手段读出与该对应的确定信息对应的所述至少一部分数据,并执行压缩处理;其中针对各中间区块,在数据串中所包含的值包含在所述既定范围内的数据数多于预先规定的数量的情况下,
所述解析手段针对将该数据串的各数据表示的值除以既定值所得的新数据串生成确定信息,
所述输出手段仅将所述新数据串中所包含的值包含在所述既定范围内的数据按照数据串顺序排列,并作为所述至少一部分数据输出。
2.根据权利要求1所述的信息处理装置,其特征在于:所述解析手段将所述数据串的各数据表示的所述值除以既定值的次数包含在所述确定信息中。
3.根据权利要求1所述的信息处理装置,其特征在于:针对各中间区块,所述输出手段仅将数据串中所包含的值包含在所述既定范围内的数据按照数据串的顺序排列,并作为所述至少一部分的数据输出。
4.根据权利要求1所述的信息处理装置,其特征在于:针对各中间区块,所述解析手段通过将所述数据串中各数据值是否包含在所述既定范围内的信息按照数据串顺序排列,而生成所述确定信息。
5.根据权利要求1至4中任一项所述的信息处理装置,其特征在于:所述值包含在既定范围内的数据为所述中间区块的数据串中数据值为非零值的数据。
6.根据权利要求1至4中任一项所述的信息处理装置,其特征在于:所述值包含在既定范围内的数据为所述中间区块的数据串中事先确定为会对画质造成影响的数据。
7.根据权利要求1所述的信息处理装置,其特征在于:
所述排除手段具有:
转换手段,将所述多个区块的每一个进行正交转换;
量化手段,将由所述转换手段正交转换后的所述多个区块的每一个量化;以及生成手段,通过针对由所述量化手段量化后的所述多个区块的每一个将与像素对应的数据按照特定的顺序排列,而生成所述中间区块的数据串;
所述压缩手段将从所述至少一部分数据与所述确定信息确定出的所述中间区块的数据串进行无损压缩
8.一种信息处理装置,具有中央处理器(CPU)与图形处理器(GPU),且将图像编码;该信息处理装置的特征在于:
所述GPU具有:
获取手段,获取将编码对象的图像分割而获得的具有既定像素数的多个区块;以及针对所述多个区块的每一个:
排除手段,生成排除空间冗长性后的中间区块;
解析手段,解析所述各中间区块的数据串,生成对应于所述中间区块的确定信息,所述确定信息确定出该数据串中的值包含在既定范围内的数据的位置;以及输出手段,将所述中间区块的至少一部分数据及所述对应的确定信息输出至存储手段;
所述CPU具有:
针对所述多个区块的每一个:
读出手段,从所述存储手段读出所述中间区块的所述对应的确定信息;以及压缩手段,参照由所述读出手段读出的所述对应的确定信息,从所述存储手段读出与该确定信息对应的所述至少一部分数据并执行压缩处理;
针对各中间区块,在数据串中所包含的值包含在所述既定范围内的数据数多于预先规定的数量的情况下,
所述解析手段针对将值包含在所述既定范围内的数据中的一部分数据变更为所述既定范围外的值所得的新数据串生成所述确定信息,
所述输出手段仅将所述新数据串中所包含的值包含在所述既定范围内的数据按照数据串顺序排列,并作为所述至少一部分数据输出。
9.根据权利要求8所述的信息处理装置,其特征在于:针对各中间区块,所述解析手段在数据串中所包含的值包含在所述既定范围内的数据数多于预先规定的数量的情况下,将事先确定为对画质的影响度低的值的数据变更为所述既定范围外的值。
10.根据权利要求8至9中任一项所述的信息处理装置,其特征在于:所述值包含在既定范围内的数据为所述中间区块的数据串中数据值为非零值的数据。
11.根据权利要求8至9中任一项所述的信息处理装置,其特征在于:所述值包含在既定范围内的数据为所述中间区块的数据串中事先确定为会对画质造成影响的数据。
12.一种信息处理装置的控制方法,该信息处理装置具有中央处理器(CPU)与图形处理器(GPU)且将图像编码;该信息处理装置的控制方法的特征在于具有:
获取步骤,由所述GPU获取将编码对象的图像分割而获得的具有既定像素数的多个区块;以及
针对所述多个区块的每一个:
排除步骤,由所述GPU生成排除空间冗长性后的中间区块;
解析步骤,由所述GPU解析所述各中间区块的数据串,生成对应于所述中间区块的确定信息,所述确定信息确定出该数据串中的值包含在既定范围内的数据的位置;
输出步骤,由所述GPU将所述中间区块的至少一部分数据及所述对应的确定信息输出至存储手段;
读出步骤,由所述CPU从所述存储手段读出所述中间区块的所述对应的确定信息;以及压缩步骤,由所述CPU参照所述读出步骤中读出的所述对应的确定信息,从所述存储手段读出与该对应的确定信息对应的所述至少一部分数据并执行压缩处理;
针对各中间区块,在数据串中所包含的值包含在所述既定范围内的数据数多于预先规定的数量的情况下,
在所述解析步骤中,所述GPU针对将该数据串的各数据值除以既定值所得的新数据串生成确定信息,
在所述输出步骤中,所述GPU仅将所述新数据串中所包含的值包含在所述既定范围内的数据按照数据串顺序排列,并作为所述至少一部分数据输出。
13.一种存储介质,存储用以使计算机作为根据权利要求1至11中任一项所述的信息处理装置的各手段而发挥功能的程序,且计算机可读取。
14.一种信息处理装置的控制方法,该信息处理装置具有中央处理器(CPU)与图形处理器(GPU)且将图像编码;该信息处理装置的控制方法的特征在于具有:
获取步骤,由所述GPU获取将编码对象的图像分割而获得的具有既定像素数的多个区块;以及
针对所述多个区块的每一个:
排除步骤,由所述GPU生成排除空间冗长性后的中间区块;
解析步骤,由所述GPU解析所述各中间区块的数据串,生成对应于所述中间区块的确定信息,所述确定信息确定出该数据串中的值包含在既定范围内的数据的位置;
输出步骤,由所述GPU将所述中间区块的至少一部分数据及所述对应的确定信息输出至存储手段;
读出步骤,由所述CPU从所述存储手段读出对应的所述确定信息;以及压缩步骤,由所述CPU参照所述读出步骤中读出的所述对应的确定信息,从所述存储手段读出与该对应的确定信息对应的所述至少一部分数据并执行压缩处理;
针对各中间区块,在数据串中所包含的值包含在所述既定范围内的数据数多于预先规定的数量的情况下,
在所述解析步骤中,所述GPU针对将值包含在所述既定范围内的数据中的一部分数据变更为所述既定范围外的值所得的新数据串生成所述确定信息,
在所述输出步骤中,所述GPU仅将所述新数据串中所包含的值包含在所述既定范围内的数据按照数据串顺序排列,并作为所述至少一部分数据输出。

说明书全文

信息处理装置、控制方法及存储介质

技术领域

[0001] 本发明涉及一种处理装置、控制方法、程序、及存储介质,尤其涉及一种利用CPU与GPU的编码技术。

背景技术

[0002] 近年来,在利用因特网等网络的动态图像传送的领域中,不仅传送已预先编码的动态图像数据,而且还进行将所生成的动态图像实时地编码,并传送所获得的动态图像数据。
[0003] 这种实时地进行编码并传送动态图像数据的内容之一有经由网络提供游戏画面的游戏内容。动态图像传送服务器通过将GPU所生成的游戏画面根据特定的编码形式编码,并作为动态图像数据传送,而可以提供显示在客户端机器中的游戏画面。
[0004] GPU具备比CPU多的运算核心,专用于并行处理。编码技术中,也存在着眼于GPU的并行处理能,使用GPU进行编码的情况(专利文献1)。
[0005] 现有技术文献
[0006] 专利文献
[0007] 专利文献1:日本专利特开2009-017535号公报

发明内容

[0008] [发明所要解决的课题]
[0009] 另一方面,由于GPU具备多个运算核心,所以各个运算核心的处理能力与CPU相比受到限定。具体来说,在CPU与GPU中,预先准备的命令集不同。例如,在进行从32bit的比特串中计数值为1的比特的运算的情况下,典型来说,GPU依序指定比特并重复发行简单的命令来执行处理,相对于此,CPU可仅通过执行预先准备的命令集而获得所期望的运算结果。也就是说,GPU专门用于并行处理,相反,执行处理所需要的命令发行较多,在由处理内容获得结果之前需要时间。
[0010] 所述专利文献1中,仅由GPU执行编码处理,并未考虑这种CPU及GPU的特性进行分散处理。
[0011] 本发明是鉴于所述问题而完成的,其目的在于提供一种通过使用CPU与GPU而有效率地进行编码处理的信息处理装置、控制方法、程序、及存储介质。
[0012] [解决课题的技术手段]
[0013] 为了达成所述目的,本发明的信息处理装置的特征在于具备以下构成。具体来说,信息处理装置是具有中央处理器(CPU)与图形处理器(GPU),且将图像编码的信息处理装置,该信息处理装置的特征在于,GPU具有:获取手段,获取将编码对象的图像分割而获得的具有既定像素数的多个区;排除手段,针对由获取手段获取到的多个区块的每一个,生成排除空间冗长性后的中间区块;解析手段,解析由排除手段生成的各中间区块的数据串,生成确定出该数据串中的值包含在既定范围内的数据的位置的确定信息;以及输出手段,针对多个区块的每一个,将中间区块的至少一部分数据及与该中间区块对应的确定信息输出至存储手段;CPU具有:读出手段,针对多个区块的每一个,从存储手段读出所对应的确定信息;以及压缩手段,参照由读出手段读出的确定信息,从存储手段读出与该确定信息对应的至少一部分数据并执行压缩处理。
[0014] [发明的效果]
[0015] 根据本发明的所述构成,能够通过使用CPU与GPU而有效率地进行编码处理。
[0016] 本发明的其它特征及优点可根据参照随附图式的以下说明而明了。此外,在随附图式中,对于相同或同样的构成,标注相同的参照编号。

附图说明

[0017] 随附图式包含在说明书中,构成说明书的一部分,表示本发明的实施方式,并与说明书的记述一起用于说明本发明的原理。
[0018] 图1是表示本发明的实施方式的PC100的功能构成的框图
[0019] 图2是例示由本发明的实施方式的PC100执行的编码处理的流程图
[0020] 图3是例示本发明的实施方式的GPU104执行的数据生成处理的流程图。
[0021] 图4是表示本发明的实施方式的数据生成处理中的中间数据的扫描顺序的一例的图。
[0022] 图5是表示由本发明的实施方式的数据生成处理所生成的输出用数据的数据构成的图。

具体实施方式

[0023] [实施方式]
[0024] 以下,参照附图对本发明的例示性的实施方式进行详细说明。此外,以下说明的一个实施方式是对将本发明应用于作为信息处理装置的一例的具备CPU与GPU进行编码处理的PC的示例进行说明。然而,本发明可以应用于具备CPU及GPU且能够使用CPU及GPU进行编码处理的任意机器。
[0025] 《PC100的构成》
[0026] 图1是表示本发明的实施方式的PC100的功能构成的框图。
[0027] CPU101控制PC100所具有的各区块。具体来说,CPU101通过读出存储在例如ROM102或存储介质107中的各区块的动作程序,在RAM103展开并执行,来控制各区块的动作。
[0028] ROM102是可覆写的非易失性存储器。ROM102存储各区块的动作或PC100的动作所需要的参数等信息。RAM103是易失性存储器。RAM103不仅用作各区块的动作程序的展开区域,而且还用作暂时存储各区块的动作中输出的中间数据等的存储区域。
[0029] GPU104进行有关画面描绘的处理。GPU104具有多个运算核心以用于进行并行处理,从而同时执行有关画面描绘的处理。例如,在要描绘的画面为3D场面的特定视点的画面的情况下,GPU104从下述存储介质107读出3D场面的描绘范围中所包含的描绘目标,并在GPU存储器105展开。然后,GPU104对在GPU存储器105展开的描绘目标执行与特定的描绘参数对应的运算处理,并在所连接的VRAM106中生成(描绘)画面。
[0030] 存储介质107是例如HDD等可装卸的存储装置。在本实施方式中,存储介质107存储编码对象的动态图像数据的各帧、及由下述编码处理而编码后的编码动态图像数据。
[0031] 操作输入部108是例如鼠标键盘等连接于PC100的用户界面。当检测到已对用户界面进行操作输入时,操作输入部108将所对应的控制信号输出至CPU101,并通知该操作输入。
[0032] 《编码处理》
[0033] 关于具有这种构成的本实施方式的PC100中的动态图像数据的编码处理,使用图2的流程图对具体的处理进行说明。与该流程图对应的处理能够通过由CPU101读出例如存储在存储介质107中的对应的处理程序,在RAM103展开并执行而实现。
[0034] 此外,以如下方式进行说明:例如在进行动态图像数据的编码的应用程序中,当存储介质107检测出已进行编码开始的指示输入时开始本编码处理。然而,本发明并不限定于动态图像数据的编码处理,也可以应用于由如下所述的处理步骤进行的静止图像数据的编码处理。另外,以下说明的编码处理并不限定应用本发明的编码处理,而是概念性地说明一个例示性的编码形式中的处理步骤。也就是说,容易理解为本实施方式的编码处理中所说明的各处理步骤可以根据编码对象或所采用的编码形式而适当变更。
[0035] S201中,CPU101将编码对象的动态图像数据(对象动态图像数据)的信息通知给GPU104。对象动态图像数据的信息也可以为能够由GPU104确定出编码对象的数据的信息,例如存储在存储介质107中的对应的动态图像文件的存储位置的信息等。
[0036] S202中,GPU104参照对象动态图像数据的信息,读出对象动态图像数据中的进行编码的帧的图像(对象图片),并在GPU存储器105展开。
[0037] S203中,GPU104将被读出至GPU存储器105的对象图片分割成具有预先决定的像素数的区块,该区块作为并行处理的执行单位。此外,对象图片无须被实际地分割成区块,例如也可以相对于GPU存储器105上的存储器地址而定义区块。另外,本实施方式中虽未叙述详细情况,但在对于对象图片进行帧内预测或帧间预测的情况下,与以下的并行处理分开对图片进行预测处理。
[0038] S204中,GPU104将GPU104的运算核心分配至各区块。然后,GPU104针对各区块并行执行离散余弦转换处理(DCT)等正交转换处理及量化处理,除去各区块的空间冗长性。此外,在进行预测处理的情况下,反映预测结果的区块成为本步骤的处理对象。另外,本实施方式中,为了使说明简单,以对各区块分配GPU104的一个运算核心的方式进行说明,但本发明的实施并不限定于此。通常,GPU104中的运算核心的分配策略依赖于GPU驱动器,例如也可以适当进行有效率的分配,例如对单位像素分配一个核心等。
[0039] S205中,GPU104执行数据生成处理,该数据生成处理是由在编码处理中GPU104的处理结束后的中间数据生成输出用数据。
[0040] 本实施方式的PC100中,使用GPU104及CPU101执行编码处理。也就是说,在编码处理的过程中被GPU104处理过的GPU存储器105上的中间数据必须移动至CPU101可访问的RAM103中。然而,在GPU104将中间数据输出至RAM103的情况下,必须经由未图示的总线而传送,但此时有可能占有总线的传送频带,而导致其它处理延迟。例如,在区块由8×8像素构成,作为中间数据的区块内的各数据由16bit的值构成的情况下,会针对一个区块输出16bit×8×8=1024bit的信息。也就是说,虽也取决于对象图片的像素数,但如果对为实现效率化而并行处理的多个区块分别输出中间数据,则在一帧中传送与区块数对应容量的数据。
[0041] 因此,本实施方式的数据生成处理中,以能够由更少的信息量构成中间数据的方式进行数据转换。此外,由于中间数据如下所述在可变长度编码处理中被无损压缩,所以输出用数据以能够确定出中间数据的数据串的方式构成。
[0042] <数据生成处理>
[0043] 此处,使用图3的流程图对本实施方式的GPU104执行的数据生成处理进行详细说明。
[0044] S301中,GPU104对除去空间冗长性后的各区块中所包含的数据(中间数据),按照后段的无损压缩的压缩率变高的效率性的顺序开始扫描。此外,在本发明的实施中扫描的顺序并不限定于此,例如也可以按照其它顺序进行扫描,例如图4所示的从低频率成分(直流成分)向高频率成分的顺序(所谓锯齿状扫描)等。另外,在以下说明中说明对与一个区块对应的中间数据的处理,但也可以针对多个区块同时执行本数据生成处理。
[0045] S302中,GPU104判断已扫描的1数据的值是否为非零值。在判断为已扫描的1数据的值为非零值的情况下,GPU104将处理转移至S303,在判断为零的情况下,GPU104将处理转移至S306。
[0046] S303中,GPU104判断已扫描的非零值的数据数是否超过作为阈值的28个。
[0047] 本实施方式的编码处理中,由于在GPU104中同时进行关于多个区块的正交转换处理或量化处理等,所以处理后的输出用数据的输出也是被并列执行。在该情况下,为了避免引起RAM103中的写入地址的竞争,必须在考虑输出用数据的数据尺寸的基础上来调整与各区块对应的该输出用数据的写入开始地址。另一方面,在CPU101读出写入至RAM103的各区块的数据(输出用数据)以用于进行下述无损压缩处理时,优选为各区块的数据的读出地址连续。具体来说,由于在从RAM103读出数据时因发生有关非连续的地址变更的预充电等而可能生成读出延迟,所以优选为各区块的数据按照CPU101中的处理顺序被写入至RAM103。
[0048] 因此,本实施方式的数据生成处理中,作为将输出用数据收敛于固定数据尺寸的判断基准,设置包含于中间数据的非零值的数据数的阈值。本实施方式的数据生成处理中生成的输出用数据如图5所示是由区块的扫描顺序中的数据串中表示各数据是否为非零值的下述比特串、与为非零值的数据构成。该输出用数据构成为能够从所包含的两种信息中确定出中间数据的扫描顺序中的数据串。也就是说,在本步骤中,进行所述判断的目的是避免因该输出用数据中后者的非零值的数据数超过阈值而生成写入开始地址的竞争。
[0049] 在判断为已扫描的非零值的数据数超过阈值的情况下,GPU104将处理转移至S308,在判断为不超过阈值的情况下,GPU104将处理转移至S304。
[0050] S304中,GPU104将表示已扫描的1数据是否为非零值的比特串(确定信息)的对应比特设定为1。比特串只要存在相当于中间数据内的数据数的量即可,例如在区块由8×8=64像素构成的情况下,可由1bit×64个=64bit的数据串构成。在本步骤中,GPU104对于预先确保在GPU存储器105上的64bit的区域的比特,选择扫描顺序中的对应位置的比特而设定值。也就是说,通过本步骤与下述S306的处理,该比特串成为从前端比特开始依序列举表示各比特是否为扫描中间数据内的数据的顺序中的非零值的值的形式。
[0051] 中间数据中,一般来说,中间数据的值为零的数据存在的频率高。也就是说,在中间数据内的各数据为16bit的情况下,即使是值为零的数据,CPU101也必须读出相当于16bit的数据。本实施方式的PC100中,在编码处理的CPU101的处理中,通过减少以高频率存在的零的读出次数,而减少CPU101中的下述无损压缩处理所需要的时间。也就是说,在下述无损压缩处理中,CPU101通过读出该比特串,可掌握按照扫描顺序排列的中间数据的数据串中,各数据是否为非零值的信息。
[0052] S305中,GPU104将为非零值的经扫描的1数据追加写入至确保为继比特串之后的数据的区域。也就是说,通过设置比特串,可排除下述无损压缩处理中的为零的数据的读出,所以仅将应写入至RAM103的非零值追加至后续的区域。
[0053] 另一方面,在S302中判断为经扫描的1数据并非为非零值的情况下,GPU104在S306中,将比特串的对应比特设定为0。此外,容易理解为在将对应比特预先以0初始化的情况下,不需要本步骤。
[0054] S307中,GPU104判断是否已扫描包含于中间数据的所有数据。在判断为已扫描所有数据的情况下,GPU104结束本数据生成处理,在判断为存在未扫描的数据的情况下,GPU104将处理返回至S302。
[0055] 这样一来,通过重复进行S304至S307的处理,能够生成预先规定的数据尺寸的输出用数据。例如,在如上所述那样中间数据内分别存在8×8=64个具有16bit的值的数据的情况下,利用S303的处理保证非零值的数据数为28个以下,所以输出用数据可构成为相当于64bit+16bit×28=512bit的固定长度数据。也就是说,在下述向RAM103的写入中,可将多个区块的输出用数据以写入地址连续的方式写入。
[0056] 另一方面,在S303中判断为经扫描的非零值的数据数超过阈值的情况下,GPU104在S308中,对于将中间数据的所有数据除以2所得的新中间数据,进行从S301开始的处理。除以2的计算例如可以为比特移位运算,由此可减少数据值为1、-1的数据数。此外,在仅执行一次本步骤而无法将中间数据的非零值的数据数收敛于阈值以下的情况下,只要重复执行本步骤的处理即可。这样一来,在进行数据数的调整的情况下,本步骤的执行次数、也就是除以2的次数例如只要包含在比特串的前端位置等并且能够识别即可。
[0057] 此外,在中间数据的非零值的数据数超过阈值的情况下,也可以通过将认为对画质的影响度低的例如+2、+1、-1、-2等的数据值的绝对值为预先规定的阈值以下的数据视为零数据,而进行非零值的数据数的调整。另外,将认为对画质的影响度低的数据视为零的该方法也可以不限定于在非零值的数据数超过阈值的情况下执行。
[0058] 这样一来,通过执行数据生成处理而生成输出用数据之后,GPU104在S206中,将GPU存储器105中生成的各区块的输出用数据传送至RAM103并从与各区块对应的开始地址写入。
[0059] S207中,CPU101读出已写入至RAM103的各区块的输出用数据,一边参照该数据中的比特串一边应用无损压缩处理,生成一帧的编码动态图像数据。本步骤中进行的无损压缩处理为霍夫曼(Huffman)编码等所谓熵(entropy)编码(可变长度编码)处理。CPU101在本步骤的处理中从输出用数据中确定出中间数据的数据串的构成,然后分配适当的码进行压缩处理。
[0060] S208中,CPU101判断对象动态图像数据中是否存在未被编码的不同的帧。在判断为对象动态图像数据中存在未被编码的后续帧的情况下,CPU101将处理转移至S202,在判断为不存在的情况下,CPU101结束本编码处理。此外,本步骤中的判断为一例,例如在GPU104与CPU101的处理分别同时进行的情况下,也可以在执行本步骤时已经对下一帧开始GPU104的处理。在这种情况下不将处理转移至S202,而可构成为CPU101待机至编码处理中的GPU104的处理结束为止后执行S207的处理。
[0061] 此外,本实施方式中对避免占有PC100中的总线的传送频带且减少CPU101的存储器读出所需要的时间的优选的一方式进行了说明。然而,实现使用CPU与GPU的编码处理的效率化的情况并不限定于此。例如,在总线的传送频带宽,且数据传送中不会生成问题的情况下,继比特串之后的输出用数据并非仅为非零值的数据,也可以包含中间数据的所有数据。也就是说,只要CPU101可掌握表示各数据是否为非零值的信息的比特串,即可掌握无需读出的零数据的地址,所以可减少存储器读出所需要的时间。另外,例如,只要可确定出包含在值为特定的范围(可视为零的范围)内的数据的中间数据的数据串中的位置,即可至少减少存储器读出的处理时间。因此,也可以将具有与比特串不同的形式的信息写入至RAM103。
[0062] 进而,本实施方式中说明了根据CPU101与GPU104各者能够有效率地执行的处理的特性,将编码处理的各步骤分离执行的情况。具体来说,将能够针对多个区块并行执行能以特定的运算式执行的简单运算的处理(排除空间冗长性的处理)分配至擅长并行计算的GPU104。另外,将因压缩后的数据尺寸变动而难以并行执行的处理(无损压缩处理)分配至擅长比特解析等复杂的比特运算的CPU101。换句话说,尽量不对需要处理时间来应对复杂的比特运算的GPU104分配进行该运算的处理,尽量不对运算核心少而无法预计并行处理的效率化的CPU101分配进行并列运算的处理。然而,本发明的实施即使不根据所述CPU101及GPU104的特性而分开执行,也可预计编码处理的效率化。例如,在GPU104中与比特运算所需要的时间相比可预计并行运算的效率化的情况下,也可以在GPU104中将已进行中间数据的行程长度(run-length)编码的数据作为输出用数据写入至RAM103。由此,CPU101可缩短存储器读出的时间,而且也可以缩短无损压缩的处理时间。也就是说,在CPU101的处理中,通过由GPU104生成能够将读出时间缩短为比中间数据本身的存储器读出的时间短的输出用数据,也可以实现编码处理的效率化。
[0063] 如以上所说明,本实施方式的信息处理装置通过使用CPU与GPU可有效率地进行编码处理。具体来说,在信息处理装置中,GPU获取将编码对象的图像分割所得的具有既定像素数的多个区块,针对各区块,生成排除空间冗长性后的中间区块。进而,GPU解析各中间区块的数据串,生成确定出该数据串中的值包含在既定范围内的数据的位置的确定信息,针对各区块的每一个,将中间区块的至少一部分数据及对应的确定信息输出至存储装置。另外,CPU针对多个区块的每一个,参照对应的确定信息,从存储装置中读出与该确定信息对应的至少一部分数据并执行压缩处理。
[0064] [其它实施方式]
[0065] 本发明的信息处理装置也可以由使计算机作为信息处理装置发挥功能的程序而实现。该程序可以通过存储于计算机可读取的存储介质,或经由电气通讯线路而提供/发布。
[0066] 本发明并不限制于所述实施方式,可在不脱离本发明的精神及范围的情况下进行各种变更及变形。因此,为了公开本发明的范围,而附加以上的请求项。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈