CN108171662B - 读取图像压缩数据的方法及包含该方法的反畸变方法 - Google Patents
读取图像压缩数据的方法及包含该方法的反畸变方法 Download PDFInfo
- Publication number
- CN108171662B CN108171662B CN201711363454.5A CN201711363454A CN108171662B CN 108171662 B CN108171662 B CN 108171662B CN 201711363454 A CN201711363454 A CN 201711363454A CN 108171662 B CN108171662 B CN 108171662B
- Authority
- CN
- China
- Prior art keywords
- image
- block
- data
- original image
- compressed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000007906 compression Methods 0.000 title claims description 12
- 230000006835 compression Effects 0.000 title claims description 11
- 238000013507 mapping Methods 0.000 claims abstract description 72
- 230000006837 decompression Effects 0.000 claims description 29
- 238000004364 calculation method Methods 0.000 claims description 19
- 239000006185 dispersion Substances 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/18—Image warping, e.g. rearranging pixels individually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及一种读取图像压缩数据的方法,包括:获取输出图像块与原始图像块的映射系数;将原始图像划分为M*N像素的单元块,M和N为大于1的正整数,根据映射系数计算输出图像行对应的原始图像行的像素点所在单元块的坐标;根据输出图像行对应的原始图像中的单元块的坐标生成所述单元块的压缩块的头信息地址,根据头信息地址读取压缩块的头信息;根据压缩块的头信息读取原始图像的压缩块的数据。可实现按输出图像行读取对应的输入图像压缩块数据,并可将读取到的压缩数据直接进行解压缩,减小读数据时的带宽,降低显示延迟。
Description
技术领域
本发明涉及图像处理领域,具体涉及一种读取图像压缩数据的方法及包含该方法的反畸变方法。
背景技术
在VR系统中,通常是利用透镜将显示屏上的图像投射到用户的眼睛中,由于透镜本身的物理特性,会造成投射到用户眼睛的图像产出畸变色散等现象,影响用户体验。
为了避免影响用户体验,可以对传送到显示屏的图像进行预处理。例如,对图像进行的反畸变处理,传送到显示屏上的图像需要从解码后的正常形状(图1左所示)经过畸变成为扭曲形状(图1右所示),而当该扭曲形状(图2左所示)经过透镜显示出来时,由于透镜的光学畸变效果,正好抵消之前的反畸变效果,最终显示出来是正常形状(图2右所示),从而使用户得到较好的体验。
现有技术中,传送到显示装置的图像已经是经过预处理的,给到显示屏直接显示,由GPU完成,读取的数据为原始图像数据或压缩数据。当读取的数据为压缩数据时,需经过GPU做解压缩和预处理,每一帧图像的预处理过程为:从动态随机存取存储器(DRAM)中读取一帧原始图像的压缩数据,由GPU完成解压缩运算并对原始图像进行预处理运算,处理完之后再写回动态随机存取存储器(DRAM)中,显示模块再从动态随机存取存储器(DRAM)中读取已经预处理之后的图像。
同时,为了减少图像数据中的冗余信息,以使得图像数据用更加高效的格式存储和传输数据,通常需要对原始输入的图像进行压缩,所以,通常读取的也是经过压缩的图像数据。现有技术通常是读取一帧原始图像的压缩数据之后再进行解压缩计算及后续的图像处理,会带来图像显示延迟的问题。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种读取图像压缩数据的方法及包含该方法的图像解压缩方法和反畸变方法,克服图像显示延迟、带宽增加、功耗大的缺陷。
本发明解决其技术问题所采用的技术方案是:
提供一种读取图像压缩数据的方法,包括:步骤1,获取输出图像块与原始图像块的映射系数;步骤2,将所述原始图像划分为M*N像素的单元块,所述M和N为大于1的正整数,根据所述映射系数计算所述输出图像行对应的所述原始图像行的像素点所在单元块的坐标;步骤3,根据所述输出图像行对应的所述原始图像中的单元块的坐标生成所述单元块的压缩块的头信息地址,根据所述头信息地址读取所述压缩块的头信息;步骤4,根据所述压缩块的头信息读取所述原始图像的压缩块的数据。
所述步骤1中的映射系数是反畸变映射系数或融合反畸变、反色散和异步时间扭曲的映射系数。
所述步骤1中的映射系数包括R分量映射系数、G分量映射系数和B分量映射系数。
所述步骤1为:采用直接内存存取方式读取所述输出图像块与所述原始图像块的映射系数。
所述采用直接内存存取方式读取所述输出图像块与所述原始图像块的映射系数具体为:生成所述映射系数的内存地址和数据长度;根据所述内存地址和数据长度发送数据;接收所述数据,并将所述数据组合成所述输出图像块与所述原始图像块的映射系数。
所述步骤2具体为:根据所述映射系数计算所述输出图像中像素点对应在所述原始图像中像素点的坐标;将所述原始图像划分为M*N像素的单元块,根据所述输出图像中像素点对应在所述原始图像中像素点的坐标确定所述输出图像行对应的所述原始图像行的单元块;对所述单元块的纵坐标进行排序,根据所述单元块的纵坐标的范围确定所需单元块的坐标;读取所述所需单元块的坐标,当判断需要读取所述输出图像行的后续行对应的所述原始图像中的单元块的坐标时,读取所述输出图像行的后续行对应的所述原始图像中的单元块的坐标。
所述根据所述映射系数计算所述输出图像中像素点对应在所述原始图像中像素点的坐标为:根据所述映射系数计算所述输出图像中像素点对应在所述原始图像中像素点的R分量坐标、G分量坐标和B分量坐标。
所述M和N为2的幂次。
所述对所述单元块的纵坐标进行排序为:对所述单元块中的R分量的纵坐标排序、G分量的纵坐标排序和B分量的纵坐标排序。
所述判断需要读取所述输出图像当前行的后续行对应的所述原始图像中的单元块的坐标的条件是:所述输出图像当前行对应的所述原始图像中的单元块的个数不大于第一阈值。
所述的读取图像压缩数据的方法还包括:将所述输出图像行对应的所述原始图像中的单元块的坐标和所述输出图像行的后续行对应的所述原始图像中的单元块的坐标进行旋转坐标映射。
所述步骤3中的根据所述头信息地址读取所述压缩块的头信息为:根据所述头信息地址采用直接内存存取方式读取所述压缩块的头信息。
所述根据所述头信息地址采用直接内存存取方式读取所述压缩块的头信息具体为:根据所述输出图像行对应的原始图像的单元块的坐标生成所述单元块的压缩块的头信息的内存地址和长度信息;根据所述内存地址和长度信息发送所述单元块的压缩块的头信息;接收所述单元块的压缩块的头信息,并根据所述头信息解析出所述压缩块的内存地址和长度信息。
所述步骤4中的根据所述压缩块的头信息读取所述原始图像的压缩块的数据为:根据所述压缩块的头信息采用直接内存存取方式读取所述原始图像的压缩块的数据。
所述根据所述压缩块的头信息采用直接内存存取方式读取所述原始图像的压缩块的数据具体为:根据所述压缩块的头信息确定所述压缩块数据的内存地址和长度信息;根据所述内存地址和长度信息发送所述压缩块数据;接收所述压缩块的数据。
本发明还提供一种图像解压缩方法,采用如权利要求1至15任一项所述的读取图像压缩数据的方法读取原始图像的压缩块的数据,并对所述原始图像的压缩块的数据进行解压。
所述图像解压缩方法还包括:当所述图像的压缩块解压后不是M*N像素时,将多组压缩块解压后重新排序拼成M*N像素的单元块。
所述解压后的图像数据按照所述原始图像的压缩数据的排列方式进行缓存。
本发明还提供一种反畸变方法,采用如权利要求16至18任一项所述的图像解压缩方法读取原始图像的压缩块的数据并解压;根据输出图像像素点对应的所述原始图像像素点的坐标读取所述原始图像的图像数据;根据所述原始图像的图像数据进行插值计算,以生成所述输出图像。
所述插值计算为双线性插值计算或双三次插值计算。
本发明还提供一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行如权利要求1至15任一项所述的图像压缩数据读取的方法。
本发明还提供一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行如权利要求16至18任一项所述的图像解压缩方法。
本发明还提供一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行如权利要求19或20所述的反畸变方法。
本发明还提供一种读取图像压缩数据的装置,包括:处理器,用于实现各指令;以及存储设备,用于存储多条指令,所述指令用于由所述处理器加载并执行如权利要求1至15任一项所述的图像压缩数据读取的方法。
本发明还提供一种图像解压缩装置,包括:处理器,用于实现各指令;以及存储设备,用于存储多条指令,所述指令用于由所述处理器加载并执行如权利要求16至18任一项所述的图像解压缩方法。
本发明还提供一种反畸变装置,包括:处理器,用于实现各指令;以及存储设备,用于存储多条指令,所述指令用于由所述处理器加载并执行如权利要求19或20所述的反畸变方法。
本发明的有益效果在于,通过提供一种读取图像压缩数据的方法及包含该方法的图像解压缩方法和反畸变方法,可实现按输出图像行读取对应输入图像压缩块数据,并可将读取到的压缩数据直接进行解压缩,不需要读取一帧图像再进行解压缩计算,减小读数据时的带宽,降低显示延迟。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是现有技术的原始图像畸变成扭曲形状的示意图;
图2是现有技术的原始图像畸变成扭曲形状后经过透镜显示出正常形状的示意图;
图3是本发明一实施例的读取图像压缩数据的方法100的流程图;
图4是本发明一实施例的输出图像分块示意图;
图5是本发明图4所示输出图像块的映射系数在内存中排放示意图;
图6是本发明一实施例的坐标计算方法200的流程图;
图7是本发明一实施例的输出图像一行对应的原始图像的单元块的示意图;
图8是本发明一实施例的压缩单元的头信息和压缩数据在内存中排列的示意图;
图9是本发明一实施例的图像解压缩方法300的流程图;
图10是本发明一实施例的原始图像的压缩数据的排列方式示意图;
图11是本发明一实施例的反畸变方法400的流程图。
具体实施方式
现结合附图,对本发明的较佳实施例作详细说明。
如图3所示,是本发明一实施例的读取图像压缩数据的方法100的示意图。步骤101获取输出图像块与原始图像块的映射系数;步骤103将原始图像划分为M*N像素的单元块,M和N可为大于1的正整数,并根据映射系数计算输出图像行对应的原始图像行的像素点所在单元块的坐标;步骤105根据输出图像行对应的原始图像中的单元块的坐标生成所述单元块的压缩块的头信息地址,根据头信息地址读取压缩块的头信息;步骤107根据压缩块的头信息读取原始图像的压缩块的数据。提供了一种读取图像压缩数据的方法,可实现按输出图像行读取对应的输入图像压缩块数据,并可将读取到的压缩数据直接进行解压缩,不需要读取一帧图像再进行解压缩计算,减小读数据时的带宽,降低显示延迟。
在具体实施方式中,输出图像块和原始图像块可以是现有技术的任一种分块形式,二者之间的映射系数也可以是现有技术的任一种映射关系的映射系数,本发明不限制映射系数的选取,例如,可以是反畸变映射系数,也可以是融合了反畸变、反色散的映射系数,也可以是融合了反畸变、反色散和异步时间扭曲的映射系数。需要说明的是,原始图像指的是未经压缩的输入图像。
每个输出图像像素点对应的输入图像像素点的映射关系是由一套系数决定的,输出图像进行分块,如图4所示,每个块共享一套系数,每个块内像素有多少,每个系数就需要反复使用多少次。每个块的映射系数在内存中是顺序排放,如图5所示,按行扫描的方式依次取每个块的系数即可。
在一实施方式中,映射系数可以包括R分量映射系数、G分量映射系数和B分量映射系数。因原始图像在压缩过程中是按照R分量、G分量和B分量进行压缩的,所以通过分别读取R分量映射系数、G分量映射系数和B分量映射系数,可以便于后续计算。
在一实施方式中,可采用直接内存存取(DMA)方式读取输出图像块与原始图像块的映射系数。直接内存存取(DMA)方式允许不同速度的硬件装置来沟通,而不需要依赖于CPU的大量中断负载。
在一实施方式中,采用直接内存存取方式读取输出图像块与原始图像块的映射系数具体可以为:生成映射系数的内存地址和数据长度;根据内存地址和数据长度发送数据;接收数据并将数据组合成所述输出图像块与所述原始图像块的映射系数。
在具体实施方式中,映射系数可以包括多个系数分量,例如,系数分量a、b、c、d、e、f、g和h,可以为第一个输出图像块的第一个映射系数分量a分配一个初始地址,可根据该初始地址和所有系数分量的数据量总和生成映射系数的内存地址和数据长度,当内存总线接收到所述内存地址和数据长度时,内存总线会发送相应数据,此时,接收所述数据并组合成输出图像块与原始图像块的映射系数。
在一实施方式中,每个单元块对应的压缩信息和地址信息存放在头信息中,头信息在内存中是连续排列的,通常会配置一个起始地址,后边逐个加一就可以。
在一实施方式中,可采用图6所示的坐标计算方法200确定输出图像行对应的原始图像行的像素点的坐标所在单元块的坐标。
步骤201,首先根据读取到的映射系数计算输出图像中像素点对应在原始图像中像素点的坐标。坐标的映射关系跟输入图像和输出图像的尺寸及映射系数相关,根据映射系数按照映射关系公式计算出每个输出图像像素点对应的原始图像像素点的坐标。在具体实施方式中,可通过以下公式计算出该坐标:
β=(outw*outh)>>k
q=g*i+h*j+β
xx=a*i+b*j+c*outh
yy=d*i+e*j+f*outh
m=xx*inw
n=yy*inh
x=(m<<8)/q
y=(n<<8)/q
其中,i、j表示输出图像像素点坐标,x、y表示原始图像像素点坐标,outw、outh表示输出图像的宽和高,inw、inh表示原始图像的宽和高。
步骤203,将原始图像划分为M*N像素的单元块,根据输出图像中像素点对应在原始图像中像素点的坐标确定输出图像行对应的原始图像的单元块,M和N可为大于1的正整数。
步骤205,对步骤203确定的单元块的纵坐标进行排序,再根据单元块的纵坐标的范围确定所需单元块的坐标。例如,如果M和N均取值为16,则每个单元块为16*16个像素组成,此时,根据输出图像行对应的原始图像行的像素点的坐标确定输出图像行对应的原始图像的单元块的纵坐标排序之后,得到的纵坐标范围是在15到17之间,则对应的单元块是第0块和第1块,所述单元块的坐标就可以是(0,0)和(0,1)。
步骤207,读取步骤205确定的所需单元块的坐标,当判断需要读取输出图像行的后续行对应的原始图像中的单元块的坐标时,读取输出图像行的后续行对应的原始图像中的单元块的坐标。
在具体实施方式中,当一行中需要更新多个单元时,例如,需要更新一行中所有单元,相当于在一个16行区间有多行时间空闲,到某一行时需要取完整16行的数据,这样有可能会有带宽峰值的出现,可能造成显示模块数据来不及处理使显示缺数的问题。
为了解决上述问题,加入带宽动态功能,步骤207中包括判断是否需要读取输出图像行的后续行对应的原始图像中的单元块的坐标。当某一行空闲时,判断可以进行预取后续行的数据,提前预取的行数可以调节,这样可以把后续有可能出现带宽峰值地方的数据平均到空闲的地方,使得总线上平稳取数,不会造成取数过多来不及处理的情况。在空闲时间提前预取之后要用到的压缩块单元,提高取数时总线的利用率。
在一实施方式中,M和N可取值可以相等,也可以不相等,且可以取值为2的幂次,例如,M可取值为16,N可取值为8或16,即,可将原始图像划分为16*8像素或16*16像素的单元块。
在具体实施方式中,可根据确定的纵坐标的取值范围,确定需要更新的单元块坐标,比如,当纵坐标为某一单元块的最后一行时,则表明下一行为一个新的单元,则需要读取下一行的对应单元块,此时下一行的单元块坐标即为需要更新的数据地址。
在一实施方式中,可根据R分量映射系数、G分量映射系数和B分量映射系数分别计算输出图像中每个像素点对应在原始图像中的像素点的R分量坐标、G分量坐标和B分量坐标。
因为输出图像是按行输出,映射关系能保证计算得到的原始图像的x坐标单调递增,而y坐标虽然不能保证单调递增,但可以保证连续。因此,在一实施方式中,如图7所示,按原始图像的横坐标对原始图像进行单元划分,可划分为每16x16像素为一个单元,然后根据输出图像行对应的原始图像行的像素点的坐标确定输出图像行对应的原始图像的单元块,对落入每个单元块中像素的纵坐标进行排序。当输出图像像素点对应的原始图像像素点的坐标没有落入当前单元时,直接跳过当前单元,输出无效单元。当用于反畸变运算时,由于之后做反畸变运算时需要用到右边像素做插值运算,排序时也需要将右边的像素考虑进来。当有效输入像素点的坐标在某个单元边界时,则其右边的像素对应的纵坐标会在下一个单元内进行排序。
在一实施方式中,可分别对原始图像中划分的单元块中的R分量的纵坐标排序、G分量的纵坐标排序和B分量的纵坐标排序。
在一实施方式中,判断需要读取输出图像行的后续行对应的原始图像中的单元块的坐标的条件可以是:输出图像行对应的原始图像中的单元块的个数不大于第一阈值。如果是,则可读取输出图像行的后续行对应的原始图像中的单元块的坐标。在具体实施方式中,第一阈值可根据实际需求进行设置,本发明不限制。
在一实施方式中,步骤207中还可以在读取输出图像行对应的原始图像中的单元块的坐标和输出图像行的后续行对应的原始图像中的单元块的坐标后,将所述单元块的坐标进行旋转坐标映射。可以实现图像旋转的功能。在具体实施方式中,可根据下表所示的旋转映射关系进行所述单元块的坐标进行旋转坐标映射。
在一实施方式中,可根据头信息地址采用直接内存存取(DMA)方式读取所述压缩块的头信息。
在一实施方式中,根据头信息地址采用直接内存存取方式读取压缩块的头信息具体可为:根据输出图像行对应的原始图像的单元块的坐标生成所述单元块的压缩块的头信息的内存地址和长度信息;内存总线根据所述内存地址和长度信息发送压缩块的头信息;接收内存总线发送的压缩块的头信息,并根据头信息解析出所述压缩块的内存地址和长度信息。在一实施方式中,可根据压缩块的头信息采用直接内存存取(DMA)方式读取所述原始图像的压缩块的数据。
在一实施方式中,根据压缩块的头信息采用直接内存存取方式读取原始图像的压缩块的数据具体可为:根据压缩块的头信息确定压缩块数据的内存地址和长度信息;内存总线根据所述内存地址和长度信息发送压缩块的数据;接收内存总线发送的压缩块的数据。在具体实施方式中,接收内存总线发送的压缩块的数据通常还会带有数据头、数据尾、校验位等非有效数据信息,进一步还会需要将有效的图像压缩数据信息提取出来。
在一实施方式中,取到压缩块的头信息之后,可解析出压缩块的内存地址和长度信息。压缩数据在内存中可以连续存放也可以离散存放,根据地址取出相应长度。图8描述了压缩单元的头信息和压缩数据在内存中的排列,其中。图8左图为原始图像划分为16*16单元块示意图,图8中间图是原始图像的单元块的头信息在内存中的排列示意图,图8右图是原始图像的单元块的压缩数据在内存中的排列示意图,可见,头信息连续排列,压缩数据随意排列。
本发明还提供了一种图像解压缩方法,图9是本发明一实施例的图像解压缩方法300的流程图。其中,步骤301至307采用本发明的读取图像压缩数据的方法读取原始图像的压缩块的数据,步骤309对读取的图像的压缩块的数据进行解压缩计算,以输出原始图像。本发明不限制解压缩计算方法。
在一实施方式中,当压缩块解压后不是M*N像素时,可将多组压缩块解压后重新排序拼成M*N像素。例如,当将解压后的图像数据用于反畸变运算时,反畸变运算通常是以图像块的形式进行运算,所以这样重新排序拼块之后,便于后续计算。
在一实施方式中,解压后的图像数据可按照原始图像的压缩数据的排列方式进行缓存。例如,由于压缩单元及数据位宽的限制,读写解压后的图像数据通常是以4x4像素为单位进行操作的,因为压缩块不是以行扫描的方式读取,如图10所示为原始图像的压缩数据的一种排列方式,读取的时候按序号顺序读取,而输出图像是按照行扫描方式输出,所以对解压后的图像数据的缓存不能根据读取数据的先后顺序,而是要在缓存时根据原始图像数据的压缩数据的排列方式进行排放,读取时按照映射系数计算出的坐标直接读取。
本发明还提供一种反畸变方法,所述反畸变方法采用本发明的图像解压缩方法读取原始图像的压缩数据并解压。
图11是本发明一实施例的反畸变算法400的流程图。其中,步骤401至步骤407可采用本发明的图像解压缩方法完成图像压缩数据的解压,步骤409根据输出图像像素点对应原始图像像素点的坐标读取原始图像数据;步骤411根据步骤409读取的原始图像的数据进行插值计算,以生成反畸变输出图像。
在具体实施方式中,步骤403在计算出输出图像像素点对应原始图像像素点的坐标后可以保存,以供步骤409使用,步骤409也可以重新计算输出图像像素点对应原始图像像素点的坐标,具体计算过程同样可以采用步骤403的计算公式,这里不再赘述。
在一实施方式中,步骤411可采用双线性插值或双三次插值算法完成插值计算。
应当理解,本发明不限制读取图像压缩数据的方法、图像解压缩方法和反畸变方法中的每个步骤的执行顺序,可根据实际需求调整各个步骤的执行顺序,可实现本发明的技术方案即可。
所述技术领域的技术人员可以理解,本发明的读取图像压缩数据的方法、图像解压缩方法和反畸变方法中的每个步骤都可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式。
应当理解,上述流程图的每个方框以及流程图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理器执行时,产生了实现流程图中的一个或多个方框中规定的功能的装置。可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的各个方面的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++和C语言等类似的程序设计语言。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其他可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品。计算机可读存储介质可以是便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
也可以把计算机程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其他可编程装置上执行的指令提供实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
应当理解的是,以上实施例仅用以说明本发明的技术方案,而非对其限制,对本领域技术人员来说,可以对上述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而所有这些修改和替换,都应属于本发明所附权利要求的保护范围。
Claims (22)
1.一种读取图像压缩数据的方法,其特征在于,包括:
步骤1,获取输出图像块与原始图像块的映射系数;
步骤2,将所述原始图像划分为M*N像素的单元块,所述M和N为大于1的正整数,根据所述映射系数计算所述输出图像行对应的所述原始图像行的像素点所在单元块的坐标;
步骤3,根据所述输出图像行对应的所述原始图像中的单元块的坐标生成所述单元块的压缩块的头信息地址,根据所述头信息地址采用直接内存存取方式读取所述压缩块的头信息,具体为:
根据所述输出图像行对应的原始图像的单元块的坐标生成所述单元块的压缩块的头信息的内存地址和长度信息;
根据所述内存地址和长度信息发送所述单元块的压缩块的头信息;
接收所述单元块的压缩块的头信息,并根据所述头信息解析出所述压缩块的内存地址和长度信息;
步骤4,根据所述压缩块的头信息采用直接内存存取方式读取所述原始图像的压缩块的数据,具体为:
根据所述压缩块的头信息确定所述压缩块数据的内存地址和长度信息;
根据所述内存地址和长度信息发送所述压缩块数据;
接收所述压缩块的数据。
2.如权利要求1所述的读取图像压缩数据的方法,其特征在于,所述步骤1中的映射系数是反畸变映射系数或融合反畸变、反色散和异步时间扭曲的映射系数。
3.如权利要求1所述的读取图像压缩数据的方法,其特征在于,所述步骤1中的映射系数包括R分量映射系数、G分量映射系数和B分量映射系数。
4.如权利要求1至3任一项所述的读取图像压缩数据的方法,其特征在于,所述步骤1为:采用直接内存存取方式读取所述输出图像块与所述原始图像块的映射系数。
5.如权利要求4所述的读取图像压缩数据的方法,其特征在于,所述采用直接内存存取方式读取所述输出图像块与所述原始图像块的映射系数具体为:
生成所述映射系数的内存地址和数据长度;
根据所述内存地址和数据长度发送数据;
接收所述数据,并将所述数据组合成所述输出图像块与所述原始图像块的映射系数。
6.如权利要求1所述的读取图像压缩数据的方法,其特征在于,所述步骤2具体为:
根据所述映射系数计算所述输出图像中像素点对应在所述原始图像中像素点的坐标;
将所述原始图像划分为M*N像素的单元块,根据所述输出图像中像素点对应在所述原始图像中像素点的坐标确定所述输出图像行对应的所述原始图像行的单元块;
对所述单元块的纵坐标进行排序,根据所述单元块的纵坐标的范围确定所需单元块的坐标;
读取所述所需单元块的坐标,当判断需要读取所述输出图像行的后续行对应的所述原始图像中的单元块的坐标时,读取所述输出图像行的后续行对应的所述原始图像中的单元块的坐标。
7.如权利要求6所述的读取图像压缩数据的方法,其特征在于,所述根据所述映射系数计算所述输出图像中像素点对应在所述原始图像中像素点的坐标为:根据所述映射系数计算所述输出图像中像素点对应在所述原始图像中像素点的R分量坐标、G分量坐标和B分量坐标。
8.如权利要求1所述的读取图像压缩数据的方法,其特征在于,所述M和N为2的幂次。
9.如权利要求6所述的读取图像压缩数据的方法,其特征在于,所述对所述单元块的纵坐标进行排序为:对所述单元块中的R分量的纵坐标排序、G分量的纵坐标排序和B分量的纵坐标排序。
10.如权利要求6所述的读取图像压缩数据的方法,其特征在于,所述判断需要读取所述输出图像当前行的后续行对应的所述原始图像中的单元块的坐标的条件是:所述输出图像当前行对应的所述原始图像中的单元块的个数不大于第一阈值。
11.如权利要求6至10任一项所述的读取图像压缩数据的方法,其特征在于,还包括:将所述输出图像行对应的所述原始图像中的单元块的坐标和所述输出图像行的后续行对应的所述原始图像中的单元块的坐标进行旋转坐标映射。
12.一种图像解压缩方法,其特征在于,采用如权利要求1至11任一项所述的读取图像压缩数据的方法读取原始图像的压缩块的数据,并对所述原始图像的压缩块的数据进行解压。
13.如权利要求12所述的图像解压缩方法,其特征在于,所述图像解压缩方法还包括:当所述图像的压缩块解压后不是M*N像素时,将多组压缩块解压后重新排序拼成M*N像素的单元块。
14.如权利要求12所述的图像解压缩方法,其特征在于,所述解压后的图像数据按照所述原始图像的压缩数据的排列方式进行缓存。
15.一种反畸变方法,其特征在于,包括:
采用如权利要求12至14任一项所述的图像解压缩方法读取原始图像的压缩块的数据并解压;
根据输出图像像素点对应的所述原始图像像素点的坐标读取所述原始图像的图像数据;
根据所述原始图像的图像数据进行插值计算,以生成所述输出图像。
16.如权利要求15所述的反畸变方法,其特征在于,所述插值计算为双线性插值计算或双三次插值计算。
17.一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行如权利要求1至11任一项所述的图像压缩数据读取的方法。
18.一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行如权利要求12至14任一项所述的图像解压缩方法。
19.一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行如权利要求15或16所述的反畸变方法。
20.一种读取图像压缩数据的装置,包括:
处理器,用于实现各指令;以及
存储设备,用于存储多条指令,所述指令用于由所述处理器加载并执行如权利要求1至11任一项所述的图像压缩数据读取的方法。
21.一种图像解压缩装置,包括:
处理器,用于实现各指令;以及
存储设备,用于存储多条指令,所述指令用于由所述处理器加载并执行如权利要求12至14任一项所述的图像解压缩方法。
22.一种反畸变装置,包括:
处理器,用于实现各指令;以及
存储设备,用于存储多条指令,所述指令用于由所述处理器加载并执行如权利要求15或16所述的反畸变方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711363454.5A CN108171662B (zh) | 2017-12-18 | 2017-12-18 | 读取图像压缩数据的方法及包含该方法的反畸变方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711363454.5A CN108171662B (zh) | 2017-12-18 | 2017-12-18 | 读取图像压缩数据的方法及包含该方法的反畸变方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108171662A CN108171662A (zh) | 2018-06-15 |
CN108171662B true CN108171662B (zh) | 2020-08-07 |
Family
ID=62522225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711363454.5A Active CN108171662B (zh) | 2017-12-18 | 2017-12-18 | 读取图像压缩数据的方法及包含该方法的反畸变方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108171662B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110874809A (zh) * | 2018-08-29 | 2020-03-10 | 上海商汤智能科技有限公司 | 图像处理方法及装置、电子设备和存储介质 |
WO2020056622A1 (zh) * | 2018-09-19 | 2020-03-26 | 深圳市汇顶科技股份有限公司 | 图像校验系数的读取方法、闪存控制器、系统及存储介质 |
CN113709494B (zh) * | 2021-06-23 | 2024-04-09 | 珠海全志科技股份有限公司 | 用于超分重建的图像解压缩方法及装置 |
CN113610705A (zh) * | 2021-06-23 | 2021-11-05 | 珠海全志科技股份有限公司 | 用于超分重建的图像去交织方法及装置 |
CN117057982B (zh) * | 2023-10-11 | 2024-01-26 | 北京地平线信息技术有限公司 | 对图像进行扭曲变换的集成电路及电子设备 |
CN117177079B (zh) * | 2023-11-02 | 2024-03-01 | 珠海鸿芯科技有限公司 | 图像合成方法、计算机装置及计算机可读存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPP444898A0 (en) * | 1998-07-02 | 1998-07-23 | Canon Kabushiki Kaisha | A method and apparatus for boundary filtering a digital image |
CN100596200C (zh) * | 2007-04-27 | 2010-03-24 | 华为技术有限公司 | 图像压缩方法及图像编码器 |
CN102595109B (zh) * | 2011-01-07 | 2014-12-17 | 安凯(广州)微电子技术有限公司 | 一种jpeg图片解码方法及装置 |
CN103581674A (zh) * | 2012-08-07 | 2014-02-12 | 上海算芯微电子有限公司 | 视频数据的压缩/解压缩方法及系统 |
US20140204107A1 (en) * | 2013-01-22 | 2014-07-24 | Vixs Systems, Inc. | Video processor with frame buffer compression and methods for use therewith |
CN103139567B (zh) * | 2013-01-28 | 2015-11-18 | 东软集团股份有限公司 | 一种图像压缩和解压缩的方法和装置 |
JP6129574B2 (ja) * | 2013-02-13 | 2017-05-17 | ルネサスエレクトロニクス株式会社 | 画像処理装置 |
CN104244007B (zh) * | 2013-06-13 | 2020-09-01 | 上海天荷电子信息有限公司 | 一种图像编码方法和装置及解码方法和装置 |
CN105578190B (zh) * | 2016-02-03 | 2018-05-04 | 珠海全志科技股份有限公司 | 应用于视频硬解码的无损压缩方法及系统 |
CN105933708B (zh) * | 2016-04-15 | 2019-02-12 | 杨桦 | 一种数据压缩和解压缩的方法和装置 |
CN106780291B (zh) * | 2017-01-03 | 2020-06-23 | 珠海全志科技股份有限公司 | 一种实时畸变图像处理加速装置 |
CN107220925B (zh) * | 2017-05-05 | 2018-10-30 | 珠海全志科技股份有限公司 | 一种实时虚拟现实加速方法及装置 |
-
2017
- 2017-12-18 CN CN201711363454.5A patent/CN108171662B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108171662A (zh) | 2018-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108171662B (zh) | 读取图像压缩数据的方法及包含该方法的反畸变方法 | |
US10748510B2 (en) | Framebuffer compression with controllable error rate | |
US10297046B2 (en) | Techniques for reducing accesses for retrieving texture images | |
CN106030652B (zh) | 提供输出面的方法、系统和合成显示控制器及计算机介质 | |
EP2133843A1 (en) | Image generating apparatus and image generating method | |
US8130234B2 (en) | Computer graphics rendering apparatus and method | |
US10824357B2 (en) | Updating data stored in a memory | |
WO2022095797A1 (zh) | 图像的压缩方法、装置、智能终端及计算机可读存储介质 | |
CN111683189B (zh) | 图片压缩方法、系统、终端、及存储介质 | |
CN104952088A (zh) | 一种对显示数据进行压缩和解压缩的方法 | |
GB2552136A (en) | Accessing encoded blocks of data in memory | |
US11935153B2 (en) | Data compression support for accelerated processor | |
CN108109181B (zh) | 读取图像压缩数据的电路及包含该电路的反畸变电路 | |
US7486843B2 (en) | Image processing overlaying one image on another | |
US9083912B2 (en) | Method and apparatus for enabling parallel processing of pixels in an image | |
US20190114736A1 (en) | System and method for adaptive z-buffer compression in low power gpus and improved memory operations with performance tracking | |
CN114820370A (zh) | 墨水屏设备的图片转换方法、电子设备及存储介质 | |
CN108227894A (zh) | 动态调整帧率的方法及其图形系统 | |
CN107871162B (zh) | 一种基于卷积神经网络的图像处理方法及移动终端 | |
JP2017016511A (ja) | 歪み補正画像処理装置及びプログラム | |
US11954028B2 (en) | Accessing encoded blocks of data | |
JP5731816B2 (ja) | 画像処理装置、画像処理方法 | |
CN117876217A (zh) | 基于小重叠区的红外图像拼接方法、系统及存储介质 | |
CN112017100A (zh) | 卷积运算方法及相关产品 | |
CN116594928A (zh) | 一种图像更新方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |