图像处理方法、图像处理装置、电子设备、图像显示系统
本申请要求于2020年07月31日提交的、申请号为202010760138.7的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本公开涉及显示技术领域,尤其涉及一种图像处理方法、图像处理装置、电子设备、图像显示系统。
背景技术
随着技术的发展,电子设备例如摄像机、手机或者电脑等,越来越智能化,功能更加多样化,并且不同电子设备之间的相互传输资源也越来越广泛。
发明内容
一方面,提供一种图像处理方法。所述图像处理方法包括:获取第一图像的第一图像数据;所述第一图像数据包括所述第一图像中多个像素的像素值;在所述第一图像中存在第一允许压缩区域的情况下,获取所述第一允许压缩区域的区域表达信息;所述第一允许压缩区域包括所述第一图像中连续分布的多个第一像素所在区域,所述多个第一像素中的任意两个第一像素的像素值的差值在预设范围内;根据所述第一允许压缩区域内的至少一个第一像素的像素值,确定所述第一允许压缩区域的区域像素值;生成所述第一图像的第二图像数据;所述第一图像的第二图像数据包括所述第一允许压缩区域的区域表达信息和所述第一允许压缩区域的区域像素值。
在一些实施例中,所述在所述第一图像中存在第一允许压缩区域的情况下,获取所述第一允许压缩区域的区域表达信息,包括:确定所述第一图像中的至少一个对象所在的初始区域;所述至少一个对象的边沿构成的图形具有第一预设形状;在所述初始区域存在第一允许压缩区域的情况下,获取所述初始区域中的第一允许压缩区域的区域表达信息。
在一些实施例中,所述图像处理方法还包括:获取参考像素值;所述参考像素值为所述初始区域内的各像素的像素值中数量占比最大的像素值;确定所述初始区域中的第一允许压缩区域;所述初始区域中的第一允许压缩区域包括所述初始区域中的像素值与所述参考像素值的差值在预设范围内、且连续分布的多个第一像素。
在一些实施例中,所述第一允许压缩区域具有至少一条封闭的边沿,每条边沿构成的图形呈一个第二预设形状。
在一些实施例中,在所述生成所述第一图像的第二图像数据之前,所述 图像处理方法还包括:在所述第一图像中存在第二允许压缩区域的情况下,将所述第二允许压缩区域中的至少一条具有第二预设形状的边沿围成的子区域作为第一允许压缩区域,所述第二允许压缩区域包括所述第一图像中连续分布的多个第一像素所在区域。所述第一允许压缩区域的区域表达信息包括所述第一允许压缩区域的每条边沿相应的第二预设形状和位置信息,所述位置信息被配置为基于所述边沿的第二预设形状,表示所述边沿的位置。
在一些实施例中,所述至少一条封闭的边沿包括第二允许压缩区域的外边沿。所述将所述第二允许压缩区域中的至少一条具有第二预设形状的边沿围成的子区域作为第一允许压缩区域,包括:在所述第二允许压缩区域的外边沿以内,确定至少一个具有第二预设形状的内接图形,将至少一个具有第二预设形状的内接图形中面积最大者的边沿作为所述第一允许压缩区域的外边沿。
在一些实施例中,所述至少一条封闭的边沿还包括第二允许压缩区域的内边沿。所述将所述第二允许压缩区域中的至少一条具有第二预设形状的边沿围成的子区域作为第一允许压缩区域,包括:在所述第二允许压缩区域的内边沿以外,确定至少一个具有第二预设形状的外接图形,将至少一个具有第二预设形状的外接图形中面积最小者的边沿作为所述第一允许压缩区域的内边沿。
在一些实施例中,所述根据所述第一允许压缩区域内的至少一个第一像素的像素值,确定所述第一允许压缩区域的区域像素值,包括:求取所述第一允许压缩区域内的多个第一像素的像素值的平均值,得到所述第一允许压缩区域的区域像素值。
在一些实施例中,所述第一图像的第二图像数据还包括所述第一图像中第二像素的像素值,所述第二像素为所述第一图像中的位于所述第一允许压缩区域以外的像素。
另一方面,提供一种图像处理方法。所述图像处理方法还包括:获取图像序列集,所述图像序列集包括依次连续的N个图像;N为大于1的整数;所述N个图像中的第一个图像的数据为第一图像数据;所述第一图像数据包括所述第一个图像中多个像素的像素值;依次获得第一个至第N个图像的第二图像数据;所述第一个图像的第二图像数据包括所述第一个图像的第一允许压缩区域的区域表达信息和区域像素值;在所述第一个图像的第一允许压缩区域中的各像素的像素值,与第M个图像的第一允许压缩区域中的对应的各像素的像素值的差值在预设范围内的情况下,所述第M个图像的第二图像 数据包括所述第M个图像的第一允许压缩区域的区域表达信息和区域像素值、以及所述第M个图像中第二像素的像素值,且所述第M个图像的第一允许压缩区域的区域表达信息和区域像素值分别为所述第一个图像的第一允许压缩区域的区域表达信息和区域像素值;其中,2≤M≤N,M为整数。
在一些实施例中,每个图像包含前景部分和背景部分;所述第一个图像的背景部分具有至少一个第一允许压缩区域;在所述第M个图像的前景部分与所述至少一个第一允许压缩区域无交叠区域的情况下,所述第M个图像的第二图像数据所包括的所述第M个图像的第一允许压缩区域的区域表达信息和区域像素值分别为所述第一个图像的第一允许压缩区域的区域表达信息和区域像素值。
在一些实施例中,所述图像处理方法还包括发送所述第二图像数据至电子设备。
又一方面,提供一种图像处理方法。所述图像处理方法包括:获取一图像的第二图像数据;其中,所述图像中存在第一允许压缩区域,所述第一允许压缩区域包括所述图像中连续分布的多个第一像素所在区域,所述多个第一像素中的任意两个第一像素的像素值的差值在预设范围内;所述图像的第二图像数据包括所述第一允许压缩区域的区域表达信息和所述第一允许压缩区域的区域像素值;将所述图像的第二图像数据转换成所述图像的第三图像数据;所述第三图像数据中的位于所述第一允许压缩区域以内的各像素的像素值,均为所述区域像素值。
在一些实施例中,所述图像处理方法还包括根据所述第三图像数据进行显示。
又一方面,提供一种图像处理装置。所述图像处理装置包括获取单元和处理单元,所述处理单元和所述获取单元耦接。所述获取单元被配置为获取第一图像的第一图像数据;所述第一图像数据包括所述第一图像中多个像素的像素值。所述处理单元被配置为在所述第一图像中存在第一允许压缩区域的情况下,获取所述第一允许压缩区域的区域表达信息;及,根据所述第一允许压缩区域内的至少一个第一像素的像素值,确定所述第一允许压缩区域的区域像素值,并生成所述第一图像的第二图像数据。其中,所述第一允许压缩区域包括所述第一图像中连续分布的多个第一像素所在区域,所述多个第一像素中的任意两个第一像素的像素值的差值在预设范围内;所述第一图像的第二图像数据包括所述第一允许压缩区域的区域表达信息和所述第一允许压缩区域的区域像素值。
在一些实施例中,所述图像处理装置还包括发送单元。所述发送单元与所述处理单元耦接。所述发送单元被配置为发送所述第二图像数据至电子设备。
再一方面,提供一种图像处理装置。所述图像处理装置包括获取单元和处理单元,所述处理单元和所述获取单元耦接。所述获取单元被配置为获取一图像的第二图像数据。其中,所述图像中存在第一允许压缩区域,所述第一允许压缩区域包括所述图像中连续分布的多个第一像素所在区域,所述多个第一像素中的任意两个第一像素的像素值的差值在预设范围内;所述图像的第二图像数据包括所述第一允许压缩区域的区域表达信息和所述第一允许压缩区域的区域像素值。所述处理单元被配置为将所述图像的第二图像数据转换成所述图像的第三图像数据。其中,所述第三图像数据中的位于所述第一允许压缩区域以内的各像素的像素值,均为所述区域像素值。
又一方面,提供一种电子设备。所述电子设备包括存储器和处理器。所述处理器与所述存储器耦接。所述存储器中存储一个或多个计算机程序指令。所述处理器被配置为执行所述一个或多个计算机程序指令,以使得所述电子设备实现上述实施例所述的图像处理方法。
又一方面,提供一种图像显示系统。所述图像显示系统包括:第一电子设备和第二电子设备。所述第二电子设备与所述第一电子设备耦接。所述第一电子设备被配置为实现上述一些实施例所述的图像处理方法。第二电子设备被配置为实现上述另一些实施例所述的图像处理方法。
又一方面,提供一种计算机可读存储介质。所述计算机可读存储介质存储有计算机程序指令,所述计算机程序指令在计算机上运行时,使得所述计算机实现如上述实施例所述的图像处理方法。
又一方面,提供一种计算机程序产品。所述计算机程序产品包括计算机程序指令,在计算机上执行所述计算机程序指令时,所述计算机程序指令使计算机执行如上述实施例所述的图像处理方法。
又一方面,提供一种计算机程序。当所述计算机程序在计算机上执行时,所述计算机程序使计算机执行如上述实施例所述的图像处理方法中。
附图说明
为了更清楚地说明本公开中的技术方案,下面将对本公开一些实施例中所需要使用的附图作简单地介绍,然而,下面描述中的附图仅仅是本公开的一些实施例的附图,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。此外,以下描述中的附图可以视作示意图, 并非对本公开实施例所涉及的产品的实际尺寸、方法的实际流程、信号的实际时序等的限制。
图1为根据一些实施例的图像显示系统的一种结构图;
图2为根据一些实施例的电子设备的一种结构图;
图3为根据一些实施例的图像显示系统的另一种结构图;
图4为根据一些实施例的第一图像的一种像素示意图;
图5为根据一些实施例的图像处理方法的一种流程图;
图6为根据一些实施例的第一图像的另一种像素示意图;
图7为根据一些实施例的图像处理方法的另一种流程图;
图8为根据一些实施例的第一图像的一种区域示意图;
图9为根据一些实施例的第一图像的又一种像素示意图;
图10为根据一些实施例的第一图像的另一种区域示意图;
图11为根据一些实施例的图像处理方法的又一种流程图;
图12为根据一些实施例的第一图像的又一种区域示意图;
图13为根据一些实施例的第一图像的又一种区域示意图;
图14为根据一些实施例的图像处理方法的又一种流程图;
图15为根据一些实施例的第一个图像和第M个图像的一种对比图;
图16为根据一些实施例的第一个图像和第M个图像的另一种对比图;
图17为根据一些实施例的图像处理方法的又一种流程图;
图18为根据一些实施例的图像处理装置的一种结构图;
图19为根据一些实施例的图像处理装置的另一种结构图。
具体实施方式
下面将结合附图,对本公开一些实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开所提供的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本公开保护的范围。
除非上下文另有要求,否则,在整个说明书和权利要求书中,术语“包括(comprise)”及其其他形式例如第三人称单数形式“包括(comprises)”和现在分词形式“包括(comprising)”被解释为开放、包含的意思,即为“包含,但不限于”。在说明书的描述中,术语“一个实施例(one embodiment)”、“一些实施例(some embodiments)”、“示例性实施例(exemplary embodiments)”、“示例(example)”、“特定示例(specific example)” 或“一些示例(some examples)”等旨在表明与该实施例或示例相关的特定特征、结构、材料或特性包括在本公开的至少一个实施例或示例中。上述术语的示意性表示不一定是指同一实施例或示例。此外,所述的特定特征、结构、材料或特点可以以任何适当方式包括在任何一个或多个实施例或示例中。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在描述一些实施例时,可能使用了“耦接”和“连接”及其衍伸的表达。例如,描述一些实施例时可能使用了术语“连接”以表明两个或两个以上部件彼此间有直接物理接触或电接触。又如,描述一些实施例时可能使用了术语“耦接”以表明两个或两个以上部件有直接物理接触或电接触。然而,术语“耦接”或“通信耦合(communicatively coupled)”也可能指两个或两个以上部件彼此间并无直接接触,但仍彼此协作或相互作用。这里所公开的实施例并不必然限制于本文内容。
本文中“适用于”或“被配置为”的使用意味着开放和包容性的语言,其不排除适用于或被配置为执行额外任务或步骤的设备。
另外,“基于”的使用意味着开放和包容性,因为“基于”一个或多个所述条件或值的过程、步骤、计算或其他动作在实践中可以基于额外条件或超出所述的值。
如本文所使用的那样,“大致”、“约”或“近似”包括所阐述的值以及处于特定值的可接受偏差范围内的平均值,其中所述可接受偏差范围如由本领域普通技术人员考虑到正在讨论的测量以及与特定量的测量相关的误差(即,测量系统的局限性)所确定。
本公开的实施例提供一种图像显示系统200,如图1所示,该图像显示系统200包括第一电子设备100A和第二电子设备100B,二者相互耦接。
示例性地,第一电子设备100A可以通过无线通信方式(例如,Wi-Fi、蓝牙等)与第二电子设备100B建立连接。例如,第二电子设备100B通过无线通信方式或有线通信方式连接无线路由器或无线接入点(Access Point,AP),第一电子设备100A通过无线通信方式与无线路由器或无线接入点建立连接,进而与第二电子设备100B通信连接。当然,本公开的实施例中不限于这种通信连接方式,例如,第二电子设备100B与第一电子设备100A还可以通过有线通信方式建立连接。
其中,第一电子设备100A和第二电子设备100B可以应用于多种场景,例如,第一电子设备100A可以是台式机、便携式电脑、网络服务器、个人数字助理掌上电脑(personal digital assistant,PDA)、移动手机、平板电脑、无线终端设备、嵌入式设备等。第二电子设备100B可以为手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理等。本公开实施例对第一电子设备100A和第二电子设备100B的具体类型不作任何限制。
本公开的实施例提供一种电子设备100,如图2所示,电子设备100包括存储器101和处理器102。存储器101和处理器102耦接。
存储器101中存储可在处理器102上运行的一个或多个计算机程序指令。
处理器102执行该计算机程序时,以使电子设备100实现如下述实施例中的图像处理方法。
示例性地,上述处理器102可以是一个处理器,也可以是多个处理元件的统称。例如,该处理器102可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application specific integrated circuit,ASIC),或一个或多个用于控制本公开方案程序执行的集成电路,例如:一个或多个微处理器,或,一个或者多个现场可编程门阵列。
上述存储器101可以是一个存储器,也可以是多个存储元件的统称,且用于存储可执行程序代码等。例如,存储器可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存储器(Random Access Memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
其中,存储器101用于存储执行本公开方案的计算机程序指令(例如应用程序代码),并由处理器102来控制执行。处理器102用于执行存储器101中存储的计算机程序指令,以控制电子设备100实现本公开下述实施例提供的图像处理方法。
在一些实施例中,上述的图像显示系统200中的第一电子设备100A和第 二电子设备100B可以均采用上述的电子设备100,即,图像显示系统200包括两个电子设备100,两个电子设备100之间相互通信,其中一个电子设备100作为第一电子设备100A,另一个电子设备100作为第二电子设备100B。
其中,在两个电子设备100进行数据传输的过程中,例如,第一电子设备100A获取第一图像的第一图像数据,并对第一图像数据进行处理(例如压缩),生成第二图像数据,并向第二电子设备100B发送第二图像数据,相应的第二电子设备100B接收第二图像数据,对第二图像数据进行处理(例如解压),获得第三图像数据,第二电子设备100B可以根据第三图像数据进行显示。
示例性地,在电子设备100(即第二电子设备100B)为显示装置的情况下,例如显示装置可以是显示器,还可以是包含显示器的产品,例如电视机、电脑(一体机或台式机)、平板电脑、手机、电子画屏等,如图3所示,电子设备100包括接口电路103、缩放控制器(Scaler)和显示面板104,接口电路103与处理器(即电子设备100中的处理器102)耦接,Scaler与接口电路103和显示面板104耦接。例如,接口电路103可以采用VGA(Video Graphics Array,视频图形阵列)接口等,显示面板104可以采用液晶显示面板等。其中,接口电路103用于接收第三图像数据;Scaler用于对第三图像数据进行缩放(即压缩或者拉伸),以使缩放后的图像数据的分辨率等于显示面板的分辨率;显示面板104用于根据缩放后的图像数据进行显示。
其中,第一图像数据包括第一图像中多个像素的像素值。在多个像素呈阵列排布的情况下,第一图像数据中的多个像素的像素值也呈阵列排布,例如,如图4所示,第一图像T中多个像素(P
1-1、P
1-2……P
n-m)的排布呈n行m列阵列,n和m均为正整数,第一图像数据中的多个像素的像素值(P
1-1、P
1-2……P
n-m)也呈阵列排布。
需要说明的是,为了方便描述,本公开的实施例中的像素和该像素的像素值采用同一符号标记,例如,第一行第一列像素P
1-1的像素值为P
1-1,但二者的含义完全不同。
对于分辨率和尺寸较大的高画质图像,例如高清图片、高清视频图像或者医学CT(Computed Tomography,电子计算机断层扫描)图像等,每个像素的像素值所占的字节数较大(例如在像素值为灰度值的情况下,一个灰度值占16位(16bit),即占用2字节),并且在图像数据中的各像素呈阵列排布的情况下,各像素的像素值也呈阵列排布,这样各像素的像素值占用存储资源较大。对于普通图像,其像素的像素值所占的字节数较小(例如一个像 素的灰度值占2
8位,即占用1字节),因此,电子设备(例如计算机)存储高画质图像所需要的存储资源大于存储普通图像所需要的存储资源,导致电子设备保存图像的成本增加。
在一些示例中,第一电子设备100A对第一图像数据进行图像处理,在第一图像数据中的各像素的像素值呈阵列排布的情况下,生成的第二图像数据中的各像素的像素值也呈阵列排布,第二图像数据的数据量较大,第一电子设备100A在向第二电子设备100B传输的第二图像数据的过程中,单位时间传送的数据位数较高,即码率较高,导致数据传输过程中图像数据容易丢失。并且,第一电子设备100A和第二电子设备100B进行数据处理的过程均较为复杂,所需的处理资源也均较大,导致电子设备进行图像处理的成本增加。
本公开的实施例提供一种图像处理方法,该图像处理方法可以应用于上述的电子设备100,也可以应用于上述的第一电子设备100A。
如图5所示,图像处理方法包括以下步骤:
S101、获取第一图像的第一图像数据。其中,第一图像数据包括第一图像中多个像素的像素值。
可以理解的是,每个像素包括多个子像素(例如,多个子像素包括红色子像素、绿色子像素和蓝色子像素),像素的像素值可以包含每个子像素的灰阶。示例性地,像素值的数据格式可以采用RGB数据格式(例如R可以代表红色子像素的灰阶电压,G可以代表绿色子像素的灰阶电压,B可以代表蓝色子像素的灰阶电压)或者YUV数据格式(例如Y表示明亮度,U和V表示色度)。
S102、在第一图像中存在第一允许压缩区域的情况下,获取第一允许压缩区域的区域表达信息。其中,第一允许压缩区域包括第一图像中连续分布的多个第一像素所在区域,每个第一像素为多个像素中的一个,多个第一像素中的任意两个第一像素的像素值的差值在预设范围内。
例如,如图6所示,第一图像T中的第一允许压缩区域A为以第3行第3列像素(P
3-3)为中心的3行3列的阵列分布,第一允许压缩区域A中的多个第一像素(P
2-2、P
2-3、P
2-4、P
3-2、P
3-3、P
3-4、P
4-2、P
4-3和P
4-4)的像素值(P
2-2、P
2-3、P
2-4、P
3-2、P
3-3、P
3-4、P
4-2、P
4-3和P
4-4)大致相等。
示例性地,在第一图像为灰度图像的情况下,像素的像素值可以为像素的灰度值,即,第一允许压缩区域内的第一像素的灰度大致相同。
需要说明的是,第一允许压缩区域的区域表达信息指的是用于确定第一允许压缩区域的位置和大小的信息。示例性地,第一允许压缩区域的区域表 达信息包括第一允许压缩区域的形状和第一允许压缩区域内的第一像素的坐标,坐标的大小可以根据实际情况设定,在此不作限定,例如,在各像素呈阵列排布的情况下,以像素所在行和列分别作为该像素的横坐标和纵坐标,如第n行第m列像素P
n-m的坐标为(n,m)。
可以理解的是,若第一图像中的一个像素的像素值和至少一个邻近像素的像素值的差值在预设范围内,则认为该一个像素的像素值和至少一个邻近像素的像素值相等,该一个像素和至少一个邻近像素所在的区域为第一允许压缩区域,多个第一像素包括该一个像素和至少一个邻近像素。其中,上述的预设范围的数值大小可以根据实际情况进行设定,在此不作限定。例如,对于第一允许压缩区域中的多个第一像素中的任意两个第一像素,两个第一像素中的一个第一像素的像素值为P
E1,另一个第一像素的像素值为P
E2,两个第一像素的像素值的差值为(P
E1-P
E2)/P
E1,该差值(取绝对值)的预设范围为小于或等于1%。例如,预设范围也可以小于或等于0.5%。
需要说明的是,在第一允许压缩区域内存在至少一个突变像素,至少一个突变像素的像素值与第一允许压缩区域内的第一像素的像素值差距较大的像素,至少一个突变像素不连续,或者连续分布的区域面积较小,可以忽略至少一个突变像素的像素值对第一允许压缩区域的影响,即,认为至少一个突变像素的像素值与各第一像素的像素值的差值在预设范围内。
示例性地,在第一图像中存在第一允许压缩区域的情况下,获取第一允许压缩区域的区域表达信息,如图7所示,包括:
S1021、确定第一图像中的至少一个对象所在的初始区域。其中,至少一个对象的边沿构成的图形具有第一预设形状。
可以理解的是,上述的对象可以为具有一定轮廓线的物体,例如,人、太阳、动物、植物、交通工具、房屋和山川等。示例性地,每个对象具有至少一个边沿。对象的边沿(例如外边沿)可以是物体的轮廓线,轮廓线构成的图形具有第一预设形状。其中,第一预设形状可以为规则的形状,例如,月亮的边沿构成的图形的第一预设形状近似为圆形;或者,第一预设形状可以为不规则的形状,例如,人的边沿可以包括头部的边沿和胴体的边沿构成的图形呈不规则形状等。例如,图8所示的第一图像T中具有两种对象,分别为太阳和房屋,第一图像中存在三个初始区域,分别为太阳所在的初始区域B1、两个间距较近的房屋所在的初始区域B2、以及与两个间距较近的房屋距离较远的一个房屋所在的区域B3。另外,对于间距较小或者无间距(即像素连续分布)的同种对象,可以将同种对象划分为在同一初始区域内,也可 以将同种对象划分在不同的初始区域内。
示例性地,比较第一图像与模型数据库,在第一图像中的对象的特征信息与模型数据库中的特征信息大致相等的情况下,识别出第一图像中的至少一个对象,此时,初始区域包含至少一个对象的外轮廓线所围成的封闭区域。
需要说明的是,电子设备100预先配置有上述的模型数据库,例如第一电子设备100A上预先配置有该模型数据库。模型数据库包含能够描述多种对象类型的对象的特征信息,该特征信息包括例如颜色、纹理、形状、轮廓以及空间关系等。模型数据库能够描述预计在多种对象类型的单个对象中共同存在的多个部件,该多个部件的信息可以作为对象的特征信息。例如,若对象类型定义为“人”,则预计在该对象类型的单个对象中共同存在的多个部件可以是“胳膊”、“腿”、“头”和“躯干”等;若对象类型是“哺乳动物的脸”,则预计在该对象类型的单个对象中共同存在的多个部件可以是“耳朵”、“眼睛”、“鼻子”、“嘴”和“毛发”等;若对象类型是“交通工具”,则预计在对象类型的单个对象中共同存在的多个部件可以是“挡风玻璃”、“后视镜”、“头灯”和“车牌”等;若对象类型是“房屋”,则预计在对象类型的单个对象中共同存在的多个部件可以是“房屋顶”、“门”、“窗户”和“墙壁”等。上述的模型数据库的例子仅仅是示例性的和说明性的,本公开可以根据具体应用来设计各种通用模型,在此不作限定。
另外,在第一图像中的对象不完整的情况下,例如对象在第一图像中的位置靠近第一图像的边沿,使得该对象无法完整显示,此时,若识别出该不完整的对象,则初始区域包含不完整的对象的外轮廓线与第一图像的边沿所围成的封闭区域。例如,图8中的初始区域B2由图中的虚线部分和第一图像的下侧边沿及右侧边沿构成。
示例性地,在确定第一图像中的至少一个对象所在的初始区域之后,图像处理方法还包括:
S1022、获取参考像素值。其中,参考像素值为初始区域内的各像素的像素值中数量占比最大的像素值。
例如,初始区域内包括5个像素,且5个像素的像素值分别为P
1、P
2、P
3、P
3和P
3,这样,像素值P
1在这5个像素值的数量为1,占比为(1/5),像素值P
2在这5个像素值的数量为1,占比为(1/5),像素值P
3在这5个像素值的数量为3,占比为(3/5),此时,像素值P
3在这5个像素值的数量占比最大,则该初始区域的参考像素值为像素值P
3。
S1023、确定初始区域中的第一允许压缩区域。其中,初始区域中的第一 允许压缩区域包括初始区域中的像素值与参考像素值的差值在预设范围内、且连续分布的多个第一像素。
可以理解的是,比较初始区域中的各像素的像素值与参考像素值的大小,若像素值与参考像素值的差值在预设范围内,则认为各像素的像素值与参考像素值相等,且连续分布的各像素所在的区域为第一允许压缩区域。其中,这里的预设范围与上述的预设范围相同。
例如,参考图8,比较初始区域B1中的各像素的像素值与该初始区域B1中的参考像素值的大小,得到初始区域B1中的第一允许压缩区域A1,第一允许压缩区域A1中的多个第一像素的像素值与该初始区域B1中的参考像素值的差值在预设范围内,且第一允许压缩区域A1中的各像素连续分布;比较初始区域B2中的多个第一像素的像素值与该初始区域B2中的参考像素值的大小,得到初始区域B2中的第一允许压缩区域A2-1和第一允许压缩区域A2-2,第一允许压缩区域A2-1和第一允许压缩区域A2-2中的多个第一像素的像素值均与该初始区域B2中的参考像素值的差值在预设范围内,且第一允许压缩区域A2-1中的多个第一像素连续分布,第一允许压缩区域A2-2中的多个第一像素连续分布,但第一允许压缩区域A2-1的多个第一像素和第一允许压缩区域A2-2的多个第一像素之间并不是连续分布;比较初始区域B3中的多个第一像素的像素值与该初始区域B3中的参考像素值的大小,得到初始区域B3中的第一允许压缩区域A3,第一允许压缩区域A3中的多个第一像素的像素值与该初始区域B3中的参考像素值的差值在预设范围内,且第一允许压缩区域A3中的多个第一像素连续分布。
S1024、在初始区域存在第一允许压缩区域的情况下,获取初始区域中的第一允许压缩区域的区域表达信息。
例如,参考图8,可以获取初始区域B1中的第一允许压缩区域A1的区域表达信息Q
A1,获取初始区域B2中的第一允许压缩区域A2-1的区域表达信息Q
A2-1和第一允许压缩区域A2-2的区域表达信息Q
A2-2,获取初始区域B3中的第一允许压缩区域A3的区域表达信息Q
A3。
S103、根据第一允许压缩区域内的至少一个第一像素的像素值,确定第一允许压缩区域的区域像素值。
示例性地,一个第一允许压缩区域可以具有一个区域像素值。
示例性地,根据第一允许压缩区域内的至少一个第一像素的像素值,确定第一允许压缩区域的区域像素值,包括:
S1031、求取第一允许压缩区域内的多个第一像素的像素值的平均值,得 到第一允许压缩区域的区域像素值。
需要说明的是,可以根据实际情况,对求取第一允许压缩区域内的多个像素的像素值的平均值的方式进行选择,在此不作限定。例如,可以对第一允许压缩区域内的部分第一像素的像素值求取平均值,以缩短数据处理时间,也可以对所有第一像素的像素值求取平均值,以降低区域像素值与各第一像素的像素值之间的差距。
示例性地,第一允许压缩区域的区域像素值也可以为第一允许压缩区域内的各像素的像素值中数量占比最大的像素值,例如,在第一图像包括初始区域的情况下,初始区域中的第一允许压缩区域的区域像素值可以为初始区域的参考像素值。
S104、生成第一图像的第二图像数据。其中,第一图像的第二图像数据包括第一允许压缩区域的区域表达信息和第一允许压缩区域的区域像素值。
其中,第二图像数据还包括第一图像中第二像素的像素值,该第二像素为第一图像中的位于第一允许压缩区域以外的像素。
需要说明的是,第二图像数据中的第一允许压缩区域的区域表达信息、第一允许压缩区域的区域像素值和第二像素的像素值具有一定的排列顺序,排列顺序可以根据实际情况进行设定,例如,排列顺序与对第一图像数据中各像素值的编码顺序或者第二图像数据中各像素值的解码顺序有关,具体在此不作限定。其中,对第一图像数据中各像素值的编码顺序和对第二图像数据中各像素值的解码顺序相同,示例性地,在多个像素呈阵列排布的情况下,多个像素的像素值也呈阵列排布,对第一图像数据中各像素值的编码顺序可以为从第一行至最后一行的顺序逐行编码,且每行按从第一列至最后一列的顺序逐个编码,并且,对第二图像数据中各像素值的解码顺序可以为从第一行至最后一行的顺序逐行解码,且每行按从第一列至最后一列的顺序逐个解码,此时,第二图像数据中的第一允许压缩区域的区域表达信息、第一允许压缩区域的区域像素值和第二像素的像素值可以按从第一行至最后一行的顺序逐行排列,且每行按从第一列至最后一列的顺序逐个排列。
例如,如图9所示,在第一图像T中的各像素(P
1-1、P
1-2……P
5-4、P
5-5)呈5行5列的阵列排布,第一图像中第一允许压缩区域A为以第3行第3列像素(P
3-3)为中心的3行3列的阵列分布的像素(P
2-2、P
2-3、P
2-4、P
3-2、P
3-3、P
3-4、P
4-2、P
4-3和P
4-4)所在的区域的情况下,第二图像数据中的第一允许压缩区域A的区域像素值P
A以及第二像素的像素值可以按从第一行至最后一行的顺序逐行排列,且每行按从第一列至最后一列的顺序逐个排列。其中,区 域像素值P
A仅出现一次(即仅进行一次编码),例如,区域像素值P
A的位置可以位于第一允许压缩区域A按编码顺序第一次出现的像素的位置处,后续编码到第一允许压缩区域A的其他像素时均跳过不进行编码,在此情况下,图9中的第一图像T,第二图像数据可以按P
1-1,P
1-2,P
1-3,P
1-4,P
1-5,P
2-1,P
A,P
2-5,P
3-1,P
3-5,P
4-1,P
4-5,P
5-1,P
5-2,P
5-3,P
5-4,P
5-5顺序依次排列,并且,像素P
2-2第一次出现,将区域像素值P
A放在像素P
2-2的位置处,后续扫描到其他像素(P
2-3、P
2-4、P
3-2、P
3-3、P
3-4、P
4-2、P
4-3和P
4-4)时,均跳过不保留像素值。
此外,在保证区域表达信息Q
A和区域像素值P
A之间相互关联的情况下,根据情况设定区域表达信息Q
A的位置,例如区域表达信息Q
A可以位于区域像素值P
A的位置处,例如P
2-1和P
A之间(即P
1-1,P
1-2,P
1-3,P
1-4,P
1-5,P
2-1,Q
A,P
A,P
2-5,P
3-1,P
3-5,P
4-1,P
4-5,P
5-1,P
5-2,P
5-3,P
5-4,P
5-5)或者P
A和P
2-5之间(即P
1-1,P
1-2,P
1-3,P
1-4,P
1-5,P
2-1,P
A,Q
A,P
2-5,P
3-1,P
3-5,P
4-1,P
4-5,P
5-1,P
5-2,P
5-3,P
5-4,P
5-5),以使在读取第二图像数据时,区域表达信息Q
A和区域像素值P
A可以相互关联;或者,可以将区域表达信息Q
A位于像素值序列的最前端(即P
1-1前)或者可以位于像素值序列的最末端(即P
5-5后),并在区域像素值P
A的位置处插入标识,该标识用于指示区域表达信息Q
A,以使在读取第二图像数据时,区域表达信息Q
A和区域像素值P
A可以相互关联。
需要说明的是,在第一图像的第一图像数据中的各像素的像素值呈阵列排布情况下,第二图像数据中的区域像素值和第二像素的像素值可以不呈阵列排布。
另外,在第一图像中的所有像素均可被划分在第一允许压缩区域内的情况下,例如第一图像的显示画面为纯色画面(如全黑或者全白画面),此时,第一图像中的在第一允许压缩区域以外的像素不存在,即第二像素为空,相应的第一图像中第二像素的像素值为空,因此,第二图像数据仅包括第一允许压缩区域的区域表达信息和区域像素值。
示例性地,在第一图像中的各像素呈阵列排布的情况下,第一图像中的H行J列像素的像素值的差值在预设范围内(例如均显示黑色),若对该第一允许压缩区域内的各像素全部进行编码,得到第一允许压缩区域的数据存储大小Z=H×J×W/8,Z表示第一允许压缩区域对应的图像的字节大小,H和J均为正整数(例如,H=10,J=20),(H×J)表示第一允许压缩区域的像素的数量,H可以看作第一允许压缩区域的高度(即第一允许压缩区域在列方向上的长度),J可以看作第一允许压缩区域的宽度(即第一允许压缩区域在行 方向上的长度),W表示像素深度(即存储像素所用的位数,例如可以为8、16或32)。而对第一允许压缩区域的区域表达信息和区域像素值进行编码,区域像素值的大小为一个像素深度,得到的第一允许压缩区域的数据存储大小(例如对于H行J列像素构成的第一允许压缩区域,区域表达信息中的形状占1个字节,两个像素的坐标占2个字节,区域像素值RGB共占6个字节)相对较小,减小了第二图像数据的存储大小。
综上,本公开的实施例提供的图像处理方法,通过在第一图像中存在第一允许压缩区域的情况下,获取第一允许压缩区域的区域表达信息,根据第一允许压缩区域内的至少一个第一像素的像素值,确定第一允许压缩区域的区域像素值,生成包括第一允许压缩区域的区域表达信息和第一允许压缩区域的区域像素值的第二图像数据。在此情况下,电子设备对第一图像数据进行编码,将第一允许压缩区域内的各像素的像素值用区域表达信息和区域像素值表示,由于区域表达信息和区域像素值的数据量小于第一允许压缩区域内的各像素的像素值的数据量,因此,相比于对第一允许压缩区域内的各像素的像素值全部编码得到的第二图像数据,本公开生成的第二图像数据的数据量相对较小,在图像数据传输的过程中,可以降低传输第二图像数据的码率,避免在传输图像数据的过程中出错,导致图像丢失的问题,同时,也降低了图像传输的条件,使得在传输网络质量较低的情况下也可以进行数据传输。另外,可以降低电子设备存储第二图像数据所需的存储资源以及对第一图像数据编码以得到第二图像数据过程中所需的编码资源,节约了电子设备进行图像处理的成本。
在一些实施例中,第一允许压缩区域具有至少一条封闭的边沿,每条边沿构成的图形呈一个第二预设形状。
需要说明的是,一个边沿构成的图形呈一个第二预设形状,该第二预设形状的类型不限定,例如第二预设形状可以为包括扇形、圆形、椭圆形、三角形、四边形或者多边形等较为简单的形状,也可以为包括波浪线、正弦曲线或者抛物线等较为复杂的形状。例如,图10中的第一图像T,第一允许压缩区域A具有两条封闭的边沿(L
A1和L
A2),一条封闭的边沿L
A1构成的图形呈椭圆形,另一条封闭的边沿L
A2构成的图形呈圆形。
其中,在第一允许压缩区域所具有的多条封闭的边沿的情况下,各边沿构成的图形的第二预设形状可以相同,也可以不相同,例如,第一允许压缩区域具有两条封闭的边沿,分别为第一边沿和位于第一边沿以外的第二边沿,第一边沿和第二边沿构成的图形的第二预设形状均呈圆形,即第一允许压缩 区域呈圆环形;或者,第一边沿构成的图形的第二预设形状呈四边形,第二边沿构成的图形的第二预设形状呈圆形。
在生成第一图像的第二图像数据之前,如图11所示,图像处理方法还包括:
S105、在第一图像中存在第二允许压缩区域的情况下,将第二允许压缩区域中的至少一条具有第二预设形状的边沿围成的子区域作为第一允许压缩区域。其中,第二允许压缩区域包括第一图像中连续分布的多个第一像素所在区域。
示例性地,第二允许压缩区域中的至少一条具有第二预设形状的边沿与第一允许压缩区域的至少一条边沿相同,第二允许压缩区域与第一允许压缩区域相同。
第一允许压缩区域的区域表达信息包括第一允许压缩区域的每条边沿相应的第二预设形状和位置信息,位置信息被配置为基于边沿的第二预设形状表示边沿的位置。
示例性地,至少一条封闭的边沿包括第二允许压缩区域的外边沿。将第二允许压缩区域中的至少一条具有第二预设形状的边沿围成的子区域作为第一允许压缩区域,如图11所示,包括:
S1051、在第二允许压缩区域的外边沿以内,确定至少一个具有第二预设形状的内接图形,将至少一个具有第二预设形状的内接图形中面积最大者的边沿作为第一允许压缩区域的外边沿。
可以理解的是,第一允许压缩区域的区域表达信息包括第一允许压缩区域的外边沿的第二预设形状和位置信息,即,第二允许压缩区域的至少一个内接图形中面积最大者的第二预设形状和位置信息。
例如,参考图12,第一图像T中,在第二允许压缩区域C的外边沿L
C1以内,存在至少一个具有第二预设形状的内接图形,第二预设形状为四边形的内接图形K1和第二预设形状为圆形的内接图形K2,且圆形的面积大于四边形的面积,因此,第二预设形状为圆形的内接图形K2的边沿作为第一允许压缩区域A的外边沿L
A1,此时,第一允许压缩区域A的区域表达信息包括外边沿L
A1的第二预设形状和位置信息,其中第二预设形状圆形,位置信息为该内接图形K2的位置信息(例如可以是圆形的圆心位置的坐标以及圆形的半径,或者可以是圆心位置的坐标以及圆弧上任一位置的坐标)。并且,在第二允许压缩区域仅包括一条边沿的情况下,第二预设形状为圆形的内接图形K2的边沿围成的区域为第一允许压缩区域A,此时,第一允许压缩区域A的 区域表达信息即为外边沿L
A1的第二预设形状和位置信息。
示例性地,至少一条封闭的边沿还包括第二允许压缩区域的内边沿。将第二允许压缩区域中的至少一条具有第二预设形状的边沿围成的子区域作为第一允许压缩区域,包括:
S1052、在第二允许压缩区域的内边沿以外,确定至少一个具有第二预设形状的外接图形,将至少一个具有第二预设形状的外接图形中面积最小者的边沿作为第一允许压缩区域的内边沿。
可以理解的是,第一允许压缩区域的区域表达信息还包括第一允许压缩区域的内边沿的第二预设形状和位置信息,即,第二允许压缩区域的至少一个外接图形中面积最小者的第二预设形状和位置信息。
例如,参考图13,第一图像T中,在第二允许压缩区域C的内边沿L
C2以外,存在至少一个具有第二预设形状的外接图形,第二预设形状为六边形的外接图形K3和第二预设形状为圆形的外接图形K4,且圆形的面积小于六边形的面积,因此,第二预设形状为圆形的外接图形K4的边沿作为第一允许压缩区域A的内边沿L
A2,此时,第一允许压缩区域A的区域表达信息包括内边沿L
A2的第二预设形状和位置信息,其中第二预设形状圆形,位置信息为该外接图形K4的位置信息(例如可以是圆形的圆心位置的坐标以及圆形的半径,或者可以是圆心位置的坐标以及圆弧上任一位置的坐标)。并且,在第一允许压缩区域A包括外边沿L
A1和内边沿L
A2的情况下,第一允许压缩区域A可以为外边沿L
A1和内边沿L
A2之间的区域,第一允许压缩区域A的区域表达信息既包括外边沿L
A1的第二预设形状和位置信息还包括内边沿L
A2的第二预设形状和位置信息。
示例性地,第一允许压缩区域的区域表达信息中的位置信息包括第一允许压缩区域内至少两个像素的坐标。
例如,获取第一允许压缩区域的区域表达信息,可以根据第二允许压缩区域的外边沿上的多个像素的坐标,调用图形方程数据库,得到多个内接图形的方程。多个内接图形的方程中对应的图形面积最大者为第一允许压缩区域的外边沿的图形方程,第一允许压缩区域的区域表达信息包括第一允许压缩区域的形状为该图形方程对应的图形形状,位置信息包括第一允许压缩区域内至少两个像素的坐标,至少两个像素的坐标满足该图形方程。同样的,根据第二允许压缩区域的内边沿上的多个像素的坐标,调用图形方程数据库中,得到多个外接图形的方程。多个外接图形的方程中对应的图形面积最小者为第一允许压缩区域的内边沿的图形方程,第一允许压缩区域的区域表达 信息包括第一允许压缩区域的形状为该图形方程对应的图形形状,位置信息包括第一允许压缩区域内至少两个像素的坐标,至少两个像素的坐标满足该图形方程。
需要说明的是,电子设备100(如第一电子设备100A)预先配置有上述的图形方程数据库,图形方程数据库包括多种图形的数学表达式,可以根据实际情况设定图形的种类,在此不作限定,例如多种图形包括圆形、椭圆形和扇形等。对于三角形或者矩形等不具有数学表达式的图形,获得多个直线方程,多个直线方程构成的封闭区域呈三角形或者矩形等。
示例性地,对于圆形方程(x-a)
2+(y-b)
2=R
2,可以将第二允许压缩区域的外边沿上的多个像素的坐标(x,y)代入该方程,得到多个内接圆方程以及对应的圆心的坐标(a,b)和半径R,根据每个内接圆方程对应的圆心的坐标(a,b)和半径R,得到圆形面积最大者对应的内接圆方程,该内接圆方程所表示的圆形的边沿可以作为第一允许压缩区域的外边沿;同样的,可以将第二允许压缩区域的内边沿上的多个像素的坐标(x,y)代入该方程,得到多个外接圆方程以及对应的圆心的坐标(a,b)和半径R,根据每个外接圆方程对应的圆心的坐标(a,b)和半径R,得到圆形面积最大者对应的外接圆方程,该外接圆方程所表示的圆形的边沿可以作为第一允许压缩区域的内边沿。
需要说明的是,对于比较简单的图像,例如直方图(Histogram),图像中的第一允许压缩区域的形状比较规则,可以采用上述的图像处理方法进行图像处理。而对于比较复杂的图像,例如图像中的第一允许压缩区域的形状不规则(例如通过图形方程数据库无法得到形状类型),可以采用塔伯自指公式,来获取第一允许压缩区域的形状,塔伯自指公式包含在图形方程数据库中;或者,在获取第一允许压缩区域的形状的过程较为复杂,运算量较大的情况下,可以对第一允许压缩区域内的各像素的像素值进行编码(压缩),即,第二图像数据包括第一允许压缩区域内各像素的像素值,这样,可以保证第一允许压缩区域的图像的准确性,避免图像失真。
示例性地,在第一允许压缩区域的一边沿的第二预设形状为第一允许压缩区域的第二预设形状的情况下,第一允许压缩区域的区域表达信息可以表示为[Shape(rectangle),X1,Y1,X2,Y2],其中Shape(rectangle)表示第一允许压缩区域的第二预设形状为矩形,X1、Y1、X2和Y2表示第一允许压缩区域的位置信息,(X1,Y1)为第一允许压缩区域的边沿上的一个像素的坐标,(X2,Y2)为第一允许压缩区域的边沿上的另一个像素的坐标,这两个像素可以分别为矩形对角线的两个端点位置处的像素。在此情况下,若第一允许压缩区域的 区域像素值为RGB数据格式,此时第一允许压缩区域的区域表达信息和区域像素值可以构成一个数组,该数组为[Shape(rectangle),X1,Y1,X2,Y2,R,G,B]。
需要说明的是,在第一图像数据包括多个第一允许压缩区域的情况下,多个第一允许压缩区域的形状和大小可以相同,也可以不相同。对于多个第一允许压缩区域的形状和大小不相同的情况,例如区域表达信息中的位置信息较多或较复杂,可以根据实际情况调整各第一允许压缩区域的区域表达信息和区域像素值构成的数组的存储位数,此时,各第一允许压缩区域的区域表达信息和区域像素值构成的数组的长度不完全相同。
另外,在第一允许压缩区域为非封闭的图形(例如第一允许压缩区域呈直线、抛物线或者正弦曲线等)的情况下,也可以将第一允许压缩区域内的多个像素的像素值代入图形方程数据库,以得到非封闭的图形的形状,区域表达信息至少包括非封闭的图形的两个端点(例如直线的两个最末端的端点)位置处的像素的坐标。
在一些实施例中,如图5所示,图像处理方法还包括:S106、发送第二图像数据至电子设备。
本公开的实施例提供一种图像处理方法,如图14所示,图像处理方法包括:
S107、获取图像序列集,图像序列集包括依次连续的N个图像,N为大于1的整数。其中,N个图像中的第一个图像的数据为第一图像数据。第一图像数据包括第一个图像中多个像素的像素值。
需要说明的是,视频可以包括至少一个图像序列集,图像序列集中的单个图像也可以称为单个帧。图像序列集可以称为画面组(Group of Pictures)。在此情况下,获取第一图像数据,即,获取N个图像中的第一个图像的数据,根据N个图像中的第一个图像的数据,生成第一个图像的第二图像数据。
S108、依次获得第一个至第N个图像的第二图像数据。其中,第一个图像的第二图像数据包括第一个图像的第一允许压缩区域的区域表达信息和区域像素值。
需要说明的是,获得第一个图像的第二图像数据的方法可以参见上述生成第一图像的第二图像数据的方法,第一个图像作为上述的第一图像,具体在此不再描述。
在第一个图像的第一允许压缩区域中的各像素的像素值,与第M个图像的第一允许压缩区域中的对应的各像素的像素值的差值在预设范围内的情况下,第M个图像的第二图像数据包括第M个图像的第一允许压缩区域的区域 表达信息和区域像素值、以及第M个图像中第二像素的像素值,且第M个图像的第一允许压缩区域的区域表达信息和区域像素值分别为第一个图像的第一允许压缩区域的区域表达信息和区域像素值。其中,2≤M≤N,M为整数。
例如,在N个图像中的各像素按阵列排布,且第一个图像的第一允许压缩区域中的各像素呈3行3列阵列的情况下,依次比较第一个图像的第一允许压缩区域中的第1行第1列至第3行第3列像素的像素值与第M个图像中对应于第一允许压缩区域内的第1行第1列至第3行第3列像素的像素值的差值是否在预设范围内(例如比较第一个图像的第一允许压缩区域中的第1行第1列像素的像素值,与第M个图像中对应于第一允许压缩区域内的第1行第1列像素的像素值的差值是否在预设范围内),若是,则第M个图像的第二图像数据中对应于第一允许压缩区域的图像数据可以用第一个图像的第一允许压缩区域的区域表达信息和区域像素值表示,即,第M个图像的第一允许压缩区域的区域表达信息和区域像素值分别为第一个图像的第一允许压缩区域的区域表达信息和区域像素值。
在此情况下,可以根据第一个图像的第一允许压缩区域的区域表达信息和区域像素值,直接得到第M个图像的第一允许压缩区域的区域表达信息和区域像素值,例如得到第M个图像的第一允许压缩区域的形状、位置、灰度、色度和饱和度等信息,因此,无需再对N个图像中的除第一个图像以外的图像的第一图像数据依次进行图像处理,可以缩短图像处理的时间,提高图像处理的效率。
在一些实施例中,每个图像包含前景部分和背景部分。第一个图像的背景部分包括至少一个第一允许压缩区域。
需要说明的是,图像中的前景部分为图像序列集中相对移动的部分,背景部分为图像序列集中相对静止的部分,例如,前景部分可以包括人、动物或者汽车等,背景部分可以包括打大地、建筑物或者天空等。其中,一个图像序列集的各图像中的背景部分可以认为大致相同且位置不会移动,各图像中的前景部分的位置会移动。
在第M个图像的前景部分与至少一个第一允许压缩区域无交叠区域的情况下,第M个图像的第二图像数据所包括得第M个图像的第一允许压缩区域的区域表达信息和区域像素值分别为第一个图像的第一允许压缩区域的区域表达信息和区域像素值。
示例性地,如图15所示,在第M个图像的前景部分D(M)与第一个图像的背景部分S(1)中的至少一个第一允许压缩区域A(1)无交叠区域的情况下, 由于第M个图像的背景部分S(M)与第一个图像的背景部分S(1)大致相同,因此,第M个图像的前景部分D(M)与第M个图像的背景部分S(M)中的至少一个第一允许压缩区域A(M)无交叠区域,此时,在第M个图像的第一允许压缩区域A(M)与第一个图像的第一允许压缩区域A(1)相同。这样,第M个图像的第一允许压缩区域A(M)的区域表达信息和区域像素值可以分别为第一个图像的第一允许压缩区域A(1)的区域表达信息和区域像素值。并且,第二图像数据中的第M个图像中第二像素的像素值为第M个图像的前景部分D(M)中的像素的像素值,及第M个图像的背景部分S(M)中位于第一允许压缩区域以外的像素的像素值。
在第M个图像的前景部分D(M)与第一个图像的背景部分S(1)中的至少一个第一允许压缩区域A(1)有交叠区域,即,第M个图像的前景部分D(M)与第M个图像的背景部分S(M)中的至少一个第一允许压缩区域A(M)有交叠区域的情况下,如图16所示,第M个图像的前景部分D(M)与第一允许压缩区域A(M)的交叠区域为F(M),第M个图像的前景部分D(M)相对于第一个图像的前景部分D(1)移动后,第一个图像的前景部分D(1)所在区域中与第M个图像的前景部分D(M)未交叠的移出区域为E(M),此时,第M个图像的第二图像数据可以包括第一个图像的第一允许压缩区域A(1)的区域表达信息和区域像素值、第M个图像的前景部分D(M)中的各像素的像素值、移出区域E(M)中的像素的像素值、以及第M个图像中剩余区域中的像素的像素值。
在此情况下,在根据第M个图像的第二图像数据进行显示的过程中,对于第一允许压缩区域中与第M个图像的前景部分的交叠区域F(M),该交叠区域F(M)的像素的像素值从第一允许压缩区域的区域像素值替换成第M个图像的前景部分的像素的像素值,使得该交叠区域F(M)的像素可以根据第M个图像的前景部分对应的像素的像素值进行显示,保证前景部分的图像可以正确显示。此外,移出区域E(M)中的各像素根据各自的像素值进行显示,第一允许压缩区域中的除了重叠的区域之外的各像素,根据区域像素值进行显示。
在一些实施例中,如图14所示,图像处理方法还包括:
S109、发送第二图像数据至电子设备。
例如,第一电子设备100A将第二图像数据发送至第二电子设备100B。在第二电子设备100B为具有显示器的产品(例如一体机、笔记本电脑或者手机等)的情况,第二电子设备100B根据第二图像数据进行显示。
本公开的实施例提供一种图像处理方法,该图像处理方法可以应用于上述的电子设备100,也可以应用于上述的第二电子设备100B。示例性地,电 子设备100和第二电子设备100B可以为显示装置,该显示装置为具有显示器的产品。
如图17所示,图像处理方法包括以下步骤:
S201、获取一图像的第二图像数据。
其中,图像中存在第一允许压缩区域,第一允许压缩区域包括图像中连续分布的多个第一像素所在区域,每个第一像素为多个像素中的一个,多个第一像素中的任意两个第一像素的像素值的差值在预设范围内。图像的第二图像数据包括第一允许压缩区域的区域表达信息和第一允许压缩区域的区域像素值。
示例性地,图像的第二图像数据还包括图像中第二像素的像素值,第二像素为图像中的位于第一允许压缩区域以外的像素。
S202、将图像的第二图像数据转换成图像的第三图像数据。其中,第三图像数据中的位于第一允许压缩区域以内的各像素的像素值,均为区域像素值。
可以理解的是,第三图像数据中位于第一允许压缩区域以外的各像素的像素值为第二图像数据中对应的第二像素的像素值。例如,参考图9,在图像中的各像素(P
1-1、P
1-2……P
5-4、P
5-5)呈5行5列的阵列排布,图像中第一允许压缩区域A为以第3行第3列像素(P
3-3)为中心的3行3列的阵列分布的像素(P
2-2、P
2-3、P
2-4、P
3-2、P
3-3、P
3-4、P
4-2、P
4-3和P
4-4)所在的区域的情况下,第二图像数据中的第一允许压缩区域A的区域表达信息Q
A和区域像素值P
A以及各第二像素的像素值,按逐行扫描的顺序依次排列,即P
1-1,P
1-2,P
1-3,P
1-4,P
1-5,P
2-1,Q
A,P
A,P
2-5,P
3-1,P
3-5,P
4-1,P
4-5,P
5-1,P
5-2,P
5-3,P
5-4,P
5-5。此时,将第二图像数据转换,得到的第三图像数据可以为P
1-1,P
1-2,P
1-3,P
1-4,P
1-5,P
2-1,P
A,P
A,P
A,P
2-5,P
3-1,P
A,P
A,P
A,P
3-5,P
4-1,P
A,P
A,P
A,P
4-5,P
5-1,P
5-2,P
5-3,P
5-4,P
5-5。
需要说明的是,根据第一图像数据得到第二图像数据的过程可以看作是对第一图像数据进行压缩,根据第二图像数据得到第三图像数据的过程可以看作是对第二图像数据进行解压。
示例性地,在第二图像数据中的第一允许压缩区域的区域表达信息包括第一允许压缩区域的每条边沿相应的第二预设形状和位置信息的情况下,可以根据第二预设形状和位置信息,获得第一允许压缩区域的位置和大小。其中,根据第二预设形状,结合图形方程数据库,得到该第二预设形状对应的方程,并且,在位置信息包括第一允许压缩区域内至少两个像素的坐标的情 况下,得到第一允许压缩区域中的具有该第二预设形状的边沿(例如外边沿或者内边沿)的位置和大小。例如,上文中的第一允许压缩区域的区域表达信息和区域像素值可以构成的数组为[Shape(rectangle),X1,Y1,X2,Y2,R,G,B],根据第一允许压缩区域的第二预设形状为矩形,结合图形方程数据库,得到矩形的方程,并且,根据矩形对角线的两个端点位置处的像素坐标(X1,Y1)和(X2,Y2),得到矩形的边沿所在的位置和大小,也即得到在第一允许压缩区域内各像素的位置,例如,在多个像素呈阵列排布的情况下,矩形对角线的两个端点位置处的像素坐标(X1,Y1)和(X2,Y2)分别为(2,2)和(4,4)(即矩形对角线的两个端点位置处的像素分别为第2行第2列像素和第4行第4列像素),此时,第一允许压缩区域内各像素分别为第2行至第4行像素中的第2列至第4列像素。在此情况下,第一允许压缩区域内的各像素的像素值均为RGB,其中,R表示红色子像素的灰阶电压,G表示绿色子像素的灰阶电压,B表示蓝色子像素的灰阶电压。
需要说明的是,电子设备100(如第二电子设备100B)预先配置有上述的图形方程数据库,图形方程数据库包括多种图形的数学表达式,可以根据实际情况设定图形的种类,在此不作限定,例如多种图形包括圆形、椭圆形和扇形等。其中,第一电子设备100A和第二电子设备100B的图形方程数据库相同。
在一些实施例中,如图17所示,图像处理方法还包括:
S203、根据第三图像数据进行显示。
可以理解的是,第一允许压缩区域内的像素均根据区域像素值进行显示,例如根据第一允许压缩区域内的各像素中的红色子像素的电压R、绿色子像素的灰阶电压G和蓝色子像素的灰阶电压B,得到第一允许压缩区域内的各像素中的红色子像素、绿色子像素和蓝色子像素对应的灰阶,并进行显示;第一允许压缩区域以外的各像素根据各自的像素值进行显示,即显示各像素的像素值对应的灰阶。
由于第一允许压缩区域内的各第一像素中的任意两个第一像素的像素值的差值在预设范围内,因此,区域像素值与各像素在第一图像数据中的像素值的差距较小,在显示过程中,第一允许压缩区域的各像素的像素值为显示区域像素值的情况下,显示图像的失真程度较弱。
本公开的实施例提供一个图像处理装置300A,如图18所示,图像处理装置300A包括获取单元301A和处理单元302A。处理单元302A与获取单元301耦接。
获取单元301A被配置为获取第一图像的第一图像数据,第一图像数据包括第一图像中多个像素的像素值。
处理单元302A被配置为在第一图像中存在第一允许压缩区域的情况下,获取第一允许压缩区域的区域表达信息;及,根据第一允许压缩区域内的至少一个第一像素的像素值,确定第一允许压缩区域的区域像素值,并生成第一图像的第二图像数据。
其中,第一允许压缩区域包括第一图像中连续分布的多个第一像素所在区域,多个第一像素中的任意两个第一像素的像素值的差值在预设范围内。第一图像的第二图像数据包括第一允许压缩区域的区域表达信息和第一允许压缩区域的区域像素值。示例性地,第一图像的第二图像数据还包括第一图像中第二像素的像素值,第二像素为第一图像中位于第一允许压缩区域以外的像素。
在一些实施例中,获取单元301A还被配置为获取图像序列集。图像序列集包括依次连续的N个图像;N为大于1的整数;N个图像中的第一个图像的数据为第一图像数据;第一图像数据包括第一个图像中多个像素的像素值。
处理单元302A还被配置为依次获得第一个至第N个图像的第二图像数据。其中,第一个图像的第二图像数据包括所述第一个图像的第一允许压缩区域的区域表达信息和区域像素值。在所述第一个图像的第一允许压缩区域中的各像素的像素值,与第M个图像的第一允许压缩区域中的对应的各像素中的任意两个第一像素的像素值的差值在预设范围内的情况下,所述第M个图像的第二图像数据包括所述第M个图像的第一允许压缩区域的区域表达信息和区域像素值、以及所述第M个图像中第二像素的像素值,且所述第M个图像的第一允许压缩区域的区域表达信息和区域像素值分别为所述第一个图像的第一允许压缩区域的区域表达信息和区域像素值。2≤M≤N,M为整数。
在一些实施例中,如图18所示,图像处理装置300A还包括发送单元303A。发送单元303A与处理单元302A耦接。发送单元303A被配置为发送第二图像数据至电子设备100(例如上述的第二电子设备100B)。
需要说明的是,上述的图像处理装置与上述的一些图像处理方法具有相同的有益效果,在此不作赘述。
本公开的实施例提供一种图像处理装置300B,如图19所示,图像处理装置300B包括获取单元301B和处理单元302B。处理单元302B与获取单元301B耦接。
获取单元301B被配置为获取一图像的第二图像数据。其中图像中存在第 一允许压缩区域,第一允许压缩区域包括图像中连续分布的多个第一像素所在区域,多个第一像素中的任意两个第一像素的像素值的差值在预设范围内。图像的第二图像数据包括第一允许压缩区域的区域表达信息和第一允许压缩区域的区域像素值。示例性地,图像的第二图像数据还包括图像中第二像素的像素值,第二像素为图像中的位于第一允许压缩区域以外的像素。
处理单元302B被配置为将图像的第二图像数据转换成图像的第三图像数据。其中,第三图像数据中的位于第一允许压缩区域以内的各像素的像素值均为区域像素值。
需要说明的是,上述的图像处理装置与上述的一些图像处理方法具有相同的有益效果,在此不作赘述。
图18和图19所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。图18和图19中上述各个单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。例如,采用软件实现时,上述的获取单元301和处理单元302等可以是由至少一个处理器读取存储器中存储的程序代码后,生成的软件功能模块来实现。图18和图19中上述各个单元也可以由计算机(显示装置)中的不同硬件分别实现,例如处理单元302由至少一个处理器中的一部分处理资源(例如多核处理器中的一个核或两个核)实现,而获取单元301由至少一个处理器中的其余部分处理资源(例如多核处理器中的其他核)。例如,采用硬件的形式实现,示例性地,上述的图像处理装置300可以为可编程器件,例如硬件可编程器件,例如FPGA(Field Programmable Gate Array,现场可编程门阵列)。上述功能单元也可以采用软件硬件相结合的方式来实现,例如获取单元301和处理单元302等是由CPU读取存储器中存储的程序代码后,生成的软件功能模块。
图18和图19中获取单元301和处理单元302等实现上述功能的更多细节请参考前面各个方法实施例中的描述,在这里不再重复。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意 组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本申请实施例中的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、磁盘、磁带)、光介质(例如,数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state drives,SSD))等。
本公开的一些实施例提供了一种计算机可读存储介质(例如,非暂态计算机可读存储介质),该计算机可读存储介质中存储有计算机程序指令,计算机程序指令在计算机上运行时,使得计算机执行如上述实施例所述的图像处理方法中的一个或多个步骤。
示例性的,上述计算机可读存储介质可以包括,但不限于:磁存储器件(例如,硬盘、软盘或磁带等),光盘(例如,CD(Compact Disk,压缩盘)、DVD(Digital Versatile Disk,数字通用盘)等),智能卡和闪存器件(例如,EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器)、卡、棒或钥匙驱动器等)。本公开描述的各种计算机可读存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读存储介质。术语“机器可读存储介质”可包括但不限于,无线信道和能够存储、包含和/或承载指令和/或数据的各种其它介质。
本公开的一些实施例还提供了一种计算机程序产品。该计算机程序产品包括计算机程序指令,在计算机上执行该计算机程序指令时,该计算机程序指令使计算机执行如上述实施例所述的图像处理方法中的一个或多个步骤。
本公开的一些实施例还提供了一种计算机程序。当该计算机程序在计算机上执行时,该计算机程序使计算机执行如上述实施例所述的图像处理方法中的一个或多个步骤。
上述计算机可读存储介质、计算机程序产品及计算机程序的有益效果和上述一些实施例所述的图像处理方法的有益效果相同,此处不再赘述。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。