CN115665416A - 图像数据编码方法、编码装置、解码方法及解码装置 - Google Patents
图像数据编码方法、编码装置、解码方法及解码装置 Download PDFInfo
- Publication number
- CN115665416A CN115665416A CN202211263258.1A CN202211263258A CN115665416A CN 115665416 A CN115665416 A CN 115665416A CN 202211263258 A CN202211263258 A CN 202211263258A CN 115665416 A CN115665416 A CN 115665416A
- Authority
- CN
- China
- Prior art keywords
- data
- color
- matrix
- image data
- target image
- 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.)
- Pending
Links
Images
Landscapes
- Color Television Systems (AREA)
Abstract
本申请涉及图像和视频技术领域,提供一种图像数据编码方法、编码装置、解码方法及解码装置。通过获取待编码目标图像数据,并将目标图像数据划分为若干数据段,将每个数据段表示为各颜色分量的颜色矩阵;根据各颜色矩阵的最小颜色值和最大颜色值,利用比目标图像数据的原始比特数小的预设编码比特数表示各颜色矩阵中各颜色值与最小颜色值的差值,以获取每个颜色矩阵的矩阵编码数据;根据每个数据段的各颜色矩阵的编码数据,各颜色矩阵的最小颜色值和最大颜色值获取每个数据段的编码数据;根据每个数据段的编码数据,获取目标图像数据的编码数据。本申请能用更少的比特数表示原始数据,并可通过改变预设编码比特数,灵活控制压缩比和压缩失真。
Description
技术领域
本申请涉及图像和视频技术领域,特别涉及一种图像数据编码方法、编码装置、解码方法及解码装置。
背景技术
在视频的清晰度和帧速率不断提高的情况下,设备与设备之间传输视频数据的压力也越来越大。例如HDMI2.1只能传送一路4K格式的超高清视频数据,如果要传送8K甚至更高分辨率的超高清视频数据,只能分成多路并行传输,给设备互联带来很大的困难。
由于开发更高数据传输速率的接口成本很高,因此需要开发一种图像数据压缩方法,在传输前对视频数据进行压缩,以减少需要传送的数据量,在接收端,用相应的解压缩方法恢复视频数据。
现有技术中缺少一种计算相对简单,缓存需求小、压缩比适宜、以及压缩后数据传输速率稳定可控的图像数据压缩方法。
发明内容
鉴于以上所述现有技术的缺点,本申请的目的在于提供一种图像数据编码方法、编码装置、解码方法及解码装置,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
第一方面,提供了一种图像数据编码方法,包括:
获取待编码目标图像数据;
沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;
根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据;
根据每个所述数据段的各所述颜色矩阵的编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;
根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。
可选地,根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据,具体包括:
将每个所述数据段的编码数据进行拼接,并在首个所述数据段的编码数据之前插入编码相关信息,以获取所述目标图像数据的编码数据二其中,所述编码相关信息包括所述目标图像的行列信息,所述数据段行列信息、所述预设编码比特数、所述目标图像数据的原始比特数以及颜色分量采样比例。
可选地,每个数据段表示为对应的所述数据段中亮度分量的亮度值矩阵、第一色度分量的第一色度值矩阵,和第二色度分量的第二色度值矩阵。
可选地,通过下式来表示一所述颜色矩阵中各颜色值与最小颜色值的差值;
ei=round((di-dmin)*(2k-1)/(dmax-dmin))
其中,ei为所述颜色矩阵中第i个颜色值与最小颜色值的差值表示,round()函数是将数字四舍五入到指定的位数;di为所述颜色矩阵中第i个颜色值,dmin为所述颜色矩阵的最小颜色值,amax为所述颜色矩阵的最大颜色值,k为所述预设编码比特数。
可选地,所述沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,具体包括:
沿垂直方向,将所述目标图像数据划分为若干数据条,每个所述数据条包括N行,其中,N为偶数;
沿水平方向,将每个所述数据条分成若干所述数据段,每个所述数据段包括N行M列,其中,M为偶数,其中,N和M小于等于8。
可选地,在获取待编码目标图像数据的步骤中,所述目标图像数据为视频帧数据。
第二方面,提供了一种图像数据编码装置,包括:
图像数据获取模块,用于获取待编码目标图像数据;
图像划分模块,用于沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;
矩阵编码模块,用于根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据二
数据段编码模块,用于根据每个所述数据段的各所述颜色矩阵的编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;
拼接模块,用于根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。
第三方面,提供了一种图像数据解码方法,包括:
获取目标图像数据的编码数据;
对所述目标图像数据的编码数据进行处理,以获取所述目标图像数据的不同数据段的编码数据;
对每个所述数据段的编码数据进行处理,以获取每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值;
根据每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段中各颜色分量的颜色矩阵;
根据每个所述数据段中各颜色分量的颜色矩阵,获取解码图像数据。
第四方面,提供了一种图像数据解码装置,包括:
编码数据获取模块,用于获取目标图像数据的编码数据;
第一数据处理模块,对所述目标图像数据的编码数据进行处理,以获取所述目标图像数据的每个数据段的编码数据;
第二数据处理模块,对每个所述数据段的编码数据进行处理,以获取每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值;
颜色矩阵获取模块,用于根据各所述颜色矩阵的最小颜色值和最大颜色值及预设编码比特数,将每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,转换为每个所述数据段中各颜色分量的颜色矩阵;
解码图像获取模块,用于根据每个所述数据段中各颜色分量的颜色矩阵,获取解码图像数据。
上述图像数据编码方法,通过获取待编码目标图像数据;沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据;根据每个所述数据段的各所述颜色矩阵的编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。在本申请中,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,从而能够实现用更少的比特数表示原始数据,并且编码过程计算简单,需要的缓存小;进一步还可通过改变预设编码比特数,灵活控制压缩比和压缩失真。
附图说明
图1示出了本申请的技术方案的系统架构的示意图。
图2示出了本申请的图像数据编码方法的一流程示意图。
图3示出了本申请的图像数据编码装置的一功能模块图。
图4示出了本申请的图像数据解码方法的一流程示意图。
图5示出了本申请的图像数据解码装置的一功能模块图。
具体实施方式
以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。
请参阅图1-5。需要说明的是,本实施例中所提供的图示仅以示意方式说明本申请的基本构想,遂图式中仅显示与本申请中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
为了更好理解本发明实施例,首先介绍本发明实施例中涉及的颜色空间。
颜色空间(或称彩色空间,或称彩色系统)通常用三维模型来表示,也就是代表三个参数的三维坐标来指定,它描述了具体的颜色在该三维坐标中的位置。所以颜色空间在具体应用场景中也被称为颜色模型(或称彩色模型)。根据颜色空间的坐标参数的不同,可以设计不同的颜色空间。在三色加色法模型中,如果某一种颜色和另一种混合了不同分量的三种原色的颜色,均使人眼看上去是相同的话,我们把这三种原色的分量称作该颜色的三色刺激值。对于如何选定三原色、如何量化、如何确定刺激值等问题,有一套通用标准--国际照明委员会(Commission Intemationale de L'Eclairage,CIE)标准色度学系统。这种标准下有很多颜色空间:例如CIE 1931 RGB、CIE 1931 XYZ、CIE1931 xyY、CIE 1976 L*u*v、CIE 1976 L*a*b等颜色空间。除此以外,还可以有其他定义形式的又例如LMS、CMYK、CIEYUV、HSL、HSB(HSV)、YCbCr等颜色空间。颜色空间的表达形式是多样的,不同的颜色空间可具有不同的特性,但它们之间可以互相转换。
下面描述本申请实施例所涉及的系统架构。请参阅图1,如图1示出了可以应用本申请中一个或多个实施例中技术方案的示例性系统架构的示意图。如图1所示,所示系统架构包括,包源端装置10、网络30和末端装置20,源端装置10产生经图像数据编码的视频数据/图像数据,末端装置20可对经图像数据编码的视频数据/图像数据进行解码及显示,网络120可以是能够在源端装置10和末端装置20之间提供通信链路的各种连接类型的通信介质,例如可以是有线通信链路或者无线通信链路。
源端装置10和末端装置20或两个相结合的各种实施方案可包含一或多个处理器以及耦合到所述一或多个处理器的存储器。所述存储器可包含但不限于RAM、ROM、EEPROM、快闪存储器或可用于以可由计算机存取的指令或数据结构的形式存储所要的程序代码的任何其它媒体,如本文所描述。
源端装置10和/或末端装置20可以包括各种装置,包含桌上型计算机、移动计算装置、笔记型(例如,膝上型)电脑、平板电脑、机顶盒、手机、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机、显示器、投影仪、视频监控设备、视频会议设备、网络直播点播设备或其类似者。
根据实现需要,本申请实施例中的系统架构可以具有任意数目的源端装置10、网络30和末端装置20。另外,本申请实施例提供的技术方案可以应用于源端装置10,也可以应用于末端装置20,或者可以由源端装置10和末端装置20共同实施,本申请对此不做特殊限定。
在本申请的一个实施例中,所述源端装置10可以获取待编码目标图像数据;沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据;根据每个所述数据段的各所述颜色矩阵的编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,从而能够实现用更少的比特数表示原始数据,并且编码过程计算简单,需要的缓存小;进一步还可通过改变预设编码比特数,灵活控制压缩比和压缩失真。
在本申请的一个实施例中,所述末端设备20可以获取目标图像数据的编码数据;对所述目标图像数据的编码数据进行处理,以获取所述目标图像数据的不同数据段的编码数据;对每个所述数据段的编码数据进行处理,以获取每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值;根据每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段中各颜色分量的颜色矩阵;根据每个所述数据段中各颜色分量的颜色矩阵,获取所述目标图像数据。
下面通过具体的实施例对本发明进行详细的描述。
请参阅图2所示,图2为本申请实施例提供的像数据编码方法的一流程示意图。本申请实施例的像数据编码方法,包括如下步骤:
步骤S11:获取待编码目标图像数据;
步骤S12:沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;
步骤S13:根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据;
步骤S14:根据每个所述数据段的各所述颜色矩阵的编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;
步骤S15:根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。
首先,执行步骤S11:获取待编码目标图像数据。
在视频的清晰度和帧速率不断提高的情况下,源端设备10与末端设备20之间传输视频数据的压力越来越大,为此,需要在远端设备10上对传输视频数据的视频帧数据进行编码,该视频帧数据作为待编码目标图像数据。作为示例,该传输视频数据例如可以是超高清视频数据,譬如4K、8K甚至更高分辨率的超高清视频数据。
需要说明的是,本实施例的图像数据编码方法也可适应于单独图像数据的编码,也即所述目标图像数据也可以是单独图像数据。
接着,执行步骤S12:沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵。
在一示例性的实施例中,所述沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,具体包括:沿垂直方向(上下方向),将所述目标图像数据划分为若干数据条,每个所述数据条包括N行,其中,N为偶数;沿水平方向(左右方向),将每个所述数据条分成若干所述数据段,每个所述数据段包括N行M列,其中,M为偶数,其中N和M可根据实际情况进行配置。作为示例,N和M例如可以选择小于等于8的偶数,譬如4,6,8。
举例来说,视频帧数据在YUV颜色空间的三个颜色分量分别是亮度分量Y,色度分量U,V,故而进行划分后,每个数据段可以表示为亮度分量Y,色度分量U,V的颜色矩阵集合,为了描述方便,将亮度分量Y,色度分量U,V对应的颜色矩阵分别表示为Y,U,V,每个所述数据段可以记为{Y,U,V},其中Y为N行M列矩阵,也即亮度矩阵,包含所述数据段中的各像素的亮度值;U,V为色度矩阵,包含所述数据段中的各像素的色度值,其中,U记为第一色度矩阵,V记为第二色度矩阵,矩阵U,V的行数和列数由所述视频的色度和亮度的采样比例R决定。
当然,本实施例的编码方法处了应用于YUV颜色空间外,同样适用于RGB、XYZ、xyY、L*u*v、L*a*b等颜色空间,或LMS、CMYK、、HSL、HSB(HSV)、YCbCr等颜色空间。
接着,执行步骤S13:根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据。
利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,从而能够实现用更少的比特数表示原始数据,并且编码过程计算简单,需要的缓存小;进一步还可通过改变预设编码比特数,灵活控制压缩比和压缩失真。
举例来说,按照以下步骤依次对每个数据段的Y,U,V三个矩阵进行编码。
由于Y,U,V三个矩阵采用相同的编码方式,为了描述方面,以颜色矩阵D表示矩阵Y,U,V中的任意一个,G表示颜色矩阵D中元素(颜色值)的个数,对颜色矩阵D进行编码以获取颜色矩阵D的矩阵编码数据时,
首先,获取颜色矩阵D中元素的最小颜色值dmin和最大颜色值dmax;
接着,设置比特数k,作为预设编码比特数,为了实现用更少的比特数表示原始数据,k需要小于目标图像数据的原始比特数,目标图像数据的原始比特数也即原始图像数据中的表示每个亮度值和色度值的比特数,记为F;
最后,用k位二进制数表示矩阵D的每个颜色元素与dmin的差值,计算方法如下:
ei=round((di-dmin)*(2k-1)/(dmax-dmin))
其中,ei为所述颜色矩阵D中第i个颜色值与最小颜色值的差值的k位二进制数表示,i=0,1,...,G-1,round()函数是将数字四舍五入到指定的位数;di为所述颜色矩阵D中第i个颜色值,dmin为所述颜色矩阵D的最小颜色值,dmax为所述颜色矩阵D的最大颜色值(F个比特),k为所述预设编码比特数。
需要说明的是,Y,U,V三个矩阵的编码顺序可以灵活设置,并不限于Y,U,V,也可以是按照U,V,Y顺序,或按照V,U,Y顺序,或按照U,Y,V顺序,或者按照V,Y,U顺序进行依次编码。
接着,执行步骤S14:根据每个所述数据段的各所述颜色矩阵D的矩阵编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据。
举例来说,将每个所述数据段的所述数据段的编码数据可以表示为Y,U,V三个矩阵的矩阵编码数据,及Y,U,V三个矩阵的最小颜色值和最大颜色值构成每个所述数据段的编码数据。
最后,执行步骤S15:根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。
在一示例性实施例中,根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据,具体包括:将每个所述数据段的编码数据进行拼接,并在首个所述数据段的编码数据之前插入编码相关信息,以获取所述目标图像数据的编码数据;其中,所述编码相关信息包括所述目标图像的行列信息,所述数据段行列信息、所述预设编码比特数、所述目标图像数据的原始比特数以及颜色分量采样比例,所述目标图像的行列信息,所述数据段行列信息、所述预设编码比特数、所述目标图像数据的原始比特数以及颜色分量采样比例可以用预设比特(可根据需要灵活配置)表示。
举例来说,可以在首个所述数据段的编码数据之前插入一下数据:
16个比特表示一视频帧图像数据包含的行数V,也即目标图像的行列信息;
16个比特表示一行包含的列数H,也即目标图像的列信息;
2个比特表示N/2-1,也即数据段行信息;
2个比特表示M/2-1,也即数据段列信息;
2个比特表示色度数据相对于亮度数据的比例R,也即颜色分量采样比例;
具体如下表所示
R的值 | 含义 |
0 | 没有色度数据 |
1 | 色度数据的行数和列数都是亮度的1/2 |
2 | 色度数据的行数和亮度相同,列数是亮度的1/2 |
3 | 色度数据的行数和列数都和亮度相同 |
3个比特表示F/2-1,也即目标图像数据的原始比特数;
2个比特表示k/2-1,也即预设编码比特数。
需要说明的是,上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
图3为本申请实施例提供的图像数据编码装置的一个功能模块图。请参阅图3所示,所述图像数据编码装置11,包括图像数据获取模块111、图像划分模块112、矩阵编码模块113、数据段编码模块114及拼接模块115。
其中,图像数据获取模块111,用于获取待编码目标图像数据;图像划分模块112,用于沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;矩阵编码模块113,用于根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据;数据段编码模块114,用于根据每个所述数据段的各所述颜色矩阵的编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;拼接模块115,用于根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。
需要说明的是,上述的图像数据编码装置11的各功能模块实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的部分或全部步骤,或以上的各功能模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
本申请的图像数据编码方法和编码装置,通过获取待编码目标图像数据;沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据;根据每个所述数据段的各所述颜色矩阵的编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。在本申请中,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,从而能够实现用更少的比特数表示原始数据,并且编码过程计算简单,需要的缓存小;进一步还可通过改变预设编码比特数,灵活控制压缩比和压缩失真。
请参阅图4所示,图4为本申请实施例提供的图像数据解码方法的一流程示意图。本申请实施例的图像数据解码方法,包括如下步骤:
步骤S21:获取目标图像数据的编码数据。
步骤S22:对所述目标图像数据的编码数据进行处理,以获取所述目标图像数据的不同数据段的编码数据;
步骤S23:对每个所述数据段的编码数据进行处理,以获取每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值;
步骤S24:根据每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段中各颜色分量的颜色矩阵;
步骤S25:根据每个所述数据段中各颜色分量的颜色矩阵,解码后图像数据。
本申请实施例的图像数据解码方法与上述图像数据编码方法相对应,故不在详细描述。
对利用上述图像数据编码方法编码获取的YUV颜色空间的视频帧数据的编码数据的解码过程。具体如下:
步骤1,末端设备20通过接受源端设备10传送的视频帧数据的编码数据。
步骤2,通过提取视频帧数据的编码数据中首个所述数据段的编码数据之前的编码相关信息,以获取每一帧视频帧数据包含的行数V,每一行包含的列数H,每一条包含的行数N,获取每一段包含的列数M,色度数据相对于亮度数据的比例R,原始的表示每个亮度数据和色度数据的比特数F,表示ei的比特数k.
步骤3,根据获取的编码相关信息,依次处理每一条的编码数据,依次处理每一数据段的编码数据,从而视频帧数据的编码数据分割为不同数据段的编码数据。
步骤4,按照以下步骤依次处理Y,U,V三个矩阵的矩阵编码数据。由于Y,U,V三个矩阵采用相同的编码方式,为了描述方面,以用颜色矩阵D表示矩阵Y,U,V中的任意一个,对颜色矩阵的矩阵编码数据进行解码时,
首先,获取颜色矩阵D中元素的最小值dmin和最大值dmax;
接着,获取颜色矩阵D的矩阵编码数据ei,i=0,1,...,G-1;
最后,根据矩阵编码数据ei获取颜色矩阵D中的每个元素(颜色值)di,计算方法如下:
di=round(ei*(dmax-dmin)/(2k-1))+dmin,i=0,1,…,G-1。
步骤5,根据解码获取到每个所述数据段中各颜色分量的颜色矩阵Y,U,V,就可以获取解码图像数据。
图5为本申请实施例提供的图像数据解码装置的一个功能模块图。请参阅图所示,所述图像数据解码装置21,包括编码数据获取模块211、第一数据处理模块212、第二数据处理模块213、颜色矩阵获取模块214及解码图像获取模块215。
其中,编码数据获取模块211,用于获取目标图像数据的编码数据;第一数据处理模块212,对所述目标图像数据的编码数据进行处理,以获取所述目标图像数据的每个数据段的编码数据;第二数据处理模块213,对每个所述数据段的编码数据进行处理,以获取每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值;颜色矩阵获取模块214,用于根据各所述颜色矩阵的最小颜色值和最大颜色值及预设编码比特数,将每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,转换为每个所述数据段中各颜色分量的颜色矩阵;解码图像获取模块215,用于根据每个所述数据段中各颜色分量的颜色矩阵,获取解码图像数据。
需要说明的是,本实施例的图像数据编码装置是与上述图像色度数据编码方法相对应的装置,图像数据编码装置中的功能模块或者分别对应图像色度数据编码方法中的相应步骤。本实施例的图像数据编码装置可与图像色度数据编码方法相互相配合实施。相应地,本实施例的图像数据编码装置中提到的相关技术细节也可应用在上述图像色度数据编码方法中。
需要说明的是,上述的图像数据解码装置21的各功能模块实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的部分或全部步骤,或以上的各功能模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。
以上实施例仅用以说明本申请的技术方案而非限制,尽管参照较佳实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,可以对本申请的技术方案进行修改或等同替换,而不脱离本申请技术方案的精神和范围。
Claims (10)
1.一种图像数据编码方法,其特征在于,包括:
获取待编码目标图像数据;
沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;
根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据;
根据每个所述数据段的各所述颜色矩阵的矩阵编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;
根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。
2.根据权利要求1所述的图像数据编码方法,其特征在于,根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据,具体包括:
将每个所述数据段的编码数据进行拼接,并在首个所述数据段的编码数据之前插入编码相关信息,以获取所述目标图像数据的编码数据;其中,所述编码相关信息包括所述目标图像的行列信息,所述数据段行列信息、所述预设编码比特数、所述目标图像数据的原始比特数以及颜色分量采样比例。
3.根据权利要求1所述的图像数据编码方法,其特征在于,每个数据段表示为对应的所述数据段中亮度分量的亮度值矩阵、第一色度分量的第一色度值矩阵,和第二色度分量的第二色度值矩阵。
4.根据权利要求1所述的图像数据编码方法,其特征在于,通过下式来表示一所述颜色矩阵中各颜色值与最小颜色值的差值;
ei=round((di-dmin)*(2k-1)/(dmax-dmin))
其中,ei为所述颜色矩阵中第i个颜色值与最小颜色值的差值表示,round()函数是将数字四舍五入到指定的位数;di为所述颜色矩阵中第i个颜色值,dmin为所述颜色矩阵的最小颜色值,dmax为所述颜色矩阵的最大颜色值,k为所述预设编码比特数。
5.根据权利要求1所述的图像数据编码方法,其特征在于,所述沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,具体包括:
沿垂直方向,将所述目标图像数据划分为若干数据条,每个所述数据条包括N行,其中,N为偶数;
沿水平方向,将每个所述数据条分成若干所述数据段,每个所述数据段包括N行M列,其中,M为偶数。
6.根据权利要求1所述的图像数据编码方法,其特征在于,N和M小于等于8。
7.根据权利要求1所述的图像数据编码方法,其特征在于,在获取待编码目标图像数据的步骤中,所述目标图像数据为视频帧数据。
8.一种图像数据编码装置,其特征在于,包括:
图像数据获取模块,用于获取待编码目标图像数据;
图像划分模块,用于沿垂直方向和/或水平方向将所述目标图像数据划分为若干数据段,每个所述数据段表示为对应的所述数据段中各颜色分量的颜色矩阵;
矩阵编码模块,用于根据每个所述数据段的各所述颜色矩阵的最小颜色值和最大颜色值,利用比所述目标图像数据的原始比特数小的预设编码比特数表示每个所述颜色矩阵中所有颜色值与最小颜色值的差值,以获取每个所述颜色矩阵的矩阵编码数据;
数据段编码模块,用于根据每个所述数据段的各所述颜色矩阵的矩阵编码数据,各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段的编码数据;
拼接模块,用于根据每个所述数据段的编码数据,获取所述目标图像数据的编码数据。
9.一种图像数据解码方法,其特征在于,包括:
获取目标图像数据的编码数据;
对所述目标图像数据的编码数据进行处理,以获取所述目标图像数据的不同数据段的编码数据;
对每个所述数据段的编码数据进行处理,以获取每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值;
根据每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值,获取每个所述数据段中各颜色分量的颜色矩阵;
根据每个所述数据段中各颜色分量的颜色矩阵,获取解码后图像数据。
10.一种图像数据解码装置,其特征在于,包括:
编码数据获取模块,用于获取目标图像数据的编码数据;
第一数据处理模块,对所述目标图像数据的编码数据进行处理,以获取所述目标图像数据的每个数据段的编码数据;
第二数据处理模块,对每个所述数据段的编码数据进行处理,以获取每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,及各所述颜色矩阵的最小颜色值和最大颜色值;
颜色矩阵获取模块,用于根据各所述颜色矩阵的最小颜色值和最大颜色值及预设编码比特数,将每个所述数据段中各颜色值分量的颜色矩阵的矩阵编码数据,转换为每个所述数据段中各颜色分量的颜色矩阵;
解码图像获取模块,用于根据每个所述数据段中各颜色分量的颜色矩阵,获取解码图像数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211263258.1A CN115665416A (zh) | 2022-10-14 | 2022-10-14 | 图像数据编码方法、编码装置、解码方法及解码装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211263258.1A CN115665416A (zh) | 2022-10-14 | 2022-10-14 | 图像数据编码方法、编码装置、解码方法及解码装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115665416A true CN115665416A (zh) | 2023-01-31 |
Family
ID=84987209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211263258.1A Pending CN115665416A (zh) | 2022-10-14 | 2022-10-14 | 图像数据编码方法、编码装置、解码方法及解码装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115665416A (zh) |
-
2022
- 2022-10-14 CN CN202211263258.1A patent/CN115665416A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7356478B2 (ja) | カラー・ピクチャを符号化および復号する方法および装置 | |
KR102367205B1 (ko) | 컬러 맵핑 함수들을 이용하여 hdr 픽처 및 상기 hdr 픽처로부터 획득된 sdr 픽처의 양자를 인코딩하기 위한 방법 및 디바이스 | |
KR102358368B1 (ko) | 하이 다이나믹 레인지 픽처를 인코딩하기 위한 방법 및 디바이스, 대응하는 디코딩 방법 및 디코딩 디바이스 | |
JP6773659B2 (ja) | カラー・ピクチャを復号する方法および装置 | |
US20180352257A1 (en) | Methods and devices for encoding and decoding a color picture | |
KR102509504B1 (ko) | 코딩 및 디코딩 방법과 대응하는 디바이스 | |
US11006152B2 (en) | Method and apparatus for encoding/decoding a high dynamic range picture into a coded bitstream | |
WO2018153802A1 (en) | Method and device for reconstructing an hdr image | |
US20190132600A1 (en) | Method and apparatus for encoding/decoding a scalar integer into a parameter representative of a pivot points of a piece-wise linear function | |
EP3051489A1 (en) | A method and apparatus of encoding and decoding a color picture | |
CN115665416A (zh) | 图像数据编码方法、编码装置、解码方法及解码装置 | |
JP2018507618A (ja) | カラー・ピクチャを符号化および復号する方法および装置 | |
CN115633175A (zh) | 一种图像数据编码方法、编码装置、解码方法及解码装置 | |
CN116095262B (zh) | 用于处理视频信号源的移动处理设备、处理方法及系统 | |
CN116996735A (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 |