图像处理方法和电子设备的制作方法

文档序号:7772338阅读:196来源:国知局
图像处理方法和电子设备的制作方法
【专利摘要】提供了一种图像处理方法和电子设备。所述图像处理方法应用于电子设备中,所述电子设备包括第一处理单元和第二处理单元。所述方法包括:通过所述第一处理单元读取具有第一编码格式的图像文件;通过所述第一处理单元对所述图像文件进行分析,以获取解码所述图像文件所需的相关信息;将所述相关信息和所述图像文件中的图像数据作为压缩纹理传输给所述第二处理单元;以及所述第二处理单元根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。
【专利说明】图像处理方法和电子设备

【技术领域】
[0001 ] 本申请涉及图像处理方法和电子设备。

【背景技术】
[0002]对于嵌入式GPU (图形处理单元)而言,带宽是最宝贵的资源,而使用压缩纹理是节约带宽的最重要手段。在GPU上可以支持的压缩纹理格式有DXT、ATC、ETC等。它们的压缩率不高。在保证一定质量的前提下,最高可以将RGB格式原始图像压缩至原大小的1/3至1/6,而且这些图片格式都是GPU的专用格式,绝大多数的作图软件无法直接识别并编辑它们。
[0003]另外,JPEG是目前电子设备中最常用的压缩图片格式,具有压缩率高、画质损失小、编解码相对简单快速的优点。但不幸的是,目前市面上的GPU无法直接将JPEG格式图片作为压缩纹理来使用。
[0004]为了使用JPEG格式图片,现有技术中的解决方案使用CPU将JPEG解码为RGB。然后,使用CPU将RGB编码为DXT、ETC等格式。最后,将编码好的图片传给GPU当做纹理使用。
[0005]然而,该方案的缺点是:DXT、ETC等压缩纹理格式多是各GPU厂商自己定义,绝大多数的作图软件无法直接识别并编辑它们,格式多样,标准不统一,给用户和程序员带来诸多不便。另外,编解码耗费了大量的CPU资源。最后,该方案的压缩率恒定,无法动态调整。
[0006]因此,期望提供一种新颖的和改进的图像处理方法和电子设备,其能够在降低CPU负载的情况下使用JPEG格式图片作为压缩纹理。


【发明内容】

[0007]根据本发明实施例,提供了一种图像处理方法,应用于电子设备中,所述电子设备包括第一处理单元和第二处理单元,所述方法包括:
[0008]通过所述第一处理单元读取具有第一编码格式的图像文件;
[0009]通过所述第一处理单元对所述图像文件进行分析,以获取解码所述图像文件所需的相关彳目息;
[0010]将所述相关信息和所述图像文件中的图像数据作为压缩纹理传输给所述第二处理单元;以及
[0011]所述第二处理单元根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。
[0012]优选地,通过所述第一处理单元对所述图像文件进行分析,以获取解码所述图像文件所需的相关信息包括:
[0013]通过所述第一处理单元从所述图像文件的文件头中读出解码所述图像所需的解码信息;以及
[0014]通过所述第一处理单元遍历所述图像文件中的图像数据,以预定大小的块为单位将所述图像的数据划分为多个数据块,生成记录每个数据块在所述图像中的相对起始地址的位置信息。
[0015]优选地,所述第二处理单元根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据包括:
[0016]根据目标像素的纹理坐标,计算所述目标像素的色彩空间的各分量分别所属的数据块;
[0017]查询所述位置信息以获得目标数据块的相对起始地址;
[0018]根据获得的相对起始地址计算得到目标数据块的绝对地址,并且从该绝对地址取回相应的目标数据块;
[0019]对每个数据块执行解码,获得数据块中每个像素点的纹理颜色数据;
[0020]根据目标像素的纹理坐标,计算目标像素在数据块中的位置,从而获得该位置处的像素点的纹理颜色数据作为目标像素的纹理颜色数据。
[0021]优选地,所述图像处理方法还包括:
[0022]存储已经解码的数据块中剩余像素点的纹理颜色数据,作为相关像素的纹理颜色数据。
[0023]优选地,所述解码信息至少包括图像的宽度和高度、颜色分量数、各分量的采样率、量化表和哈夫曼表。
[0024]优选地,所述图像处理方法还包括:
[0025]通过调整所述量化表以调整图像的压缩率。
[0026]优选地,所述第一编码格式的图像文件是联合图像专家组JPEG编码格式的图像文件。
[0027]优选地,所述第一处理单元是电子设备的中央处理单元CPU,并且所述第二处理单元是电子设备的图形处理单元GPU。
[0028]根据本发明另一实施例,提供了一种电子设备,包括:
[0029]第一处理单元,包括:
[0030]获取子单元,用于读取具有第一编码格式的图像文件;
[0031]分析子单元,用于对所述图像文件进行分析,以获取解码所述图像文件所需的相关信息;以及
[0032]传输单子元,用于将所述相关信息和所述图像文件中的图像数据作为压缩纹理传输给所述第二处理单元,以及
[0033]第二处理单元,用于根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。
[0034]优选地,所述分析子单元进一步配置为:
[0035]从所述图像文件的文件头中读出解码所述图像所需的解码信息;以及
[0036]遍历所述图像文件中的图像数据,以预定大小的块为单位将所述图像的数据划分为多个数据块,生成记录每个数据块在所述图像中的相对起始地址的位置信息。
[0037]优选地,所述第二处理单元包括:
[0038]数据块计算子单元,用于根据目标像素的纹理坐标,计算所述目标像素的色彩空间的各分量分别所属的数据块;
[0039]查询子单元,用于查询所述位置信息以获得目标数据块的相对起始地址;
[0040]取回子单元,用于根据获得的相对起始地址计算得到目标数据块的绝对地址,并且从该绝对地址取回相应的目标数据块;
[0041]解码子单元,用于对每个数据块执行解码,获得数据块中每个像素点的纹理颜色数据;
[0042]纹理颜色数据计算子单元,用于根据目标像素的纹理坐标,计算目标像素在数据块中的位置,从而获得该位置处的像素点的纹理颜色数据作为目标像素的纹理颜色数据。
[0043]优选地,所述电子设备还包括:
[0044]存储单元,用于存储已经解码的数据块中剩余像素点的纹理颜色数据,作为相关像素的纹理颜色数据。
[0045]优选地,所述解码信息至少包括图像的宽度和高度、颜色分量数、各分量的采样率、量化表和哈夫曼表。
[0046]优选地,所述电子设备还包括调整单元,用于通过调整所述量化表以调整图像的压缩率。
[0047]因此,根据本发明的图像处理方法和电子设备,能够在降低CPU负载的情况下使用JPEG格式图片作为压缩纹理。

【专利附图】

【附图说明】
[0048]图1是示出根据本发明实施例的图像处理方法的流程图;以及
[0049]图2是示出根据本发明实施例的电子设备的功能配置的框图。

【具体实施方式】
[0050]下面,将参考附图详细描述根据本发明实施例的图像处理方法。
[0051]图1是示出根据本发明实施例的图像处理方法的流程图。
[0052]根据本发明实施例的图像处理方法应用于电子设备中,所述电子设备包括第一处理单元和第二处理单元。所述电子设备可以是任何电子设备,如大型机、个人计算机(PC)、台式机、笔记本计算机、智能手机、智能电视等等,只要该电子设备具有第一处理单元和第二处理单元。在本实施例中,优选地,所述第一处理单元是电子设备的中央处理单元CPU,并且所述第二处理单元是电子设备的图形处理单元GPU。
[0053]所述方法包括:
[0054]步骤SlOl:通过所述第一处理单元读取具有第一编码格式的图像文件;
[0055]步骤S102:通过所述第一处理单元对所述图像文件进行分析,以获取解码所述图像文件所需的相关信息;
[0056]步骤S103:将所述相关信息和所述图像文件中的图像数据作为压缩纹理传输给所述第二处理单元;以及
[0057]步骤S104:所述第二处理单元根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。
[0058]在步骤SlOl中,例如,通过CPU读取JPEG格式的图像文件。
[0059]需要注意的是,因为目前JPEG格式的图像文件不能被GPU直接处理,所以必须通过CPU来读取。另外,对大多数图片而言,JPEG格式比DXT、ETC格式有更高的压缩率和更好的效果,可以更大的节省宝贵的带宽资源。
[0060]然后,在步骤S102中,通过CPU对所述JPEG图像文件进行分析,以获取解码所述图像文件所需的相关信息。
[0061]具体地,通过所述第一处理单元对所述图像文件进行分析,以获取解码所述图像文件所需的相关信息包括:
[0062]通过所述第一处理单元从所述图像文件的文件头中读出解码所述图像所需的解码信息。所述解码信息至少包括图像的宽度和高度、颜色分量数、各分量的采样率、量化表和哈夫曼表。
[0063]然后,通过所述第一处理单元遍历所述图像文件中的图像数据,以预定大小的块为单位将所述图像的数据划分为多个数据块,生成记录每个数据块在所述图像中的相对起始地址的位置信息。例如,CPU跳过图像文件的文件头,遍历JPEG图像文件中的图像数据部分,以8x8数据块为单位,将JPEG图像文件的图像数据部分划分为多个数据块。然后,生成记录每个数据块在所述图像中的相对起始地址的位置信息。
[0064]也就是说,解码所述图像文件所需的相关信息包括上述解码信息和位置信息两者。
[0065]在步骤S103中,将所述相关信息和所述图像文件中的图像数据作为压缩纹理传输给所述第二处理单元。
[0066]在步骤S104中,所述第二处理单元根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。
[0067]在该步骤104中,当GPU端需要使用JPEG格式纹理,对一个像素进行纹理贴图时,GPU根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。也就是说,此时,GPU不需要解码所有的图像数据,而只需要根据目标像素的纹理坐标来解码相应的图像数据,就可以获得目标像素的纹理颜色数据。
[0068]具体来说,所述第二处理单元根据目标像素的纹理坐标,计算所述目标像素的色彩空间的各分量分别所属的数据块;查询所述位置信息以获得目标数据块的相对起始地址;根据获得的相对起始地址计算得到目标数据块的绝对地址,并且从该绝对地址取回相应的目标数据块;对每个数据块执行解码,获得数据块中每个像素点的纹理颜色数据;以及根据目标像素的纹理坐标,计算目标像素在数据块中的位置,从而获得该位置处的像素点的纹理颜色数据作为目标像素的纹理颜色数据。
[0069]在一个实施例中,所述图像处理方法100还包括:
[0070]存储已经解码的数据块中剩余像素点的纹理颜色数据,作为相关像素的纹理颜色数据。
[0071]在另一个实施例中,所述图像处理方法100还包括:
[0072]通过调整所述量化表以调整图像的压缩率。
[0073]下面,以当前主流GPU可以支持的最大尺寸(4096x4096)图片为例进行具体说明。
[0074]当4096x4096的图片以RGB888方式存储为BMP格式时,图片占用内存大小为:
[0075]4096x4096x3=48M Byte
[0076]在保存为目前可以支持的压缩纹理格式后,内存占用为原来的1/3?1/6,即SM?16M。
[0077]如果使用PhotoShop软件,将BMP图片压缩为JPEG格式,则压缩质量可以选择高,中,低三档。对绝大多数图片而言,它们分别对应的压缩率在10倍、20倍和30倍以上,而且对于高,中档的压缩,人眼几乎无法分别它们与原始图像的差别。
[0078]但是,目前无法直接将JPEG格式图片作为纹理数据供GPU使用,主要是因为JPEG使用的是变长编码方式。当GPU端需要使用JPEG格式纹理,对一个像素进行纹理贴图时,根据目标像素的纹理坐标,无法快速准确定位出其在码流中的位置,而是必须从第一个像素开始解码,直到获得目标像素的纹理数据。
[0079]此时,CPU必须进行大量的解码操作,这极大地增加了 CPU的负载。
[0080]然而,根据本发明实施例的图像处理方法,对于一张JPEG图片,CPU首先从其文件头中读出必须的解码信息,包括图片的宽高,颜色分量数,各分量的采样率,以及四张量化表和四张哈夫曼表等等。然后将这些信息传给GPU—端。这些信息总的数据量很小,一般不会超过1Kbyte。
[0081]CPU不需要对图片解码,只需根据哈夫曼表,对JPEG的图像数据进行一次遍历,记录下每个8x8数据块在图片中的相对起始地址,精确到bit。这样,每个地址需要4Byte存储空间。对于最常用的YUV4:1:1格式4096x4096大小图片而言,需要的总存储空间用S表示,计算如下:
[0082]Sy=4096x4096/8/8x4=lM Byte
[0083]Scb=Scr=l/4x Sy=0.25M Byte
[0084]S=Sy+Scb+Scr=l.5M Byte
[0085]其中,Sy是颜色分量Y的每个8x8数据块在图片中的相对起始地址,Scb是颜色分量U的每个8x8数据块在图片中的相对起始地址,以及Scr是颜色分量V的每个8x8数据块在图片中的相对起始地址。
[0086]上式说明,记录图片中所有8x8数据块的相对起始地址,共需要1.5M byte空间,用Ta表示,Ta中的数据由CPU负责记录,然后作为另一张纹理,同原始的JPEG图片数据,一起传给GPU。这样CPU只负责统计,而不需要进行复杂的解码、DCT变换、色彩空间变换等运算,大大降低了负载。
[0087]当GPU端需要使用JPEG格式纹理,对一个像素进行纹理贴图时,步骤如下:
[0088]1.首先根据像素的纹理坐标,计算出其YUV分量分别属于哪个8x8数据块。
[0089]2.查询Ta得到数据块的相对起始地址。
[0090]3.根据相对起始地址计算得到绝对地址,并从内存中取回相应的数据块。
[0091]4.对每个数据块进行解码,得到8x8个点的RGB数据。
[0092]5.根据纹理坐标,算出最终需要的点在8x8数据块中的位置,得到其RGB颜色。
[0093]需要注意的是,上述步骤4中的解码过程包括:哈夫曼解码、反量化、反DCT变换、YUV到RGB转换等步骤,可以用专用硬件实现,也可以由GPU的强大运算单元完成,无论何种方式,都已有非常成熟的实现方案,具有速度快,开销小,成本低的特点。
[0094]另外,需要注意的是,即使当只需要一个点的时候,也必须对整个8x8数据块进行解码,但大多数情况下,这并不会产生浪费,因为多余的点可以保存在GPU的cache中,根据场景中纹理贴图的一般规律,在对接下来的像素进行纹理贴图时,cache会有极高的命中率。因此,通过用cache保存已经解码的8x8数据块,可以用于今后其它目标像素点。也就是说,当其它目标像素点的纹理坐标对应于已经解码的数据块时,此时不需要再执行解码操作,而是可以直接从cache中取回已经解码的数据,从而大大减少GPU的工作负载。
[0095]最后计算根据本发明实施例的图像处理方法的压缩率。还是以YUV4:1:1格式,4096x4096大小图片为例,如上面所计算的,以RGB888方式存储为BMP格式时,需要48M存储空间,而使用根据本发明实施例的图像处理方法,所需要的空间主要由三部分组成:
[0096]1.文件头中包含的有用信息,大小不超过IK Byte。
[0097]2.记录每个8x8数据块相对起始位置的表Ta,大小为1.5M Byte0
[0098]3.原始JPEG图像数据。
[0099]其中I和2大小恒定,总共不超过1.6M Byte ;3的大小由JPEG压缩质量决定。压缩率可以选择高,中,低三档。对绝大多数图片而言,保守计算,它们分别对应的压缩率在10倍、20倍和30倍以上,以此计算可知对于第3项,压缩后的图像数据大小分别为4.8M、2.4M和 1.6M。
[0100]将上述第1、2和3项加在一起获得的大小分别为6.4M、4M和3.2M。因此,对于原始图像RGB888格式的48M,压缩率大约可以在1/7?1/15之间调整。
[0101]因此,根据本发明的图像处理方法,CPU端对JPEG图片进行简单分析,得到解码需要的有用信息。然后,CPU将JPEG图片的数据部分以及步骤I中分析得到的信息,作为压缩纹理共同传递给GPU。最后,GPU根据图片信息以及像素的纹理坐标,先找到相应位置的数据块,然后进行JPEG解码,从而得到纹理颜色。
[0102]因此,根据本发明的图像处理方法,对大多数图片而言,JPEG格式比DXT、ETC格式有更高的压缩率和更好的效果,可以更大的节省宝贵的带宽资源。另外,在JPEG图片中,用户可以根据实际需求,自己定义量化表,从而灵活的调整图片压缩率。此外,由于大多数工作由GPU完成,从而极大的降低了 CPU负载。最后,JPEG为应用最广泛的标准图片格式,所有软件都可以支持,便于用户编辑修改。
[0103]因此,根据本发明的图像处理方法,能够在降低CPU负载的情况下使用JPEG格式图片作为压缩纹理。
[0104]下面,参考图2描述根据本发明另一实施例的电子设备。所述电子设备包括第一处理单元和第二处理单元。所述电子设备可以是任何电子设备,如大型机、个人计算机(PC)、台式机、笔记本计算机、智能手机、智能电视等等,只要该电子设备具有第一处理单元和第二处理单元。在本实施例中,优选地,所述第一处理单元是电子设备的中央处理单元CPU,并且所述第二处理单元是电子设备的图形处理单元GPU。所述第一编码格式的图像文件是联合图像专家组JPEG编码格式的图像文件。通常,所述第二处理单元不能直接处理JPEG编码格式的图像文件。
[0105]根据本发明实施例的电子设备200包括:
[0106]第一处理单元201,包括:
[0107]获取子单元2011,用于读取具有第一编码格式的图像文件;
[0108]分析子单元2012,用于对所述图像文件进行分析,以获取解码所述图像文件所需的相关?目息;以及
[0109]传输单子元2013,用于将所述相关信息和所述图像文件中的图像数据作为压缩纹理传输给所述第二处理单元,以及
[0110]第二处理单元202,用于根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。
[0111]优选地,所述分析子单元2012进一步配置为:
[0112]从所述图像文件的文件头中读出解码所述图像所需的解码信息;以及
[0113]遍历所述图像文件中的图像数据,以预定大小的块为单位将所述图像的数据划分为多个数据块,生成记录每个数据块在所述图像中的相对起始地址的位置信息。
[0114]优选地,所述第二处理单元202包括:
[0115]数据块计算子单元2021,用于根据目标像素的纹理坐标,计算所述目标像素的色彩空间的各分量分别所属的数据块;
[0116]查询子单元2022,用于查询所述位置信息以获得目标数据块的相对起始地址;
[0117]取回子单元2023,用于根据获得的相对起始地址计算得到目标数据块的绝对地址,并且从该绝对地址取回相应的目标数据块;
[0118]解码子单元2024,用于对每个数据块执行解码,获得数据块中每个像素点的纹理颜色数据;
[0119]纹理颜色数据计算子单元2024,用于根据目标像素的纹理坐标,计算目标像素在数据块中的位置,从而获得该位置处的像素点的纹理颜色数据作为目标像素的纹理颜色数据。
[0120]此外,所述电子设备200还包括:
[0121]存储单元203,用于存储已经解码的数据块中剩余像素点的纹理颜色数据,作为相关像素的纹理颜色数据。
[0122]在一个实施例中,所述解码信息至少包括图像的宽度和高度、颜色分量数、各分量的采样率、量化表和哈夫曼表。
[0123]在一个实施例中,所述电子设备200还包括调整单元204,用于通过调整所述量化表以调整图像的压缩率。
[0124]也就是说,该电子设备200的各个单元配置为执行上面描述的图像处理方法的相应步骤。
[0125]因此,根据本发明的电子设备,能够在降低CPU负载的情况下使用JPEG格式图片作为压缩纹理。
[0126]需要注意的是,在图示根据各个实施例的电子设备时仅仅示出了其功能单元,并没有具体描述各个功能单元的连接关系,本领域技术人员可以理解的是,各个功能单元可以通过总线、内部连接线等等适当地连接,这样的连接对于本领域技术人员来说是熟知的。
[0127]需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0128]最后,还需要说明的是,上述一系列处理不仅包括以这里所述的顺序按时间序列执行的处理,而且包括并行或分别地、而不是按时间顺序执行的处理。
[0129]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对【背景技术】做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0130]以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种图像处理方法,应用于电子设备中,所述电子设备包括第一处理单元和第二处理单元,所述方法包括: 通过所述第一处理单元读取具有第一编码格式的图像文件; 通过所述第一处理单元对所述图像文件进行分析,以获取解码所述图像文件所需的相关信息; 将所述相关信息和所述图像文件中的图像数据作为压缩纹理传输给所述第二处理单元;以及 所述第二处理单元根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。
2.如权利要求1所述的图像处理方法,其中,通过所述第一处理单元对所述图像文件进行分析,以获取解码所述图像文件所需的相关信息包括: 通过所述第一处理单元从所述图像文件的文件头中读出解码所述图像所需的解码信息;以及 通过所述第一处理单元遍历所述图像文件中的图像数据,以预定大小的块为单位将所述图像的数据划分为多个数据块,生成记录每个数据块在所述图像中的相对起始地址的位置信息。
3.如权利要求2所述的图像处理方法,其中,所述第二处理单元根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据包括: 根据目标像素的纹理坐标,计算所述目标像素的色彩空间的各分量分别所属的数据块; 查询所述位置信息以获得目标数据块的相对起始地址; 根据获得的相对起始地址计算得到目标数据块的绝对地址,并且从该绝对地址取回相应的目标数据块; 对每个数据块执行解码,获得数据块中每个像素点的纹理颜色数据; 根据目标像素的纹理坐标,计算目标像素在数据块中的位置,从而获得该位置处的像素点的纹理颜色数据作为目标像素的纹理颜色数据。
4.如权利要求3所述的图像处理方法,还包括: 存储已经解码的数据块中剩余像素点的纹理颜色数据,作为相关像素的纹理颜色数据。
5.如权利要求2所述的图像处理方法,其中,所述解码信息至少包括图像的宽度和高度、颜色分量数、各分量的采样率、量化表和哈夫曼表。
6.如权利要求5所述的图像处理方法,还包括: 通过调整所述量化表以调整图像的压缩率。
7.如权利要求1所述的图像处理方法,其中,所述第一编码格式的图像文件是联合图像专家组JPEG编码格式的图像文件。
8.如权利要求1所述的图像处理方法,其中,所述第一处理单元是电子设备的中央处理单元CPU,并且所述第二处理单元是电子设备的图形处理单元GPU。
9.一种电子设备,包括: 第一处理单元,包括: 获取子单元,用于读取具有第一编码格式的图像文件; 分析子单元,用于对所述图像文件进行分析,以获取解码所述图像文件所需的相关信息;以及 传输单子元,用于将所述相关信息和所述图像文件中的图像数据作为压缩纹理传输给所述第二处理单元,以及 第二处理单元,用于根据目标像素的纹理坐标以及所述相关信息,解码所述图像数据以获得所述目标像素的纹理颜色数据。
10.如权利要求9所述的电子设备,其中,所述分析子单元进一步配置为: 从所述图像文件的文件头中读出解码所述图像所需的解码信息;以及 遍历所述图像文件中的图像数据,以预定大小的块为单位将所述图像的数据划分为多个数据块,生成记录每个数据块在所述图像中的相对起始地址的位置信息。
11.如权利要求10所述的电子设备,其中,所述第二处理单元包括: 数据块计算子单元,用于根据目标像素的纹理坐标,计算所述目标像素的色彩空间的各分量分别所属的数据块; 查询子单元,用于查询所述位置信息以获得目标数据块的相对起始地址; 取回子单元,用于根据获得的相对起始地址计算得到目标数据块的绝对地址,并且从该绝对地址取回相应的目标数据块; 解码子单元,用于对每个数据块执行解码,获得数据块中每个像素点的纹理颜色数据; 纹理颜色数据计算子单元,用于根据目标像素的纹理坐标,计算目标像素在数据块中的位置,从而获得该位置处的像素点的纹理颜色数据作为目标像素的纹理颜色数据。
12.如权利要求11所述的电子设备,还包括: 存储单元,用于存储已经解码的数据块中剩余像素点的纹理颜色数据,作为相关像素的纹理颜色数据。
13.如权利要求10所述的电子设备,其中,所述解码信息至少包括图像的宽度和高度、颜色分量数、各分量的采样率、量化表和哈夫曼表。
14.如权利要求13所述的电子设备,还包括调整单元,用于通过调整所述量化表以调整图像的压缩率。
【文档编号】H04N19/186GK104519353SQ201310455244
【公开日】2015年4月15日 申请日期:2013年9月29日 优先权日:2013年9月29日
【发明者】汪宇飞 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1