CN113554718A - 图像编码方法、存储介质和电子设备 - Google Patents

图像编码方法、存储介质和电子设备 Download PDF

Info

Publication number
CN113554718A
CN113554718A CN202010331215.7A CN202010331215A CN113554718A CN 113554718 A CN113554718 A CN 113554718A CN 202010331215 A CN202010331215 A CN 202010331215A CN 113554718 A CN113554718 A CN 113554718A
Authority
CN
China
Prior art keywords
image data
format image
module
algorithm
hardware abstraction
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.)
Granted
Application number
CN202010331215.7A
Other languages
English (en)
Other versions
CN113554718B (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.)
Oppo Chongqing Intelligent Technology Co Ltd
Original Assignee
Oppo Chongqing Intelligent Technology 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 Oppo Chongqing Intelligent Technology Co Ltd filed Critical Oppo Chongqing Intelligent Technology Co Ltd
Priority to CN202010331215.7A priority Critical patent/CN113554718B/zh
Publication of CN113554718A publication Critical patent/CN113554718A/zh
Application granted granted Critical
Publication of CN113554718B publication Critical patent/CN113554718B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management

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)

Abstract

本申请提供了一种图像编码方法、存储介质和电子设备,其中,方法包括:算法后处理模块获取经算法处理后的第一格式图像数据,将所述第一格式图像数据发送至硬件抽象模块;所述硬件抽象模块接收所述第一格式图像数据,调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据,以及将所述第二格式图像数据发送至所述算法后处理模块。通过调用图像硬编模块对图像数据进行编码,相比通过软件对图像数据进行编码的方式,节省了图像编码时间,进而提高了图像编码的效率。

Description

图像编码方法、存储介质和电子设备
技术领域
本申请涉及图像处理技术领域,具体而言,涉及一种图像编码方法、存储介质和电子设备。
背景技术
图像编码也称图像压缩,是指在满足一定质量的条件下,以较少比特数表示图像或图像中所包含信息的技术。以JPEG图像为例,JPEG是一个国际图像压缩标准,JPEG图像压缩算法能够在提供良好的压缩性能的同时,具有比较好的重建质量,被广泛应用于图像、视频处理领域。但现有的图像编码方法是通过调用图像软件编码库实现,导致编码效率较低。
发明内容
为了解决上述问题,本申请实施例提供了一种图像编码方法、存储介质和电子设备,可以简化图像处理流程并提高图像处理效率。
第一方面,本申请实施例提供了一种图像编码方法,包括以下步骤:
算法后处理模块获取经算法处理后的第一格式图像数据,将所述第一格式图像数据发送至硬件抽象模块;
所述硬件抽象模块接收所述第一格式图像数据,调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据,以及将所述第二格式图像数据发送至所述算法后处理模块。
第二方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一项方法的步骤。
本申请提供的图像编码方法、存储介质和电子设备,算法后处理模块获取经算法处理后的第一格式图像数据,将所述第一格式图像数据发送至硬件抽象模块;所述硬件抽象模块接收所述第一格式图像数据,调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据,以及将所述第二格式图像数据发送至所述算法后处理模块。通过调用图像硬编模块对图像数据进行编码,相比通过软件对图像数据进行编码的方式,节省了图像编码时间,进而提高了图像编码的效率,此外,采用硬编模块还可以提高图像编码质量。
附图说明
图1是本申请实施例提供的一种Camx中图像编码方法的流程示意图;
图2是本申请实施例提供的一种APS框架中图像编码方法的流程示意图;
图3是本申请实施例提供的一种图像编码方法的流程示意图;
图4是本申请实施例提供的另一种图像编码方法的流程示意图;
图5为本申请实施例提供的一种图像编码的架构示意图;
图6为本申请实施例提供的一种图像编码方法的时序示意图;
图7是本申请实施例提供的一种图像编码装置的结构示意图;
图8为本申请实施例所涉及的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请进行进一步的介绍。
在下述介绍中,术语“第一”、“第二”仅为用于描述的目的,而不能理解为指示或暗示相对重要性。下述介绍提供了本申请的多个实施例,不同实施例之间可以替换或者合并组合,因此本申请也可认为包含所记载的相同和/或不同实施例的所有可能组合。因而,如果一个实施例包含特征A、B、C,另一个实施例包含特征B、D,那么本申请也应视为包括含有A、B、C、D的一个或多个所有其他可能的组合的实施例,尽管该实施例可能并未在以下内容中有明确的文字记载。
下面的描述提供了示例,并且不对权利要求书中阐述的范围、适用性或示例进行限制。可以在不脱离本申请内容的范围的情况下,对描述的元素的功能和布置做出改变。各个示例可以适当省略、替代或添加各种过程或组件。例如所描述的方法可以以所描述的顺序不同的顺序来执行,并且可以添加、省略或组合各种步骤。此外,可以将关于一些示例描述的特征组合到其他示例中。
可利用Camera HAL3系统实现图像编码处理。在Camera HAL3系统中,将多个相机运行模式整合为了一个统一的视图,然后开发者可以使用这种视图实现之前的任何模式,即所有的操作模式都可以在应用程序中进行处理,比如曝光、对焦等,应用程序APP通过应用框架的统一接口向Camera HAL3子系统下发图像帧请求,然后Camera HAL3子系统将请求转化为图像返回给应用程序。
Camx是基于Camera HAL3进行的新的架构设计,其在相机启动或者切换拍照模式时,会将当前拍照模式所需要的管线都创建好,然后当应用重新下发图像帧请求时,Camx会根据请求走相应的管线流程去获取传感出的图像并进行算法处理,然后进行图像编码,最终编码后的图像返回给应用程序。
图1是本申请实施例提供的一种Camx中图像编码方法的流程示意图。在图1中,系统包括:图像传感器sensor、RAW图像数据单元(Image Front-end,IFE)、RAW转RGB处理单元(Bayer Process Segment,BPS)及RAW转RGB处理单元(Bayer Process Segment,BPS)、算法处理单元Algorithm Process、JPEG编码单元JPEG Encode等。sensor->IFE->BPS->IPE->Algorithm Process->JPEG Encode即为一条管线,其中sensor吐出数据,经过数字信号处理器ISP里的IFE、BPS、IPE处理,得到YUV格式的数据,拿到YUV数据后,送给图像后处理核心算法比如(美颜,多帧等)进行算法处理,处理完后,即进入JPEG Encoder做硬件编码,硬件编码后的jpg格式图像即返回给APP保存。
同时,由于上述在Camx中处理sensor出图并转化为JPEG的技术方案存在CameraHAL流程复杂、移植维护成本高、内存占用高,以及不能快拍等技术缺点,因此,申请人提出了算法后处理(Algo process service,APS)框架,下图为APS框架的一条主要图像处理流程:
图2是本申请实施例提供的一种APS框架中图像编码方法的流程示意图。在图2中,图像缓存buffer的处理流程为HAL输出YUV格式的图像buffer给相机应用程序Camera APP,然后APP将该buffer传给APS,在APS中经过图像处理算法进行处理,并将处理后的YUVbuffer送给JPEG Encoder进行jpeg编码,编码生成的jpg图像返回给APP保存,其中JPEGEncoder通过调用Android jpeg软件编码库实现。
目前APS架构虽然相比之前Camx的架构具备了支持快拍、图像处理流程更简单、移植维护成本更低等优点,但是APS中YUV buffer经过Algorithm Process之后做JPEG编码是调用的软件编码库libjpeg.so实现的,而Camx则是通过其硬件编码器来做的,相比Camx的硬件编码方案,APS的JPEG软件编码存在如下两个影响用户拍照体验的缺点:
JPEG编码时间需要更长。以4000*3000像素的YUV图像为例,Camx调用硬件编码大约需要76ms,而相同条件下,APS调用软件编码大约需要163ms。
JPEG之后的图像质量有所下降。APS调用软件编码生成的JPEG图像上面多纹理场景可能会出现一些竖状条纹;另外噪点控制上也不如Camx的硬件编码。
基于此,本申请实施例提出了一种新的图像编码方法。参见图3,图3是本申请实施例提供的一种图像编码方法的流程示意图,在本申请实施例中,所述方法包括:
S301、算法后处理模块获取经算法处理后的第一格式图像数据,将所述第一格式图像数据发送至硬件抽象模块。
第一格式图像数据可以是任意格式的图像数据,包括:YUV格式数据、RAW格式数据、BMP格式数据等等。第一格式图像数据可以是应用程序提供的,也可以是通过其他途径获取,例如可以根据配置信息中的图像数据的提取地址提取到的第一格式图像数据。
S302、所述硬件抽象模块接收所述第一格式图像数据,调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据,以及将所述第二格式图像数据发送至所述算法后处理模块。
框架层算法后处理模块可以将处理后的第一格式图像数据发送至硬件抽象模块,利用硬件封装的编码程序实现硬件编码,如利用某些商用图像处理芯片实现图像数据的硬件编码。第二格式的图像数据为可通过硬件编码生成的任意格式图像数据,包括:JPEG格式的图像数据、BMP格式的图像数据、TIFF格式的图像数据等。举例来说,硬件封装的编码程序例如是JPEG硬件编码程序,在编码之后生成JPEG格式的图像。但是本领域技术人员可以明确的是,编码程序并不限定为JPEG编码,而是可以覆盖任何能够在硬件中实现的编码方式。
本申请提供的图像编码方法,通过算法后处理模块调用硬件抽象模块进行图像编码,简化了图像处理流程。此外,通过调用图像硬编模块对图像数据进行编码,相比通过软件对图像数据进行编码的方式,节省了图像编码时间,进而提高了图像编码的效率,此外,采用硬编模块还可以提高图像编码质量。因此,本申请实施例的方法可以解决现有技术中图像处理效率较低的问题。
参见图4,图4是本申请实施例提供的另一种图像编码方法的流程示意图,在本申请实施例中,所述方法包括:
S401、硬件抽象模块获取初始格式图像数据,将所述初始格式图像数据发送至相机应用模块。
硬件抽象模块通过图像传感器获取图像,再经过IFE单元、BPS单元和IPE单元对图像数据进行处理,获取初始格式的图像数据。初始格式的图像数据可包括YUV格式的图像数据或RAW格式的图像数据等。
S402、所述相机应用模块将所述初始格式图像数据发送至所述算法后处理模块。
算法后处理模块可对初始格式图像进行算法处理。具体算法可根据实际需求进行设定。算法处理可利用嵌入框架层中或者框架层自带的算法对图像数据进行处理,算法处理例如包括美颜算法、数码变焦多帧优化、多帧降噪算法、全焦处理算等。嵌入的算法可以是插件,在进行了配置之后可以使用。
S403、所述算法后处理模块对所述初始格式图像数据进行算法处理,得到算法处理后的第一格式图像数据。
S404、算法后处理模块获取经算法处理后的第一格式图像数据,将所述第一格式图像数据发送至硬件抽象模块。
S405、所述硬件抽象模块接收所述第一格式图像数据,调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据。
S406、将所述第二格式图像数据发送至所述算法后处理模块。
作为一种可实施方式,步骤S404可包括:
所述算法后处理模块对所述第一格式图像数据进行封装,将封装后的所述第一格式图像数据发送至所述硬件抽象模块。
算法后处理模块还可用于对第一格式图像按照预定格式进行封装,将封装后的第一格式图像数据发送给硬件抽象模块。硬件抽象模块根据预定格式对接收到的图像数据进行解析,并对解析后的图像数据进行图像编码,生成第二格式的图像数据。
作为一种可实施方式,步骤S404之后,还包括:
所述算法后处理模块将所述第二格式图像数据发送至所述相机应用模块;
所述相机应用模块保存所述第二格式图像数据。
相机应用模块可以是终端中部署的具体应用程序,该应用程序可利用终端摄像头拍摄图像,或对终端中存储的图像进行相关处理。相机应用模块从硬件抽象模块获取到原始格式的图像数据,再将原始格式的图像数据发送给算法后处理模块,再从算法后处理模块接收返回的第二格式图像数据。相机应用模块可利用继而格式图像数据进行应用层面的相关处理,并将最终处理结果返回给用户。
作为一种可实施方式,S404可包括:
所述硬件抽象模块采用接口函数获取算法后处理模块发送的第一格式图像数据以及回调接口;
所述硬件抽象模块调用相机中的图像硬编模块对所述第一格式图像数据进行编码,生成所述第二格式图像数据,并采用所述回调接口将所述第二格式图像数据发送至所述算法后处理模块。
算法后处理模块可包括硬件抽象层接口定义语言客户端HIDL Client接口,硬件抽象模块包括硬件抽象层接口定义语言服务器端HIDL Server接口及图像硬编模块。算法后处理模块通过所述HIDL Client接口将所述第一格式图像数据发送给所述HIDL Server接口,并接收从HIDL Server接口返回的第二格式图像数据。
还可在HIDL Client接口中定义回调接口,回调接口用于在硬件抽象模块编码结束后调用以返回第二格式的图像数据给算法后处理模块。
作为一种可实施方式,所述方法还包括:
所述硬件抽象模块通过登记服务函数将所述回调接口注册为硬件抽象模块接口定义语言HIDL服务。
所述硬件抽象模块通过所述HIDL Server接口接收从所述HIDL Client接口发送的所述第一格式图像数据,将所述第一格式图像数据发送给所述图像编码模组进行图像硬件编码以生成所述第二格式图像数据,将所述第二格式图像数据发送给所述HIDL Client接口。
作为一种可实施方式,所述硬件抽象模块采用接口函数获取算法后处理模块发送的第一格式图像数据,包括:
所述算法后处理模块基于登记服务函数获取所述HIDL服务,基于所述HIDL服务获取经算法处理后的第一格式图像数据,采用接口函数将所述第一格式图像数据发送至所述硬件抽象模块;
所述硬件抽象模块基于所述接口函数接收所述第一格式图像数据。
作为一种可实施方式,所述方法还包括:
配置所述回调接口的安全增强型系统权限。
配置所述回调接口的安全增强型系统权限,用以保证算法后处理模块中部署的HIDL Client可以调用HIDL接口。
本申请实施例提供的图像编码方法,通过将系统划分为多个处理模块,包括算法后处理模块、相机应用模块、硬件抽象模块,各模块之间互相调用,实现了从终端的前台应用到后台处理的完整流程。本申请实施例的方法具有流程简单、移植维护成本低,图像编码速度快的特点。
为更好地阐述本申请的技术方案。下面提供一种具体的实现方法。本实施的方法在APS框架中将JPEG编码由软件编码实现改为由硬件编码实现,即在APS中将经过算法处理后的YUV buffer通过HIDL接口跨进程传给Camx,在Camx中做硬件编码,然后将编码后的JPEG图像通过HIDL接口返回给APS,这样即可加快JPEG编码时间,同时提升JPEG编码质量。其中APS和相机应用模块Camera APP在同一进程,Camx进程属于Cmera HAL进程。
图5为本申请实施例提供的一种图像编码的架构示意图。在图5中,本技术方案的技术路线为:APS通过HIDL接口调用Camx中的JPEG硬编模块,实现利用硬编模块做JPEG编码,提升JPEG编码的质量和效率。HIDL接口的实现过程为:APS和Camx中分别用软件实现了HIDL Client和HIDL Server模块,其中APS将经过算法处理之后的YUV buffer送给HIDLClient,然后HIDL Client会封装好YUV Buffer,然后调用HIDL接口将YUV buffer和元数据传给HIDL Server,在HIDL Server中会接收YUV buffer和metadata,然后通过接口调用Camx中的Jpeg Encoder模块来将YUV buffer编码成JPEG buffer,最后HIDL Server会将JPEG buffer通过HIDL接口返回给APS中的HIDL Client,HIDL Client会将JPEG buffer返回给应用程序保存为JPEG文件。
图6为本申请实施例提供的一种图像编码方法的时序示意图。图像编码的具体实现步骤为:
步骤一、在APS中实现HIDL Client模块,生成HIDL接口库。首先需要定义三个接口文件:IHwJpegProcess.hal、IHwJpegCallback.hal,types.hal。
这三个文件的作用如下:
IHwJpegCallback.hal定义了jpegCallback接口函数:jpegCallback(handleoutputBufferHandle);该函数功能是拿到outputBufferHandle参数,然后获取JPEGbuffer,并将buffer返回给APP保存成JPEG格式的文件;其中outputBufferHandle为JPEGbuffer的句柄。
IHwJpegProcess.hal定义了doJpeg接口函数:doJpeg(handleinputBufferHandle,CameraMetadata metadata,IhwJpegCallback jpegCallback);该函数功能是拿到inputBufferHandle、metadata参数以及jpegCallback回调接口,然后调用Camx中的JpegEncoder模块进行JPEG编码,jpegCallback回调接口用来在Camx JPEG编码结束后调用以返回JPEG buffer给APS。其中inputBufferHandle为YUV buffer的句柄,metadata存储这YUV buffer的参数数据,jpegCallback为IHwJpegCallback.hal定义的回调接口。
types.hal文件定义了一个数组类型,名字为CameraMetadata。
上述三个接口文件会通过HIDL编译工具生成HIDL接口库。
步骤二、在Camx中实现HIDL Server模块。HIDL Server模块功能包括:
实现IHwJpegProcess.hal定义的doJpeg接口函数,来接收APS的HIDL Client模块传来的YUV buffer、metadata、jpegCallback函数接口,然后将YUV buffer和metadata送给JPEG Encoder模块做JPEG编码,JPEG编码结束后,调用HIDL接口函数jpegCallback()将JPEG buffer回传给APS的HIDL Client模块。
步骤三、在Camx Hal进程中,通过registerAsService()函数将HIDL Server所实现的IHwJpegProcess.hal中的HIDL接口注册为HIDL服务。Camera HAL即作为该HIDL服务的守护进程。
步骤四、在APS中实现HIDL Client模块。其中HIDL Client模块功能包括:
首先通过IhwJpegProcess::getService()函数来获取上一步注册的HIDL服务;
然后拿到APS中Algo Process后的YUV buffer和metadata,并将YUV buffer转换为AHardwareBuffer类型;然后实现HIDL接口库中的jpegCallback函数来接收JPEG buffer并返回buffer给APP;
最后调用HIDL接口函数doJpeg(),函数参数包括YUV buffer的buffer handle,metadata,jpegCallback函数接口。
步骤五、配置HIDL接口的selinux权限。目前OPPO的APS和Camera APP在同一进程,而HIDL服务的守护进程为Camera HAL进程,要保证APS的HIDL Client可以调用HIDL接口,需要配置Camera APP进程对HIDL服务的selinux权限,这里配置是根据Android的hwservice selinux policy配置的。
本实施例的技术方案在原有的APS架构里,将原先APS架构中利用软件进行图像的JPEG编码,改为通过HIDL接口跨进程调用Camx中的JPEG硬件编码模块进行编码,在APS原有的技术优势上,进一步减少了JPEG编码所消耗的时间;同时利用硬件编码的优势解决了之前某些拍照场景下软件编码生成图像会存在竖状条纹以及噪点过多的问题,这将进一步提升终端用户的拍照体验。
请参见图7,图7是本申请实施例提供的一种图像编码装置的结构示意图,如图7所示,所示图像编码装置包括:
算法后处理模块701,用于获取经算法处理后的第一格式图像数据,将所述第一格式图像数据发送至硬件抽象模块702;
所述硬件抽象模块702,用于接收所述第一格式图像数据,调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据,以及将所述第二格式图像数据发送至所述算法后处理模块701。
可选地,所述硬件抽象模块702,用于获取初始格式图像数据,将所述初始格式图像数据发送至相机应用模块703;
所述相机应用模块703,用于将所述初始格式图像数据发送至所述算法后处理模块701;
所述算法后处理模块701,用于对所述初始格式图像数据进行算法处理,得到算法处理后的所述第一格式图像数据。
可选的,所述算法后处理模块701,用于将所述第一格式图像数据发送至硬件抽象模块702,具体用于:
对所述第一格式图像数据进行封装,将封装后的所述第一格式图像数据发送至所述硬件抽象模块702。
可选的,所述算法后处理模块701,还用于将所述第二格式图像数据发送至所述相机应用模块703;
所述相机应用模块703,用于保存所述第二格式图像数据。
可选的,所述硬件抽象模块702,用于调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据,以及将所述第二格式图像数据发送至所述算法后处理模块,具体用于:
采用接口函数获取算法后处理模块发送的第一格式图像数据以及回调接口;
调用相机中的图像硬编模块对所述第一格式图像数据进行编码,生成所述第二格式图像数据,并采用所述回调接口将所述第二格式图像数据发送至所述算法后处理模块701。
可选的,所述硬件抽象模块702,还用于通过登记服务函数将所述回调接口注册为硬件抽象模块接口定义语言服务。
可选的,所述硬件抽象模块702,用于采用接口函数获取算法后处理模块发送的第一格式图像数据,具体用于:
所述算法后处理模块701,用于基于登记服务函数获取所述硬件抽象模块接口定义语言服务,基于所述硬件抽象模块接口定义语言服务获取经算法处理后的第一格式图像数据,采用接口函数将所述第一格式图像数据发送至所述硬件抽象模块702;
所述硬件抽象模块702,用于基于所述接口函数接收所述第一格式图像数据。
可选的,所述算法后处理模块701,还用于配置所述回调接口的安全增强型系统权限。
本领域的技术人员可以清楚地了解到本申请实施例的技术方案可借助软件和/或硬件来实现。本说明书中的“单元”和“模块”是指能够独立完成或与其他部件配合完成特定功能的软件和/或硬件,其中硬件例如可以是FPGA(Field-Programmable Gate Array,现场可编程门阵列)、IC(Integrated Circuit,集成电路)等。
本申请实施例的各处理单元和/或模块,可通过实现本申请实施例所述的功能的模拟电路而实现,也可以通过执行本申请实施例所述的功能的软件而实现。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述图像编码方法的步骤。其中,计算机可读存储介质可以包括但不限于任何类型的盘,包括软盘、光盘、DVD、CD-ROM、微型驱动器以及磁光盘、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪速存储器设备、磁卡或光卡、纳米系统(包括分子存储器IC),或适合于存储指令和/或数据的任何类型的媒介或设备。
参见图8,其示出了本申请实施例所涉及的一种电子设备的结构示意图,包括算法后处理模块、硬件抽象模块和相机应用模块。该电子设备可以用于实施上述实施例中提供的图像编码方法。具体来讲:
存储器1020可用于存储软件程序以及模块,处理器1080通过运行存储在存储器1020的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端设备的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器1020还可以包括存储器控制器,以提供处理器1080和输入单元1030对存储器1020的访问。
输入单元1030可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元1030可包括触敏表面1031(例如:触摸屏、触摸板或触摸框)。触敏表面1031,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面1031上或在触敏表面1031附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面1031可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1080,并能接收处理器1080发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面1031。
显示单元1040可用于显示由用户输入的信息或提供给用户的信息以及终端设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元1040可包括显示面板1041,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板1041。进一步的,触敏表面1031可覆盖显示面板1041,当触敏表面1031检测到在其上或附近的触摸操作后,传送给处理器1080以确定触摸事件的类型,随后处理器1080根据触摸事件的类型在显示面板1041上提供相应的视觉输出。虽然触敏表面1031与显示面板1041可以作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面1031与显示面板1041集成而实现输入和输出功能。
处理器1080是终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分,通过运行或执行存储在存储器1020内的软件程序和/或模块,以及调用存储在存储器1020内的数据,执行终端设备的各种功能和处理数据,从而对终端设备进行整体监控。可选的,处理器1080可包括一个或多个处理核心;其中,处理器1080可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1080中。
具体在本实施例中,终端设备的显示单元是触摸屏显示器,终端设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行述一个或者一个以上程序包含实现上述图像编码方法的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
以上介绍仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种图像编码方法,其特征在于,所述方法包括:
算法后处理模块获取经算法处理后的第一格式图像数据,将所述第一格式图像数据发送至硬件抽象模块;
所述硬件抽象模块接收所述第一格式图像数据,调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据,以及将所述第二格式图像数据发送至所述算法后处理模块。
2.根据权利要求1所述的方法,其特征在于,所述算法后处理模块获取经算法处理后的第一格式图像数据,包括:
所述硬件抽象模块获取初始格式图像数据,将所述初始格式图像数据发送至相机应用模块;
所述相机应用模块将所述初始格式图像数据发送至所述算法后处理模块;
所述算法后处理模块对所述初始格式图像数据进行算法处理,得到算法处理后的所述第一格式图像数据。
3.根据权利要求2所述的方法,其特征在于,所述算法后处理模块将所述第一格式图像数据发送至硬件抽象模块,包括:
所述算法后处理模块对所述第一格式图像数据进行封装,将封装后的所述第一格式图像数据发送至所述硬件抽象模块。
4.根据权利要求3所述的方法,其特征在于,所述将所述第二格式图像数据发送至所述算法后处理模块之后,还包括:
所述算法后处理模块将所述第二格式图像数据发送至所述相机应用模块;
所述相机应用模块保存所述第二格式图像数据。
5.根据权利要求1所述的方法,其特征在于,所述硬件抽象模块调用图像硬编模块对所述第一格式图像数据进行编码,生成第二格式图像数据,以及将所述第二格式图像数据发送至所述算法后处理模块,包括:
所述硬件抽象模块采用接口函数获取算法后处理模块发送的第一格式图像数据以及回调接口;
所述硬件抽象模块调用相机中的图像硬编模块对所述第一格式图像数据进行编码,生成所述第二格式图像数据,并采用所述回调接口将所述第二格式图像数据发送至所述算法后处理模块。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述硬件抽象模块通过登记服务函数将所述回调接口注册为硬件抽象模块接口定义语言服务。
7.根据权利要求6所述的方法,其特征在于,所述硬件抽象模块采用接口函数获取算法后处理模块发送的第一格式图像数据,包括:
所述算法后处理模块基于登记服务函数获取所述硬件抽象模块接口定义语言服务,基于所述硬件抽象模块接口定义语言服务获取经算法处理后的第一格式图像数据,采用接口函数将所述第一格式图像数据发送至所述硬件抽象模块;
所述硬件抽象模块基于所述接口函数接收所述第一格式图像数据。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述算法后处理模块,配置所述回调接口的安全增强型系统权限。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现所述权利要求1-8中任一项所述方法的步骤。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现所述权利要求1-8中任一项所述方法的步骤。
CN202010331215.7A 2020-04-24 2020-04-24 图像编码方法、存储介质和电子设备 Active CN113554718B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010331215.7A CN113554718B (zh) 2020-04-24 2020-04-24 图像编码方法、存储介质和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010331215.7A CN113554718B (zh) 2020-04-24 2020-04-24 图像编码方法、存储介质和电子设备

Publications (2)

Publication Number Publication Date
CN113554718A true CN113554718A (zh) 2021-10-26
CN113554718B CN113554718B (zh) 2023-04-28

Family

ID=78101213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010331215.7A Active CN113554718B (zh) 2020-04-24 2020-04-24 图像编码方法、存储介质和电子设备

Country Status (1)

Country Link
CN (1) CN113554718B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117692790A (zh) * 2023-07-20 2024-03-12 荣耀终端有限公司 图像数据处理方法及相关装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110242339A1 (en) * 2010-03-31 2011-10-06 Sony Corporation Image processing apparatus, image processing method, and image processing program
US20170201758A1 (en) * 2016-01-08 2017-07-13 Futurewei Technologies, Inc. Jpeg image to compressed gpu texture transcoder
CN109276895A (zh) * 2018-11-08 2019-01-29 腾讯科技(深圳)有限公司 积木系统、拓扑结构识别的方法、装置及系统
CN109672884A (zh) * 2017-10-13 2019-04-23 阿里巴巴集团控股有限公司 图像硬件编码处理方法和装置
CN109963083A (zh) * 2019-04-10 2019-07-02 Oppo广东移动通信有限公司 图像处理器、图像处理方法、拍摄装置和电子设备
CN110086967A (zh) * 2019-04-10 2019-08-02 Oppo广东移动通信有限公司 图像处理方法、图像处理器、拍摄装置和电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110242339A1 (en) * 2010-03-31 2011-10-06 Sony Corporation Image processing apparatus, image processing method, and image processing program
US20170201758A1 (en) * 2016-01-08 2017-07-13 Futurewei Technologies, Inc. Jpeg image to compressed gpu texture transcoder
CN109672884A (zh) * 2017-10-13 2019-04-23 阿里巴巴集团控股有限公司 图像硬件编码处理方法和装置
CN109276895A (zh) * 2018-11-08 2019-01-29 腾讯科技(深圳)有限公司 积木系统、拓扑结构识别的方法、装置及系统
CN109963083A (zh) * 2019-04-10 2019-07-02 Oppo广东移动通信有限公司 图像处理器、图像处理方法、拍摄装置和电子设备
CN110086967A (zh) * 2019-04-10 2019-08-02 Oppo广东移动通信有限公司 图像处理方法、图像处理器、拍摄装置和电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117692790A (zh) * 2023-07-20 2024-03-12 荣耀终端有限公司 图像数据处理方法及相关装置
CN117692790B (zh) * 2023-07-20 2024-09-27 荣耀终端有限公司 图像数据处理方法及相关装置

Also Published As

Publication number Publication date
CN113554718B (zh) 2023-04-28

Similar Documents

Publication Publication Date Title
CN104869305B (zh) 处理图像数据的方法及其装置
JP7186877B2 (ja) 映像デコーディング制御方法、装置、電子機器及び記憶媒体
KR101718046B1 (ko) 동적 해상도 제어를 수행하는 이동 단말기 및 그 제어방법
AU2021229220B2 (en) Image processing method and device
CN105308648A (zh) 用于对用户选定的兴趣区域进行超分辨的系统和方法
CN113727035A (zh) 图像处理方法、系统、电子设备及存储介质
CN108009033B (zh) 模拟触控方法、装置和移动终端
CN104301687A (zh) 应用于虚拟桌面环境的摄像头视频处理方法和相应设备
KR20150026656A (ko) 응용프로그램 관리 방법 및 그 전자 장치
TW201545059A (zh) 視訊影像分配方法
CN108347452A (zh) 远程获取屏幕截图的方法及装置
CN111259441B (zh) 设备控制方法、装置、存储介质及电子设备
CN113554718B (zh) 图像编码方法、存储介质和电子设备
CN111447439B (zh) 图像编码方法、图像编码装置及移动终端
US20120005587A1 (en) Performing Remoting Operations For Different Regions Of A Display Surface At Different Rates
WO2015112612A1 (en) System and method for implementing screen capture
JP2021500764A (ja) 映像通話の映像品質向上
WO2023016059A1 (zh) 数据传输控制方法及相关装置
CN107315970B (zh) 一种敏感数据的交互方法及装置
CN109857568B (zh) 数据封装及处理方法、装置及电子设备
CN113255644B (zh) 显示设备及其图像识别方法
WO2021129339A1 (zh) 配置文件处理方法、装置、电子设备及存储介质
JP5842029B2 (ja) 画像データをキャッシュする情報処理支援装置、情報処理装置及び情報処理支援プログラム
WO2022155848A1 (zh) 虚拟机性能优化的方法及相关装置
WO2024149089A1 (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