CN117689556B - 直方图编码方法、直方图解码方法、装置、设备和介质 - Google Patents

直方图编码方法、直方图解码方法、装置、设备和介质 Download PDF

Info

Publication number
CN117689556B
CN117689556B CN202410146170.4A CN202410146170A CN117689556B CN 117689556 B CN117689556 B CN 117689556B CN 202410146170 A CN202410146170 A CN 202410146170A CN 117689556 B CN117689556 B CN 117689556B
Authority
CN
China
Prior art keywords
erji
target
type
shift
histogram
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
Application number
CN202410146170.4A
Other languages
English (en)
Other versions
CN117689556A (zh
Inventor
马文静
周涤非
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Ouye Semiconductor Co ltd
Original Assignee
Shenzhen Ouye Semiconductor Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Ouye Semiconductor Co ltd filed Critical Shenzhen Ouye Semiconductor Co ltd
Priority to CN202410146170.4A priority Critical patent/CN117689556B/zh
Publication of CN117689556A publication Critical patent/CN117689556A/zh
Application granted granted Critical
Publication of CN117689556B publication Critical patent/CN117689556B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本申请涉及一种直方图编码方法、直方图解码方法、装置、设备和介质。所述直方图编码方法包括:获取包括多个第一类像素的第一图像,以及获取第二类像素组数;基于第二类像素组数确定哈尔基数组;根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素;根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应;将目标数量的权重系数确定为第一图像对应的直方图编码信息。采用本方法能够简化直方图编码信息的表示方式,从而显著地降低了图像处理算法的计算量。

Description

直方图编码方法、直方图解码方法、装置、设备和介质
技术领域
本申请涉及数据处理技术领域,特别是涉及一种直方图编码方法、直方图解码方法、装置、设备和介质。
背景技术
图像直方图是图像的重要统计信息,且具有图像平移、旋转、缩放不变性等众多优点,被广泛应用于各类图像处理技术中,例如应用于图像增强处理、图像动态范围压缩处理等技术中。
目前,图像直方图已经被应用到多种不同类型设备的图像处理系统中,然而,对于性能有限的图像处理系统,例如,对于嵌入式图像处理系统而言,若图像直方图呈现为较复杂的表示形式,会导致图像处理系统在基于图像直方图进行图像处理时花费较大的计算量,同时也会导致图像处理系统在储存(多个)图像直方图时需要花费较大的硬件成本。显然地,这不利于提高图像处理系统的图像处理算法性能。
发明内容
基于此,有必要针对上述技术问题,提供一种能够降低图像处理算法的计算量的直方图编码方法、直方图解码方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种直方图编码方法。所述方法包括:
获取包括多个第一类像素的第一图像,以及获取第二类像素组数;
基于第二类像素组数确定哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;第二类像素组数与目标数量之间满足第二预设条件;
根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素;
根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应;
将目标数量的权重系数确定为第一图像对应的直方图编码信息。
第二方面,本申请还提供了一种直方图解码方法。所述方法包括:
获取目标数量的权重系数和哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;
确定第二类像素组数的初始元素;第二类像素组数与目标数量之间满足第二预设条件;
根据各初始元素的序号,确定第二类像素组数的第三移位位数;各第三移位位数与各初始元素一一对应;
基于各第三移位位数,分别将哈尔基数组中的各哈尔基沿目标方向移动第三移位位数,得到各哈尔基对应的第二类像素组数的解码移位结果;
根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素;
将第二类像素组数的目标元素确定为第一图像的直方图信息。
第三方面,本申请还提供了一种直方图编码装置。所述装置包括:
获取模块,用于获取包括多个第一类像素的第一图像,以及获取第二类像素组数;
第一确定模块,用于基于第二类像素组数确定哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;第二类像素组数与目标数量之间满足第二预设条件;
转换模块,用于根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素;
第二确定模块,用于根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应;
第三确定模块,用于将目标数量的权重系数确定为第一图像对应的直方图编码信息。
第四方面,本申请提供了一种直方图解码装置。所述装置包括:
获取模块,用于获取目标数量的权重系数和哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;
第一确定模块,用于确定第二类像素组数的初始元素;第二类像素组数与目标数量之间满足第二预设条件;
第二确定模块,用于根据各初始元素的序号,确定第二类像素组数的第三移位位数;各第三移位位数与各初始元素一一对应;
第三确定模块,用于基于各第三移位位数,分别将哈尔基数组中的各哈尔基沿目标方向移动第三移位位数,得到各哈尔基对应的第二类像素组数的解码移位结果;
第四确定模块,用于根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素;
第五确定模块,用于将第二类像素组数的目标元素确定为第一图像的直方图信息。
第五方面,本申请提供了一种计算机设备,计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行该计算机程序时实现上述方法中的步骤。
第六方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法中的步骤。
第七方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法中的步骤。
上述直方图编码方法、装置、计算机设备、存储介质和计算机程序产品,获取包括多个第一类像素的第一图像,以及获取第二类像素组数;基于第二类像素组数确定哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;第二类像素组数与目标数量之间满足第二预设条件;根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素;根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应;将目标数量的权重系数确定为第一图像对应的直方图编码信息。本申请提供的直方图编码方法,只需要通过目标数量的权重系数就能表示出第一图像对应的直方图编码信息,通过简化直方图编码信息的表示方式,从而显著地降低了图像处理算法的计算量。
附图说明
图1为一个实施例中直方图编码方法的应用环境图;
图2为一个实施例中直方图编码方法的流程示意图;
图3为一个实施例中第一阶哈尔基至第四阶哈尔基的函数曲线图;
图4为一个实施例中直方图解码方法的流程示意图;
图5为一个实施例中直方图编码装置的结构框图;
图6为一个实施例中直方图解码装置的结构框图;
图7为一个实施例中计算机设备的内部结构图;
图8为另一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
需要说明的是,在以下的描述中,所涉及的术语“第一、第二和第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一、第二和第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
本申请实施例提供的直方图编码方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。
其中,终端102可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调和智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。
服务器104可以是独立的物理服务器,也可以是区块链系统中的服务节点,该区块链系统中的各服务节点之间形成点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。
此外,服务器104还可以是多个物理服务器构成的服务器集群,可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
终端102与服务器104之间可以通过蓝牙、USB(Universal Serial Bus,通用串行总线)或者网络等通讯连接方式进行连接,本申请在此不做限制。
需要说明的是,如图1所示的应用环境仅仅是本申请实施例提供的直方图编码方法的一种应用环境的示例,在具体实现中,本申请实施例提供的直方图编码方法还可以只由终端102执行,方法中所涉及的需要处理的数据均存储在终端102中,从而终端102无需与服务器104进行网络通信便可独自完成本方法的执行。同理地,本申请实施例提供的直方图编码方法还可以应用于其他类型的应用环境中,本申请在此不做限制。
在一个实施例中,如图2所示,提供了一种直方图编码方法,该方法可由图1中的服务器或终端执行,或由服务器和终端协同执行,以该方法由图1中的终端执行为例进行说明,包括以下步骤:
步骤202,获取包括多个第一类像素的第一图像,以及获取第二类像素组数。
其中,第一图像为需要进行直方图信息编码处理的图像。
具体地,第二类像素组数,指第二类像素的划分分组数量。可选地,第二类像素组数,可以是2n个;示例性地,第二类像素组数可以是16、32或其他数值。第二类像素组数与直方图编码信息的表示精确度呈正相关关系,即是说,若第二类像素组数越大,则第一图像的直方图信息能够以更丰富的形式进行表示,但此时由于信息量丰富,会导致直方图信息对应的直方图编码信息所需的内存开销增大,且图像处理算法的计算量难以被有效地降低,反之同理,第二类像素组数越小,则第一图像的直方图信息会以更简略的形式进行表示,但此时能够简化直方图编码信息的表示方式进而显著地降低直方图编码信息所需的内存开销和图像处理算法的计算量。
进一步地,第二类像素组数,还可以是指第二类像素在目标图像属性值方面的划分分组数量;示例性地,假设目标图像属性值是灰度值,若第二类像素的灰度值范围为[0,15],则第二类像素组数为16个。因此,在一个实施例中,上述获取第二类像素组数,包括:确定目标图像属性值,并确定第二类像素的目标图像属性值对应的范围;根据第二类像素的目标图像属性值对应的范围确定第二类像素组数。
具体地,终端获取包括多个第一类像素的第一图像,并根据终端性能参数获取第二类像素组数,终端性能参数与第二类像素组数呈正相关关系。
步骤204,基于第二类像素组数确定哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;第二类像素组数与目标数量之间满足第二预设条件。
其中,哈尔基数组中包括的第一阶哈尔基至第目标数量阶哈尔基是通过对哈尔基函数(Harr basis function)进行哈尔变换迭代生成的,哈尔基函数是由一组分段常值函数组成的函数集,每一个分段常值函数的数值在一个范围里是1,在其他范围里是0。
可选地,哈尔基数组中的各哈尔基之间满足第一预设条件,可以是为了使得本申请实施例得到的目标数量的权重系数是最小二乘意义下的最优解,最小二乘意义下的最优解是使得直方图编码信息对第一图像的直方图信息的还原度最高的一个解。示例性地,哈尔基数组中的各哈尔基之间满足第一预设条件,可以是指哈尔基数组中的各哈尔基之间满足二值性和正交性,二值性指各哈尔基中每个哈尔基元素的值只有两种可能性,例如只会为1或-1,正交性指不同哈尔基之间在定义区间上的乘积的积分为0。
可选地,第二类像素组数与目标数量之间满足第二预设条件,可以是指通过对第二类像素组数进行数学运算能够得到目标数量,也可以是对目标数量进行数学运算能够得到第二类像素组数,即是说,第二类像素组数与目标数量是能够通过数学运算去互相推导得到的;示例性地,若第二类像素组数是2n个,则目标数量可以是n,即是说,若第二类像素组数是24=16,则此时目标数量是4。
可选地,哈尔基数组中的各哈尔基可以表示为多位的二进制数,各哈尔基的位数可以根据目标数量进行确定;示例性地,若目标数量为4且哈尔基的位数为2n,则各哈尔基的位数是24=16,可见,由于第二类像素组数与目标数量之间满足第二预设条件,因此,换言之,各哈尔基的位数也可以根据第二类像素组数进行确定。
步骤206,根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素。
其中,目标图像属性值,可以是第一类像素的灰度、色度或其他能够以直方图进行表示的图像属性值。
具体地,第一类像素的数量与第二类像素的数量相同。
具体地,对各第一类像素进行像素转换的目的,是为了将第一类像素对应的目标图像属性值映射到第二类像素组数所对应的目标图像属性值中,换言之,也是将第一类像素对应的第一类像素组数转换为第二类像素组数。
示例性地,假设目标图像属性值为灰度值,第一类像素对应的灰度值范围为[0,255],而第二类像素组数是16,即第二类像素对应的灰度值为[0,15],从而地,根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,是为了将灰度值为[0,15]的第一类像素转换为灰度值为0的第二类像素,将灰度值为[16,31]的第一类像素转换为灰度值为1的第二类像素…将灰度值为[240,255]的第一类像素转换为灰度值为15的第二类像素。
具体地,各第一类像素对应的第二类像素的目标图像属性值的取值范围为[0,第二类像素组数-1]。
步骤208,根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应。
可选地,在哈尔基数组中的各哈尔基之间满足二值性时,由于各哈尔基中每个哈尔基元素的值为1或-1,此时,为了进一步简化直方图编码信息的表示方式进而显著地降低图像处理算法的计算量,可以通过利用0替换-1的方式,使得各哈尔基在得到目标数量的权重系数的过程中被表示为无符号数,即是说,若哈尔基的第i位为1则对应无符号哈尔基中的第i位为1,若哈尔基的第i位为-1则对应无符号哈尔基中的第i位哈尔基为0。因此,在一个实施例中,上述根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数,包括:对哈尔基数组中的各哈尔基进行无符号数转换,得到无符号哈尔基数组;根据无符号哈尔基数组中的各无符号哈尔基和各第二类像素,得到目标数量的权重系数。
具体地,权重系数的大小,能够反映该权重系数对应哈尔基的函数曲线与第一图像的直方图形状之间的相似程度高度,即是说,权重系数越大,则说明该权重系数对应的哈尔基的函数曲线与第一图像的直方图形状之间的相似程度越高。
步骤210,将目标数量的权重系数确定为第一图像对应的直方图编码信息。
可选地,在得到目标数量的权重系数之后,可以通过确定第一类像素的数量以实现对目标数量的权重系数进行归一化处理,归一化后的权重系数为归一化前的权重系数除以第一类像素的数量所得到的商。因此,在一个实施例中,上述将目标数量的权重系数确定为第一图像对应的直方图编码信息,包括:确定第一类像素的数量;根据第一类像素的数量对目标数量的权重系数进行归一化处理,得到目标数量的归一化权重系数;将目标数量的归一化权重系数确定为第一图像对应的直方图编码信息。
示例性地,各哈尔基包括16位哈尔基元素,本申请实施例提供的第一阶哈尔基=[1, 1, 1, 1, 1, 1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1],第二阶哈尔基=[1, 1,1, 1, -1, -1,-1, -1, -1, -1, -1, -1, 1, 1, 1, 1],第三阶哈尔基=[1, 1, -1, -1,-1, -1, 1, 1, 1,1, -1, -1, -1, -1, 1, 1],第四阶哈尔基=[1, -1, -1, 1, 1, -1, -1, 1, 1, -1, -1, 1, 1, -1, -1, 1],则如图3所示分别为各哈尔基的函数曲线,横轴表示各哈尔基的位数,纵轴表示各哈尔基元素,可以看出,第二阶哈尔基是在第一阶哈尔基的基础上进行哈尔变换得到的,第三阶哈尔基是在第二阶哈尔基的基础上进行哈尔变换得到的,同理地,第四阶哈尔基是在第三阶哈尔基的基础上进行哈尔变换得到的。
可选地,在将目标数量的权重系数确定为第一图像对应的直方图编码信息之后,可以是对直方图编码信息(目标数量的权重系数)进行存储,也可以是将直方图编码信息发送给其他终端,还可以是将哈尔基数组和直方图编码信息发送给其他终端。
可选地,本申请实施例提供的直方图编码方法可以应用于嵌入式终端中,从而应用于嵌入式终端时也对应应用于嵌入式图像处理系统中,本申请实施例提供的直方图编码方法也可以应用于其他图像处理系统中,本申请在此不对直方图编码方法所应用的图像处理系统做限制。
上述直方图编码方法中,获取包括多个第一类像素的第一图像,以及获取第二类像素组数;基于第二类像素组数确定哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;第二类像素组数与目标数量之间满足第二预设条件;根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素;根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应;将目标数量的权重系数确定为第一图像对应的直方图编码信息。本申请提供的直方图编码方法,只需要通过目标数量的权重系数就能表示出第一图像对应的直方图编码信息,通过简化直方图编码信息的表示方式,从而显著地降低了图像处理算法的计算量。
在一个实施例中,上述根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素,包括:
根据第二类像素组数,确定第一移位位数;
将各第一类像素对应的目标图像属性值沿目标方向移动第一移位位数,以对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素。
其中,目标方向为沿水平方向的右边方向。
具体地,将各第一类像素对应的目标图像属性值沿目标方向移动第一移位位数,目的是使得第一类像素对应的目标图像属性值映射到第二类像素组数所对应的目标图像属性值中。
示例性地,假设用K表示第一移位位数,若第一类像素对应的目标图像属性值为二进制数,则第二类像素组数与第一移位位数之间满足以下公式:第二类像素数组=2K,假设第二类像素数组=16,则第一移位位数K=4。将各第一类像素对应的目标图像属性值沿目标方向移动4位,相当于将各第一类像素对应的目标图像属性值除以即除以16,取各个商值作为与各第一类像素对应的第二类像素的目标图像属性值,从而能够将各第一类像素对应的目标图像属性值[0,255]映射到第二类像素组数所对应的目标图像属性值[0,15]中,实现了得到与各第一类像素对应的第二类像素。
本实施例中,根据第二类像素组数,确定第一移位位数,通过将各第一类像素对应的目标图像属性值沿目标方向移动第一移位位数,以对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素。通过对第一类像素进行压缩式映射得到第二类像素,从而使得目标数量的权重系数的确定过程所涉及的计算量也得到压缩式减少,进而提升了直方图编码信息的生成效率。
在一个实施例中,上述根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数,包括:
根据各第二类像素,确定多个第二移位位数;
基于各第二移位位数,分别将哈尔基数组中的各哈尔基沿目标方向移动第二移位位数,得到各哈尔基对应的多个编码移位结果;
根据各哈尔基对应的多个编码移位结果,得到目标数量的权重系数。
具体地,将哈尔基数组中的各哈尔基沿目标方向移动第二移位位数,目的是通过得到的各哈尔基对应的多个编码移位结果确定得到各第一类像素对应的目标图像属性值在各哈尔基上的映射值。
本实施例中,根据各第二类像素,确定多个第二移位位数,基于各第二移位位数,分别将哈尔基数组中的各哈尔基沿目标方向移动第二移位位数,得到各哈尔基对应的多个编码移位结果,从而通过得到的各哈尔基对应的多个编码移位结果确定得到各第一类像素对应的目标图像属性值在各哈尔基上的映射值,以确保最终得到的第一图像对应的直方图编码信息具有准确性。
在一个实施例中,上述根据各哈尔基对应的多个编码移位结果,得到目标数量的权重系数,包括:
确定目标数量的初始化系数;目标数量的初始化系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各哈尔基一一对应;
对哈尔基数组中的各哈尔基进行遍历,并在每次遍历到一个哈尔基时,基于遍历到的哈尔基对应的每一次编码移位结果,依次对遍历到的哈尔基对应的初始化系数进行更新,得到遍历到的哈尔基对应的目标权重系数;其中,更新的次数与第二类像素的数量对应。
在一个实施例中,上述编码移位结果包括第一移位结果和第二移位结果;上述基于遍历到的哈尔基对应的每一次编码移位结果,依次对遍历到的哈尔基对应的初始化系数进行更新,得到遍历到的哈尔基对应的目标权重系数,包括:
针对每一个第二类像素,基于第二类像素对遍历到的哈尔基进行移位,得到哈尔基对应的编码移位结果;其中,多个第二类像素对应多次编码移位结果;
在编码移位结果为第一移位结果时,对遍历到的哈尔基对应的初始化系数增加第一数值;
在编码移位结果为第二移位结果时,对遍历到的哈尔基对应的初始化系数增加第二数值;
在依据所有编码移位结果完成对遍历到的哈尔基对应的初始化系数进行更新后,将最后一次更新所得的权重系数确定为遍历到的哈尔基对应的目标权重系数。
可选地,初始化系数的值为0。
可选地,在各哈尔基表示为无符号数,即将哈尔基中值为-1的哈尔基元素替换为0时,第一移位结果可以指哈尔基对应的编码移位结果为最低位是1,第二移位结果可以指哈尔基对应的编码移位结果为最低位是0。
可选地,第一数值和第二数值的绝对值相同且符号相反;示例性地,第一数值为1,则第二数值-1。
具体地,由于第二类像素的数量与第一类像素的数量相同,因此,更新的此时也与第一类像素的数量对应;具体地,更新的次数与第二类像素的数量相同。
本实施例中,对哈尔基数组中的各哈尔基进行遍历,并在每次遍历到一个哈尔基时,基于遍历到的哈尔基对应的每一次编码移位结果,在依据所有编码移位结果完成对遍历到的哈尔基对应的初始化系数进行更新后,将最后一次更新所得的权重系数确定为遍历到的哈尔基对应的目标权重系数。从而地,根据各第一类像素对应的目标图像属性值在各哈尔基上的映射值得到各哈尔基对应的目标权重系数,以确保最终得到的第一图像对应的直方图编码信息具有准确性,同时,由于对初始化系数进行更新的过程中,只涉及到加法,避免了乘法的复杂运算,进而显著地降低了图像处理算法的计算量。
在一个实施例中,上述哈尔基数组中的各哈尔基之间满足第一预设条件,具体为:
哈尔基数组中的各哈尔基之间满足二值性和正交性。
本实施例中,由于哈尔基数组中的各哈尔基之间满足二值性,从而后续通过直方图编码信息和哈尔基数组对直方图进行表示时,只需要进行加减运算,通过满足二值性避免了需要进行大量计算的乘法运算,显著地降低了图像处理算法的计算量,同时,由于哈尔基数组中的各哈尔基之间满足正交性,从而确保得到的目标数量的权重系数是最小二乘意义下的最优解,即是说,得到的目标数量的权重系数所表达的直方图信息与真实的直方图信息之间的误差是最小的。即是说,哈尔基数组中的各哈尔基之间满足二值性和正交性,能够在降低图像处理算法的计算量的同时确保直方图编码的准确性。
在一个实施例中,上述第二类像素组数为以预设数值为底数且以目标数量为指数的指数函数值。
可选地,预设数值可以是2或其他数值。
示例性地,在预设数值为2时,第二类像素组数=2目标数量
下面结合一个详细的实施例来阐述上述直方图编码方法的应用过程,具体如下:假设,第一类像素的数量与第二类像素的数量均为N,目标图像属性值为灰度值,目标方向为沿水平方向的右边方向,哈尔基表示为16位无符号二进制数,第一移位结果指哈尔基对应的编码移位结果为最低位是1,第二移位结果指哈尔基对应的编码移位结果为最低位是0,第一数值为1,则第二数值-1。
获取包括多个第一类像素的第一图像,以及获取第二类像素组数。
基于第二类像素组数确定哈尔基数组;哈尔基数组包括第一阶哈尔基h1、第二阶哈尔基h2、第三阶哈尔基h3以及第四阶哈尔基h4,且哈尔基数组中的各哈尔基之间满足二值性和正交性;第二类像素组数为16,目标数量为4。
根据第二类像素组数,确定得到第一移位位数为4;将各第一类像素对应的灰度值向右移动4位,以对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素。
根据各第二类像素,确定多个第二位移位数;基于各第二移位位数,分别将哈尔基数组中的各哈尔基向右移动第二移位位数,得到各哈尔基对应的多个移位结果;确定第一初始化系数w1=0、第二初始化系数w2=0、第三初始化系数w3=0以及第四初始化系数w4=0;第一初始化系数w1与第一阶哈尔基h1对应,第二初始化系数w2与第二阶哈尔基h2对应…第四初始化系数w4与第四阶哈尔基h4对应;对哈尔基数组中的各哈尔基进行遍历,并在每次遍历到一个哈尔基hi(i∈1,2,3,4)时,针对每一个第二类像素,基于第二类像素对遍历到的哈尔基进行移位,得到哈尔基对应的移位结果;其中,多个第二类像素对应多次移位结果;在移位结果为哈尔基对应的编码移位结果为最低位是1时,则终端执行wi←wi+1,即是说,对遍历到的哈尔基hi对应的初始化系数wi增加1;在移位结果为哈尔基对应的编码移位结果为最低位是0时,则终端执行wi←wi-1,即是说,对遍历到的哈尔基hi对应的初始化系数wi减去1;在依据所有移位结果完成对遍历到的哈尔基对应的初始化系数进行更新后,将最后一次更新所得的权重系数确定为遍历到的哈尔基hi对应的目标权重系数Wi;其中,更新的次数与第二类像素的数量对应;第一权重系数W1与第一阶哈尔基h1对应,第二权重系数W2与第二阶哈尔基h2对应…第四权重系数W4与第四阶哈尔基h4对应;第一权重系数W1至第四权重系数W4是经过归一化处理的,归一化处理即将最后一次更新得到的权重系数除以第一类像素的数量N(或第二类像素的数量N)。
将第一权重系数W1至第四权重系数W4确定为第一图像对应的直方图编码信息。
进一步地,用Hist表示第一图像对应的直方图,则基于第一图像对应的直方图编码信息和第一阶哈尔基h1至第四阶哈尔基h4之间的加权和,即公式即可得到第一图像对应的直方图的Hist。
上述图2所示的实施例应用于直方图编码方,相对的直方图解码方,在一个实施例中,如图4所示,提供了一种直方图解码方法,该方法同样可由图1中的服务器或终端执行,或由服务器和终端协同执行,以该方法由图1中的终端执行为例进行说明,包括以下步骤:
步骤402,获取目标数量的权重系数和哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;
步骤404,确定第二类像素组数的初始元素;第二类像素组数与目标数量之间满足第二预设条件;
步骤406,根据各初始元素的序号,确定第二类像素组数的第三移位位数;各第三移位位数与各初始元素一一对应;
步骤408,基于各第三移位位数,分别将哈尔基数组中的各哈尔基沿目标方向移动第三移位位数,得到各哈尔基对应的第二类像素组数的解码移位结果;
步骤410,根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素;
步骤412,将第二类像素组数的目标元素确定为第一图像的直方图信息。
其中,直方图编码方和直方图解码方可以是同一个终端,直方图解码方也可以是不同于直方图编码方的其他终端,在此不作限制。
具体地,哈尔基数组,可以是直方图编码方的终端发送给直方图解码方的终端;也可以是直方图解码方事先将哈尔基数组存储于本地终端中,从而地,直方图解码方的终端直接在本地获取哈尔基数组。
可选地,初始元素的值可以是0或其他数值。
具体地,初始元素与目标图像属性值对应。若直方图编码方将目标图像属性值划分分组为第二类像素组数,则第二类像素组数的初始元素即为目标图像属性值的不同划分分组。示例性地,直方图编码方在进行直方图编码时将灰度值划分为[0,15],即第二类像素组数为16,则直方图解码方确定的初始元素pi(i∈0,1,2,…15,i∈Z)的数量也为16个,代表16个不同灰度值。
具体地,第一图像的直方图信息与第一图像的直方图编码信息对应,即是说,通过第一图像的直方图编码信息和哈尔基数组能够得到第一图像的直方图信息。
具体地,各初始元素的序号,为从第一至第二类像素组数;示例性地,若第二类像素组数为16,则初始元素的序号为第1至第16。
具体地,各第三移位位数与各初始元素一一对应,即是说,各第三移位位数等于各初始元素的序号;示例性地,若初始元素的序号为第1至第16,则各第三移位位数分别为1至16。
进一步地,直方图解码方的终端得到第一图像的直方图信息之后,可以进行直方图均衡化处理或其他针对直方图的图像处理。
本实施例中,直方图解码方只需要获取目标数量的权重系数和哈尔基数组,便能够得到第二类像素组数的目标元素以确定为第一图像的直方图信息,显然地,本实施例提供的直方图解码方法通过简化直方图信息的还原方式,从而显著地降低了图像处理算法的计算量。
在一个实施例中,上述根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素,包括:
对各初始元素进行遍历,并在每次遍历到一个初始元素时,基于遍历到的初始元素的序号对应的权重系数和解码移位结果,依次对遍历到的初始元素进行更新,得到遍历到的初始元素的序号对应的目标元素;其中,更新的次数与目标数量对应。
具体地,遍历到的初始元素的序号与各哈尔基对应,而各哈尔基对应有权重系数和解码移位结果,因此,遍历到的初始元素也与权重系数和解码移位结果具有对应关系。
在一个实施例中,上述解码移位结果包括第三移位结果和第四移位结果;基于遍历到的初始元素的序号对应的权重系数和解码移位结果,依次对遍历到的初始元素进行更新,得到遍历到的初始元素的序号对应的目标元素,包括:
在解码移位结果为第三移位结果时,对遍历到的初始元素增加与解码移位结果对应的权重系数;
在解码移位结果为第四移位结果时,对遍历到的初始元素减去与解码移位结果对应的权重系数;
在依据所有解码移位结果完成对遍历到的初始元素进行更新后,将最后一次更新所得的初始元素确定为遍历到的目标元素。
具体地,解码移位结果与哈尔基对应,而各哈尔基与各权重系数对应,因此,解码移位结果与权重系数之间也具有对应关系。
可选地,第三移位结果可以指哈尔基对应的解码移位结果为最低位是1,第四移位结果可以指哈尔基对应的解码移位结果为最低位是0。
示例性地,若目标数量为4,第二类像素组数为16,即是说,有第一阶哈尔基至第四阶哈尔基,以及16个初始元素,假设遍历到的第1个初始元素,由于序号为1,则此时分别将第一阶哈尔基至第四阶哈尔基向右移位1位,若第一阶哈尔基的解码移位结果为第三移位结果,则对遍历到的第1个初始元素增加与第一阶哈尔基对应的第一权重系数,若第一阶哈尔基的解码移位结果为第四移位结果,则对遍历到的第1个初始元素减去与第一阶哈尔基对应的第一权重系数,需要说明的是,此时解码移位结果由于与第一阶哈尔基对应,而第一阶哈尔基与第一权重系数对应,因此,此时解码移位结果与第一权重系数具有对应关系,同理地,根据第二阶哈尔基的解码移位结果,对遍历到的第1个初始元素确定是增加亦或减去与第二阶哈尔基对应的第二权重系数…以此类推,直到完成根据第四阶哈尔基的解码移位结果也对遍历到的第1个初始元素确定是增加亦或减去与第四阶哈尔基对应的第四权重系数;同理地,遍历到第2个初始元素至第16个初始元素时的更新过程同理,在此不再赘述。
具体地,各哈尔基对各初始元素均有第二类像素组数的个移位结果,各初始元素基于与其对应的各哈尔基的移位结果进行更新,最终得到各目标元素。基于上述示例性地,有4个哈尔基和16个初始元素,4个哈尔基中各哈尔基对16个初始元素中各初始元素均对应有移位结果,因此,各初始元素根据与其对应的4个哈尔基的4个移位结果进行更新,最终得到16个目标元素,即是说,每个初始元素经过4次更新后得到最终确定的目标元素,为了确定最终得到的16个目标元素总共要进行64次更新。
在一个实施例中,上述将第二类像素组数的目标元素确定为第一图像的直方图信息,包括:
对第二类像素组数的目标元素进行归一化处理,得到第二类像素组数的归一化目标元素;
将第二类像素组数的归一化目标元素确定为第一图像的直方图信息。
具体地,用Pj表示目标元素,则归一化目标元素
可选地,本申请实施例提供的直方图解码方法可以应用于嵌入式终端中,从而应用于嵌入式终端时也对应应用于嵌入式图像处理系统中,本申请实施例提供的直方图解码方法也可以应用于其他图像处理系统中,本申请在此不对直方图解码方法所应用的图像处理系统做限制。
下面结合一个详细的实施例来阐述上述直方图解码方法的应用过程,具体如下:假设,目标数量为4,第二类像素组数为16,目标图像属性值为灰度值,目标方向为沿水平方向的右边方向,第三移位结果指哈尔基对应的解码移位结果为最低位是1,第四移位结果指哈尔基对应的解码移位结果为最低位是0。
获取第一权重系数W1至第四权重系数W4和哈尔基数组;哈尔基数组包括第一阶哈尔基h1至第四阶哈尔基h4,且哈尔基数组中的各哈尔基之间满足二值性和正交性;
确定初始元素pj(j∈0,1,2,…15,j∈Z)均为0;
根据各初始元素的序号j,确定第二类像素组数的第三移位位数;各第三移位位数与各初始元素一一对应;具体地,各第三移位位数等于各初始元素的序号;
基于各第三移位位数,分别将哈尔基数组中的各哈尔基沿目标方向移动第三移位位数,得到各哈尔基对应的16个移位结果;
对各初始元素进行遍历,并在每次遍历到一个初始元素时,在移位结果为哈尔基对应的解码移位结果为最低位是1时,则终端执行pj←pj+wi,即是说,对遍历到的初始元素增加与解码移位结果对应的权重系数wi(i∈1,2,3,4);在移位结果为哈尔基对应的解码移位结果为最低位是0时,则终端执行pj←pj-wi,即是说,对遍历到的初始元素减去与解码移位结果对应的权重系数;在依据所有移位结果完成对遍历到的初始元素进行更新后,将最后一次更新所得的初始元素确定为遍历到的目标元素Pj,至此,得到第一元素P1、第二元素P2…第十六元素P16共16个目标元素;其中,更新的次数与目标数量对应;
将16个目标元素(P1、P2…P16)确定为第一图像的直方图信息。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的直方图编码方法的直方图编码装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个直方图编码装置实施例中的具体限定可以参见上文中对于直方图编码方法的限定,在此不再赘述。
在一个实施例中,如图5所示,提供了一种直方图编码装置,包括:获取模块502、第一确定模块504、转换模块506、第二确定模块508和第三确定模块510,其中:
获取模块502,用于获取包括多个第一类像素的第一图像,以及获取第二类像素组数;
第一确定模块504,用于基于第二类像素组数确定哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;第二类像素组数与目标数量之间满足第二预设条件;
转换模块506,用于根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素;
第二确定模块508,用于根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应;
第三确定模块510,用于将目标数量的权重系数确定为第一图像对应的直方图编码信息。
在一个实施例中,在根据各第一类像素对应的目标图像属性值和第二类像素组数对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素方面,上述转换模块506具体用于:
根据第二类像素组数,确定第一移位位数;
将各第一类像素对应的目标图像属性值沿目标方向移动第一移位位数,以对各第一类像素进行像素转换,得到与各第一类像素对应的第二类像素。
在一个实施例中,在根据哈尔基数组中的各哈尔基和各第二类像素,得到目标数量的权重系数方面,上述第二确定模块508具体用于:
根据各第二类像素,确定多个第二移位位数;
基于各第二移位位数,分别将哈尔基数组中的各哈尔基沿目标方向移动第二移位位数,得到各哈尔基对应的多个编码移位结果;
根据各哈尔基对应的多个编码移位结果,得到目标数量的权重系数。
在一个实施例中,在根据各哈尔基对应的多个编码移位结果,得到目标数量的权重系数方面,上述第二确定模块508还具体用于:
确定目标数量的初始化系数;目标数量的初始化系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各哈尔基一一对应;
对哈尔基数组中的各哈尔基进行遍历,并在每次遍历到一个哈尔基时,基于遍历到的哈尔基对应的每一次编码移位结果,依次对遍历到的哈尔基对应的初始化系数进行更新,得到遍历到的哈尔基对应的目标权重系数;其中,更新的次数与第二类像素的数量对应。
在一个实施例中,上述编码移位结果包括第一移位结果和第二移位结果;在基于遍历到的哈尔基对应的每一次编码移位结果,依次对遍历到的哈尔基对应的初始化系数进行更新,得到遍历到的哈尔基对应的目标权重系数方面,上述第二确定模块508还具体用于:
针对每一个第二类像素,基于第二类像素对遍历到的哈尔基进行移位,得到哈尔基对应的编码移位结果;其中,多个第二类像素对应多次编码移位结果;
在编码移位结果为第一移位结果时,对遍历到的哈尔基对应的初始化系数增加第一数值;
在编码移位结果为第二移位结果时,对遍历到的哈尔基对应的初始化系数增加第二数值;
在依据所有编码移位结果完成对遍历到的哈尔基对应的初始化系数进行更新后,将最后一次更新所得的权重系数确定为遍历到的哈尔基对应的目标权重系数。
在一个实施例中,上述哈尔基数组中的各哈尔基之间满足第一预设条件,具体为:
哈尔基数组中的各哈尔基之间满足二值性和正交性。
在一个实施例中,上述第二类像素组数为以预设数值为底数且以目标数量为指数的指数函数值。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的直方图解码方法的直方图解码装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个直方图解码装置实施例中的具体限定可以参见上文中对于直方图解码方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种直方图编码装置,包括:获取模块602、第一确定模块604、第二确定模块606、第三确定模块608、第四确定模块610和第五确定模块612,其中:
获取模块602,用于获取目标数量的权重系数和哈尔基数组;哈尔基数组包括目标数量的不同阶数的哈尔基,且哈尔基数组中的各哈尔基之间满足第一预设条件;
第一确定模块604,用于确定第二类像素组数的初始元素;第二类像素组数与目标数量之间满足第二预设条件;
第二确定模块606,用于根据各初始元素的序号,确定第二类像素组数的第三移位位数;各第三移位位数与各初始元素一一对应;
第三确定模块608,用于基于各第三移位位数,分别将哈尔基数组中的各哈尔基沿目标方向移动第三移位位数,得到各哈尔基对应的第二类像素组数的解码移位结果;
第四确定模块610,用于根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素;
第五确定模块612,用于将第二类像素组数的目标元素确定为第一图像的直方图信息。
在一个实施例中,在根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素方面,上述第四确定模块610具体用于:
对各初始元素进行遍历,并在每次遍历到一个初始元素时,基于遍历到的初始元素的序号对应的权重系数和解码移位结果,依次对遍历到的初始元素进行更新,得到遍历到的初始元素的序号对应的目标元素;其中,更新的次数与目标数量对应。
在一个实施例中,上述解码移位结果包括第三移位结果和第四移位结果;在基于遍历到的初始元素的序号对应的权重系数和解码移位结果,依次对遍历到的初始元素进行更新,得到遍历到的初始元素的序号对应的目标元素方面,上述第四确定模块610还具体用于:
在解码移位结果为第三移位结果时,对遍历到的初始元素增加与解码移位结果对应的权重系数;
在解码移位结果为第四移位结果时,对遍历到的初始元素减去与解码移位结果对应的权重系数;
在依据所有解码移位结果完成对遍历到的初始元素进行更新后,将最后一次更新所得的初始元素确定为遍历到的目标元素。
上述直方图编码装置以及直方图解码装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储图像数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种直方图编码方法或一种直方图解码方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种直方图编码方法或一种直方图解码方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器以及专用集成电路(Application Specific Integrated Circuit,ASIC)芯片等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (14)

1.一种直方图编码方法,其特征在于,所述方法包括:
获取包括多个第一类像素的第一图像,以及获取第二类像素组数;
基于所述第二类像素组数确定哈尔基数组;所述哈尔基数组包括目标数量的不同阶数的哈尔基,且所述哈尔基数组中的各哈尔基之间满足第一预设条件;所述第二类像素组数与所述目标数量之间满足第二预设条件;
根据各所述第一类像素对应的目标图像属性值和所述第二类像素组数对各所述第一类像素进行像素转换,得到与各所述第一类像素对应的第二类像素;
根据各所述第二类像素,确定多个第二移位位数;基于各所述第二移位位数,分别将所述哈尔基数组中的各哈尔基沿目标方向移动所述第二移位位数,得到各哈尔基对应的多个移位结果;确定所述目标数量的初始化系数;所述目标数量的初始化系数分别与所述第一阶哈尔基至第目标数量阶哈尔基中的各哈尔基一一对应;对所述哈尔基数组中的各哈尔基进行遍历,并在每次遍历到一个哈尔基时,基于遍历到的所述哈尔基对应的每一次编码移位结果,依次对遍历到的所述哈尔基对应的初始化系数进行更新,得到遍历到的所述哈尔基对应的目标权重系数;其中,更新的次数与所述第二类像素的数量对应;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应;所述权重系数用于反映该权重系数对应哈尔基的函数曲线与第一图像的直方图形状之间的相似程度;
将所述目标数量的权重系数确定为所述第一图像对应的直方图编码信息。
2.根据权利要求1所述的方法,其特征在于,所述根据各所述第一类像素对应的目标图像属性值和所述第二类像素组数对各所述第一类像素进行像素转换,得到与各所述第一类像素对应的第二类像素,包括:
根据所述第二类像素组数,确定第一移位位数;
将各所述第一类像素对应的目标图像属性值沿目标方向移动所述第一移位位数,以对各所述第一类像素进行像素转换,得到与各所述第一类像素对应的第二类像素。
3.根据权利要求1所述的方法,其特征在于,所述第二类像素组数是2n个。
4.根据权利要求1所述的方法,其特征在于,所述获取包括多个第一类像素的第一图像,以及获取第二类像素组数,包括:
获取包括多个第一类像素的第一图像,并根据终端性能参数获取所述第二类像素组数,所述终端性能参数与所述第二类像素组数呈正相关关系。
5.根据权利要求1所述的方法,其特征在于,所述编码移位结果包括第一移位结果和第二移位结果;所述基于遍历到的所述哈尔基对应的每一次编码移位结果,依次对遍历到的所述哈尔基对应的初始化系数进行更新,得到遍历到的所述哈尔基对应的目标权重系数,包括:
针对每一个第二类像素,基于所述第二类像素对遍历到的所述哈尔基进行移位,得到所述哈尔基对应的编码移位结果;其中,多个所述第二类像素对应多次编码移位结果;
在所述编码移位结果为所述第一移位结果时,对遍历到的所述哈尔基对应的初始化系数增加第一数值;
在所述编码移位结果为所述第二移位结果时,对遍历到的所述哈尔基对应的初始化系数增加第二数值;
在依据所有编码移位结果完成对遍历到的所述哈尔基对应的初始化系数进行更新后,将最后一次更新所得的权重系数确定为遍历到的所述哈尔基对应的目标权重系数。
6.根据权利要求1所述的方法,其特征在于,所述哈尔基数组中的各哈尔基之间满足第一预设条件,具体为:
所述哈尔基数组中的各哈尔基之间满足二值性和正交性。
7.根据权利要求1所述的方法,其特征在于,所述第二类像素组数为以预设数值为底数且以所述目标数量为指数的指数函数值。
8.一种利用于权利要求1所述的直方图编码方法的直方图解码方法,其特征在于,所述直方图解码方法包括:
获取目标数量的权重系数和哈尔基数组;所述哈尔基数组包括目标数量的不同阶数的哈尔基,且所述哈尔基数组中的各哈尔基之间满足第一预设条件;
确定第二类像素组数的初始元素;所述第二类像素组数与所述目标数量之间满足第二预设条件;
根据各所述初始元素的序号,确定第二类像素组数的第三移位位数;各第三移位位数与各初始元素一一对应;
基于各所述第三移位位数,分别将所述哈尔基数组中的各哈尔基沿目标方向移动所述第三移位位数,得到各哈尔基对应的第二类像素组数的解码移位结果;
根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素;
将所述第二类像素组数的目标元素确定为第一图像的直方图信息。
9.根据权利要求8所述的方法,其特征在于,所述根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素,包括:
对各初始元素进行遍历,并在每次遍历到一个初始元素时,基于遍历到的所述初始元素的序号对应的权重系数和解码移位结果,依次对遍历到的所述初始元素进行更新,得到遍历到的所述初始元素的序号对应的目标元素;其中,更新的次数与所述目标数量对应。
10.根据权利要求9所述的方法,其特征在于,所述解码移位结果包括第三移位结果和第四移位结果;所述基于遍历到的所述初始元素的序号对应的权重系数和解码移位结果,依次对遍历到的所述初始元素进行更新,得到遍历到的所述初始元素的序号对应的目标元素,包括:
在所述解码移位结果为所述第三移位结果时,对遍历到的所述初始元素增加与所述解码移位结果对应的权重系数;
在所述解码移位结果为所述第四移位结果时,对遍历到的所述初始元素减去与所述解码移位结果对应的权重系数;
在依据所有解码移位结果完成对遍历到的所述初始元素进行更新后,将最后一次更新所得的初始元素确定为遍历到的所述目标元素。
11.一种直方图编码装置,其特征在于,所述装置包括:
获取模块,用于获取包括多个第一类像素的第一图像,以及获取第二类像素组数;
第一确定模块,用于基于所述第二类像素组数确定哈尔基数组;所述哈尔基数组包括目标数量的不同阶数的哈尔基,且所述哈尔基数组中的各哈尔基之间满足第一预设条件;所述第二类像素组数与所述目标数量之间满足第二预设条件;
转换模块,用于根据各所述第一类像素对应的目标图像属性值和所述第二类像素组数对各所述第一类像素进行像素转换,得到与各所述第一类像素对应的第二类像素;
第二确定模块,用于根据各所述第二类像素,确定多个第二移位位数;基于各所述第二移位位数,分别将所述哈尔基数组中的各哈尔基沿目标方向移动所述第二移位位数,得到各哈尔基对应的多个移位结果;确定所述目标数量的初始化系数;所述目标数量的初始化系数分别与所述第一阶哈尔基至第目标数量阶哈尔基中的各哈尔基一一对应;对所述哈尔基数组中的各哈尔基进行遍历,并在每次遍历到一个哈尔基时,基于遍历到的所述哈尔基对应的每一次编码移位结果,依次对遍历到的所述哈尔基对应的初始化系数进行更新,得到遍历到的所述哈尔基对应的目标权重系数;其中,更新的次数与所述第二类像素的数量对应;目标数量的权重系数分别与第一阶哈尔基至第目标数量阶哈尔基中的各阶哈尔基一一对应;所述权重系数用于反映该权重系数对应哈尔基的函数曲线与第一图像的直方图形状之间的相似程度;
第三确定模块,用于将所述目标数量的权重系数确定为所述第一图像对应的直方图编码信息。
12.一种利用于权利要求11所述的直方图编码装置的直方图解码装置,其特征在于,所述直方图解码装置包括:
获取模块,用于获取目标数量的权重系数和哈尔基数组;所述哈尔基数组包括目标数量的不同阶数的哈尔基,且所述哈尔基数组中的各哈尔基之间满足第一预设条件;
第一确定模块,用于确定第二类像素组数的初始元素;所述第二类像素组数与所述目标数量之间满足第二预设条件;
第二确定模块,用于根据各所述初始元素的序号,确定第二类像素组数的第三移位位数;各第三移位位数与各初始元素一一对应;
第三确定模块,用于基于各所述第三移位位数,分别将所述哈尔基数组中的各哈尔基沿目标方向移动所述第三移位位数,得到各哈尔基对应的第二类像素组数的解码移位结果;
第四确定模块,用于根据各哈尔基对应的权重系数和第二类像素组数的解码移位结果,得到第二类像素组数的目标元素;
第五确定模块,用于将所述第二类像素组数的目标元素确定为第一图像的直方图信息。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至10中任一项所述的方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10中任一项所述的方法的步骤。
CN202410146170.4A 2024-02-02 2024-02-02 直方图编码方法、直方图解码方法、装置、设备和介质 Active CN117689556B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410146170.4A CN117689556B (zh) 2024-02-02 2024-02-02 直方图编码方法、直方图解码方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410146170.4A CN117689556B (zh) 2024-02-02 2024-02-02 直方图编码方法、直方图解码方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN117689556A CN117689556A (zh) 2024-03-12
CN117689556B true CN117689556B (zh) 2024-05-07

Family

ID=90135669

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410146170.4A Active CN117689556B (zh) 2024-02-02 2024-02-02 直方图编码方法、直方图解码方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN117689556B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702962A (zh) * 2015-03-03 2015-06-10 华为技术有限公司 帧内编解码方法、编码器和解码器
JP2017033372A (ja) * 2015-08-04 2017-02-09 日本放送協会 人物認識装置及びそのプログラム
CN112233051A (zh) * 2020-09-09 2021-01-15 浙江大华技术股份有限公司 一种中值滤波方法、中值滤波装置和计算机可读存储介质
CN115908594A (zh) * 2021-09-29 2023-04-04 中国电信股份有限公司 图像特征压缩、解压方法、装置、存储介质及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10491895B2 (en) * 2016-05-23 2019-11-26 Intel Corporation Fast and robust human skin tone region detection for improved video coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702962A (zh) * 2015-03-03 2015-06-10 华为技术有限公司 帧内编解码方法、编码器和解码器
JP2017033372A (ja) * 2015-08-04 2017-02-09 日本放送協会 人物認識装置及びそのプログラム
CN112233051A (zh) * 2020-09-09 2021-01-15 浙江大华技术股份有限公司 一种中值滤波方法、中值滤波装置和计算机可读存储介质
CN115908594A (zh) * 2021-09-29 2023-04-04 中国电信股份有限公司 图像特征压缩、解压方法、装置、存储介质及电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于小波变换的印刷质量分析;姚海根;出版与印刷;20050930(第03期);全文 *
姚海根.基于小波变换的印刷质量分析.出版与印刷.2005,(第03期),全文. *

Also Published As

Publication number Publication date
CN117689556A (zh) 2024-03-12

Similar Documents

Publication Publication Date Title
CN110363279B (zh) 基于卷积神经网络模型的图像处理方法和装置
WO2019238029A1 (zh) 卷积神经网络系统和卷积神经网络量化的方法
CN109816615A (zh) 图像处理方法、装置、设备以及存储介质
WO2020074989A1 (en) Data representation for dynamic precision in neural network cores
US11714921B2 (en) Image processing method with ash code on local feature vectors, image processing device and storage medium
CN111831844A (zh) 图像检索方法、图像检索装置、图像检索设备及介质
WO2018226298A1 (en) Differential privacy using a multibit histogram
CN112990228B (zh) 图像特征匹配方法和相关装置、设备及存储介质
WO2020233709A1 (zh) 模型压缩方法及装置
CN116824092B (zh) 三维模型生成方法、装置、计算机设备和存储介质
CN114222129A (zh) 图像压缩编码方法、装置、计算机设备和存储介质
CN116977531A (zh) 三维纹理图像的生成方法、装置、计算机设备和存储介质
CN117710189A (zh) 图像处理方法、装置、计算机设备和存储介质
CN111429388B (zh) 一种图像处理方法、装置和终端设备
CN116894802B (zh) 图像增强方法、装置、计算机设备和存储介质
CN114640354A (zh) 数据压缩方法、装置、电子设备及计算机可读存储介质
CN117689556B (zh) 直方图编码方法、直方图解码方法、装置、设备和介质
CN117894038A (zh) 一种图像中对象姿态生成方法和装置
CN110266834B (zh) 基于互联网协议地址的地区查找方法及装置
CN111325215B (zh) 图像局部特征描述方法、装置、设备及介质
CN110782003A (zh) 一种基于哈希学习的神经网络压缩方法及系统
CN110751274A (zh) 一种基于随机投影哈希的神经网络压缩方法及系统
CN109741264B (zh) 图像过度表示方法、装置、电子设备及可读存储介质
CN111191602A (zh) 行人相似度获取方法、装置、终端设备及可读存储介质
CN110135568B (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