掌桥专利:专业的专利平台
掌桥专利
首页

图像处理方法、装置、电子设备和可读存储介质

文献发布时间:2023-06-19 11:22:42


图像处理方法、装置、电子设备和可读存储介质

技术领域

本申请属于通信技术领域,具体涉及一种图像处理方法、装置、电子设备和可读存储介质。

背景技术

目前,大部分电子设备中均设置有图像处理芯片,这些图像处理芯片用于响应电子设备中的相机应用程序生成的图像处理指令以实现对图像的图像处理(如缩放、裁剪、更改图像参数、美化等处理)。

在相关技术中,电子设备在生成图像处理指令后,会将该图像处理指令通过操作系统的相机整体框架或者私有通路下发至电子设备中的图像处理芯片。一般的,私有通路是为了满足复杂度越来越高的客制化功能需求,对相机整体架构进行外扩,建立的相机应用程序和图像处理芯片之间的信息传输通道。

然而,由于图像处理芯片处理图像处理指令过程中硬件处理能力、算法耗时等限制,若相机应用程序频繁下发图像处理指令,会导致图像处理芯片出现卡顿、指令遗漏、指令混淆等异常处理状况。

发明内容

本申请实施例的目的是提供一种图像处理方法、装置、电子设备和可读存储介质,能够解决频繁下发图像处理指令,导致图像处理芯片出现卡顿、指令遗漏、指令混淆等异常处理状况的问题。

为了解决上述技术问题,本申请是这样实现的:

第一方面,本申请实施例提供了一种图像处理方法。该方法包括:获取目标应用程序发送的至少一个图像处理指令;按照上述目标应用程序发送的上述至少一个图像处理指令中每个图像处理指令的发送时间,依次将上述每个图像处理指令存储至缓冲队列;通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令;其中,上述目标图像处理指令为:上述缓冲队列中的位于队列出口的图像处理指令。

第二方面,本申请实施例提供了一种图像处理装置。该装置包括获取模块、存储模块和下发模块;上述获取模块,用于获取目标应用程序发送的至少一个图像处理指令;上述存储模块,用于按照上述目标应用程序发送的上述至少一个图像处理指令中每个图像处理指令的发送时间,依次将上述每个图像处理指令存储至缓冲队列;上述下发模块,用于通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令;其中,上述目标图像处理指令为:上述缓冲队列中的位于队列出口的图像处理指令。

第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器、存储器及存储在该存储器上并可在该处理器上运行的程序或指令,该程序或指令被该处理器执行时实现如第一方面提供的方法的步骤。

第四方面,本申请实施例提供了一种可读存储介质,该可读存储介质上存储程序或指令,该程序或指令被处理器执行时实现如第一方面提供的方法的步骤。

第五方面,本申请实施例提供了一种芯片,该芯片包括处理器和通信接口,该通信接口和该处理器耦合,该处理器用于运行程序或指令,实现如第一方面提供的方法。

第六方面,本申请实施例提供了一种计算机程序产品,该程序产品被存储在非易失的存储介质中,该程序产品被至少一个处理器执行以实现如第一方面上述的方法。

在本申请实施例中,首先获取目标应用程序发送的至少一个图像处理指令,然后按照图像处理指令的发送时间依次将图像处理指令存储至缓冲队列,最后通过图像缓冲线程下发缓冲队列中的目标图像处理指令。如此,能够控制图像处理指令的下发速度,进而确保处理这些图像处理指令的图像处理芯片的稳定性。同时,由于下发的目标图像处理指令是缓冲队列中的位于队列出口的图像处理指令,这样按照依次下发的输出方式进行图像处理指令的下发,不仅能提高图像处理指令的处理准确度,还能避免处理这些图像处理指令的图像处理芯片出现卡顿、指令遗漏、指令混淆等异常理状况。

附图说明

图1为本申请实施例提供的一种图像处理方法的流程示意图之一;

图2为本申请实施例提供的一种图像处理方法的流程示意图之二;

图3为本申请实施例提供的一种图像处理装置的结构示意图之一;

图4为本申请实施例提供的一种图像处理装置的结构示意图之二;

图5为本申请实施例提供的电子设备的硬件示意图之一;

图6为本申请实施例提供的电子设备的硬件示意图之二。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。

下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的图像处理方法进行详细地说明。

本申请实施例提供的图像处理方法用于处理电子设备中应用程序发送的图像处理指令。

以连拍场景为例,当用户启动拍照应用程序并触发连拍模式的情况下,拍照应用程序会连续生成预置数量的抓拍指令,每次抓拍指令用于指示安装拍照应用程序的电子设备中的图像处理芯片在短时间内连续获取并存储预置数量的摄像头捕捉到的图像,并且对每个捕捉到的图像进行美化处理。如果用户操作连续10次触发连拍模式,拍照应用程序响应于用户操作生成10倍预置数量的抓拍指令,在拍照应用程序在生成10倍预置数量的抓拍指令后,将10倍预置数量的抓拍指令下发至图像处理芯片。图像处理芯片需要根据10倍预置数量的预置数量的抓拍指令,依次获取抓拍图像,以及对获取到的抓拍图像依次进行美化处理,图像处理芯片需要在短时间内处理10倍预置数量的预置数量的抓拍指令。由于图像处理芯片能够承载的处理量有限,短时间内堆叠大量的抓拍指令会导致出现卡顿、指令遗漏、指令混淆等异常处理状况。

在本申请实施例中,在拍照应用程序与图像处理芯片之间设置缓冲机制,通过缓冲机制控制抓拍指令下发的速度。这样,当电子设备在拍照应用程序连续生成抓拍指令之后,获取这些抓拍指令,并将这些抓拍指令存储至缓冲队列中,当电子设备检测到缓冲队列满足指令下发条件的情况下,下发缓冲队列中的目标抓拍指令,以实现控制抓拍指令的下发速度,进而确保处理这些抓拍指令的图像处理芯片的稳定性。同时,由于下发的目标抓拍指令是缓冲队列中的位于队列出口的抓拍指令,这样按照缓冲队列的输出方式依次下发抓拍指令,不仅够提高抓拍指令的处理准确度,还能避免处理这些抓拍指令的图像处理芯片出现卡顿、指令遗漏、指令混淆等异常理状况。

需要说明的是,本申请实施例提供的技术方案,应用于应用程序生成并发出图像处理指令之后,图像处理芯片执行图像处理指令之前。本申请提供的技术方案,具体是图像处理指令的缓冲机制,通过该缓冲机制根据图像处理芯片的处理能力和当前的图像处理状况判断图像处理芯片能否执行其他图像处理指令,以决定是否向图像处理芯片下发图像处理指令。其中,图像处理芯片能够像上述应用程序反馈图像处理执行的执行结果,应用程序还用于接收图像处理结果。

如图1所示,本申请实施例提供一种图像处理方法的流程示意图。该方法可以包括下述的步骤101、步骤102和步骤103。下面以执行主体为图像处理装置为例对该方法进行示例性说明。

步骤101:图像处理装置获取目标应用程序发送的至少一个图像处理指令。

在本申请实施例中,目标应用程序为电子设备中能够生成并发送图像处理指令的应用程序。进一步的,上述目标应用程序包括但不限于:相机APP(应用程序)、旅游APP、美食APP、即时聊天APP等,需要应用到图像的应用程序。

在本申请实施例中,图像处理指令为:安装目标应用程序的电子设备能够解析的,并且解析后的图像处理指令由电子设备中的图像处理芯片执行的指令。其中,图像处理指令用于指示对至少一幅图像进行图像处理,图像处理指令具体用于指示图像处理芯片按照对应的图像处理方式对至少一幅图像进行图像处理。上述图像处理方式包括但不限于以下至少一项:拍摄图像,裁剪图像,虚化图像背景,增强图像清晰度,调节图像色调。

需要说明的是,图像处理装置接收到目标应用程序发送的一个或多个指令时,该图像处理装置可以根据每个指令中是否携带图像处理芯片标识,来判断该指令是否为图像处理指令。若判断该指令为图像处理指令,则图像处理装置会获取该指令。

步骤102:图像处理装置按照上述目标应用程序发送的上述至少一个图像处理指令中每个图像处理指令的发送时间,依次将上述每个图像处理指令存储至缓冲队列。

可选地,在本申请实施例中,上述缓冲队列可以为一种用于存储电子设备中的目标应用程序生成的图像处理指令的线性表。

进一步可选地,上述的缓冲队列可以是一种操作受限的线性表,这种操作受限的线性表通常仅允许在该线性表的前端进行删除,在表的后端进行插入操作(即,这种操作受限的线性表中的元素的出入方式为先进先出模式)。如此,对于操作受限的缓冲队列来说,只有最早进入该缓冲队列中的图像处理指令最先从该缓冲队列中输出。可以理解,上述缓冲队列可以按照先进先出模式,依次存储应用程序发送的N个图像处理指令。

进一步可选地,上述的缓冲队列储存的图像处理指令一旦被执行,即从该缓冲队列中删除。可以理解,当缓冲队列中存储的图像处理指令全部执行完成后,则该缓冲队列中存储的图像处理指令被清空。

在本申请实施例中,上述目标应用程序包括一个或多个应用程序。在上述目标应用程序包括多个应用程序的情况下,上述图像处理装置可以为多个应用程序设置一个缓冲队列,也可以为每个应用程序设置一个缓冲队列,还可以为电子设备中的每个图像处理芯片设置一个缓冲队列,本申请实施例对此不作限定。

在一种示例中,当图像处理装置在同一时刻仅能启动一个应用程序,不同的应用程序发的图像处理指令不发生干扰,无论目标应用程序包括多少个应用程序,图像处理装置仅设置一个缓冲队列。

在另一种示例中,为了避免同一缓冲队列接收多个应用程序需要满足更高的兼容要求,该图像处理装置为每个应用程序分别设置一个缓冲队列。

在本申请实施例中,上述每个图像处理指令中均携带时间标识,该时间标识用于标记目标应用程序发送该图像处理指令的发送时间。进一步的,图像处理装置会按照发送时间依次将每个图像处理指令存储至缓冲队列,对应的,图像处理装置在下发缓冲队列中的图像处理指令时,也会按照发送时间依次下发。也就是,图像处理指令的发送顺序与执行顺序相同,即优先发送的图像处理指令能够优先下发,进而图像处理芯片按照时序依次执行图像处理指令符合用户对图像处理指令执行的迫切程度,用户的体验感较好。

可选地,在本申请实施例中,上述缓冲队列的存储地址可以是固定的,也可以是动态的。

在一种示例中,如果上述缓冲队列的存储地址是有限且固定的,即,存储地址从设置开始无论是否存储图像处理指令,其空间大小及位置都不发生变化。

在另一种示例中,如果上述缓冲队列的储存地址是动态的,每存储一个图像处理指令,则占用一段能够存储图像处理指令的动态存储地址。一旦删除缓冲队列中的图像处理指令,则释放该图像处理指令对应的动态存储地址。动态存储地址在安装应用程序的电子设备的储存地址范围内,其空间大小和位置都是动态变化的。每个存储顺序相邻的图像处理指令,其对应的动态存储地址在物理位置上可以是连续的,也可以是不连续的。

可理解的是,如果上述缓冲队列的储存地址是动态的,在获取图像处理指令之后,先查找缓冲队列是否存在对应的动态存储地址,如果存在则将图像处理指令保存至上述动态存储地址,如果不存在则开辟固定存储地址作为动态存储地址。当该动态存储地址中的图像处理指令全部下发执行完成后,释放该动态存储地址。

步骤103:图像处理装置通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令。

在本申请实施例中,上述图像缓冲线程是独立运行的线程。通过独立运行的缓冲线程下发目标图像处理指令,不影响目标应用程序发送图像处理指令的发送时间,以及图像处理芯片处理目标图像处理指令的指令处理时序。同时,目标应用程序发送的图像处理指令,先存储于缓冲队列中,而不是直接下发至图像处理芯片,目标应用程序与图像处理芯片之间不直接传递图像处理指令,降低目标应用程序与图像处理芯片之间的耦合性,以便于控制图像处理指令的下发速度,以保障图像处理芯片实时处理的图像处理指令在其处理能力的范围内。

在本申请实施例中,上述目标图像处理指令为:上述缓冲队列中位于队列出口的图像处理指令。需要说明的是,每下发一次目标图像处理指令,依据缓冲队列的先进先出模式的出入方式,移动缓冲队列中的图像处理指令,更新位于队列出口的图像处理指令。

应注意的是,随着缓冲队列不断地保存图像处理指令,以及缓冲队列不断地下发目标图像处理指令,缓冲队列中存储的图像处理指令的数量是不断变化的。

在本申请实施例提供的图像处理方法中,首先获取目标应用程序发送的至少一个图像处理指令,然后按照图像处理指令的发送时间依次将图像处理指令存储至缓冲队列,最后通过图像缓冲线程下发缓冲队列中的目标图像处理指令。如此,能够控制图像处理指令的下发速度,进而确保处理这些图像处理指令的图像处理芯片的稳定性。同时,由于下发的目标图像处理指令是缓冲队列中的位于队列出口的图像处理指令,这样按照依次下发的输出方式进行图像处理指令的下发,不仅能提高图像处理指令的处理准确度,还能避免处理这些图像处理指令的图像处理芯片出现卡顿、指令遗漏、指令混淆等异常理状况。

可选地,如图2所示,本申请实施例中,在上述步骤103中的通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令,具体包括如下步骤201和步骤202。

步骤201:图像处理装置通过上述图像缓冲线程,判断当前处理中的图像处理指令指示处理的图像数量是否小于预置阈值。

步骤202:图像处理装置在上述当前处理中的图像处理指令指示处理的图像数量小于上述预置阈值的情况下,下发上述缓冲队列中的目标图像处理指令。

在本申请实施例中,每个上述图像处理指令用于指示对至少一幅图像进行图像处理。需要说明的是,在下发目标图像处理指令时,由于信号干扰、系统卡顿等原因,目标处理指令可能不能下发至图像处理芯片,即使下发至图像处理芯片的目标图像处理指令的指令数量小于或等于从缓冲队列中下发的目标图像处理指令的指令数量,也能解决频繁下发图像处理指令,导致图像处理芯片出现卡顿、指令遗漏、指令混淆等异常处理状况的问题,因此在本申请实施例中,下发的目标图像处理指令即为:当前处理中的图像处理指令。

进一步可选地,在本申请实施例中,为了统计当前处理中的图像处理指令指示的图像数量,图像处理装置将目标图像处理指令存储至目标指令列表中,然后根据目标指令列表中各个目标图像指令指示处理的图像数量,统计当前处理的所有目标图像处理指令指示处理的图像数量。可理解的,上述目标指令列表用于存储上述缓冲队列已下发的目标图像处理指令。

示例性的,将已下发的图像处理指令中指示处理的图像数量作为判断缓冲队列是否满足下发条件。具体的,上述缓冲队列满足指令下发条件包括:目标指令列表中的图像处理指令指示处理的图像数量小于预置阈值。需要说明的是,指令下发条件中涉及的预置阈值,其设置方式包括但不限于以下方式:固定数值,依据图像处理芯片的型号选取,或依据电子设备的处理器的型号选取。

进一步可选地,如图2所示,本申请实施例中,在上述步骤201中的通过上述图像缓冲线程,判断当前处理中的图像处理指令指示处理的图像数量是否小于预置阈值之前,本申请实施例提供的图像处理方法还可以包括步骤203。

步骤203:图像处理装置基于图像处理芯片的图像数量吞吐量,计算上述预置阈值。

在本申请实施例中,图像处理芯片用于处理上述目标图像处理指令。示例的,图像数量吞吐量是根据图像处理芯片的硬件参数计算得到的,一般的,上述预置阈值通常小于或等于图像数量吞吐量。为了指令的顺利执行,通常图像处理芯片不能满负荷工作,需要预留一定的指令执行资源。因此预置阈值可以是一定的比例的图像数量吞吐量,或者比图像数量吞吐量减少固定数值。

可以理解的是,比较预置阈值,与当前处理的所有目标图像处理指令指示处理的图像数量,也就是衡量图像处理芯片的当前剩余处理能力。

如此,比较图像处理芯片的处理能力(预置阈值)和当前的处理状态(目标指令列表中的目标图像处理指令指示处理的图像数量),以判断是否下发目标图像处理指令,以此实现缓冲队列的缓冲作用。

可选地,本申请实施例中,在上述S202中的在上述当前处理中的图像处理指令指示处理的图像数量小于上述预置阈值的情况下,下发上述缓冲队列中的目标图像处理指令之后,本申请实施例提供的图像处理方法还可以包括步骤204和步骤205。

步骤204:图像处理装置在接收到上述图像处理芯片的反馈信息的情况下,则更新当前处理中的图像处理指令指示处理的图像数量。

步骤205:图像处理装置通过上述图像缓冲线程,下发上述缓冲队列中位于队列出口的图像处理指令。

在本申请实施例中,上述反馈信息用于指示图像处理芯片已执行完成目标图像处理指令。可以理解,当图像处理芯片执行完成目标图像处理指令后,向目标应用程序反馈信息,以指示该目标图像处理指令已被执行。

进一步可选地,目标图像处理指令被执行之后,删除目标指令列表中的反馈信息对应的目标图像处理指令,以动态地更新图像处理芯片当前处理的图像处理指令情况,以便于在保障图像处理芯片能正常处理图像处理指令的基础上以最快的方式,执行目标图像处理指令。

如此,更新当前处理中的图像处理指令指示处理的图像数量,以便于根据更新后的图像数量判断是否下发目标图像处理指令,使得目标图像处理指令的下发时机,能最大化的提高图像处理芯片的利用率。

需要说明的是,本申请实施例提供的图像处理方法,执行主体可以为图像处理装置,或者该图像处理装置中的用于执行图像处理方法的控制模块。本申请实施例中以图像处理装置执行图像处理方法为例,说明本申请实施例提供的图像处理装置。但实际应用中上述图像处理方法的执行主体还可以是其他可以执行该图像处理方法的设备或装置,本申请实施例对此不作限定。

如图3所示,本申请实施例提供一种图像处理装置。该图像处理装置包括获取模块31、存储模块32和下发模块33;

上述获取模块31,用于获取目标应用程序发送的至少一个图像处理指令;

上述存储模块32,用于按照上述目标应用程序发送的上述至少一个图像处理指令中每个图像处理指令的发送时间,依次将上述每个图像处理指令存储至缓冲队列;

上述下发模块33,用于通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令;

其中,上述目标图像处理指令为:上述缓冲队列中的位于队列出口的图像处理指令。

可选地,如图4所示,上述下发模块33,具体用于:通过上述图像缓冲线程,判断当前处理中的图像处理指令指示处理的图像数量是否小于预置阈值;

在上述当前处理中的图像处理指令指示处理的图像数量小于上述预置阈值的情况下,下发上述缓冲队列中的目标图像处理指令;

其中,每个上述图像处理指令用于指示对至少一幅图像进行图像处理。

可选地,如图4所示,上述装置包括:计算模块34;

上述计算模块34,用于上述下发模块33通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令之前,基于图像处理芯片的图像数量吞吐量,计算上述预置阈值;

其中,上述图像处理芯片用于处理上述目标图像处理指令。

可选地,如图4所示,上述装置还包括:更新模块35;

上述更新模块35,用于上述下发模块33通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令之后,在接收到上述图像处理芯片的反馈信息的情况下,则更新当前处理中的图像处理指令指示处理的图像数量。

可选地,如图4所示,上述下发模块,还用于:上述更新模块更新当前处理中的图像处理指令指示处理的图像数量之后,通过所述图像缓冲线程,下发上述缓冲队列中位于队列出口的图像处理指令。

在本申请实施例提供的图像处理装置中,首先获取目标应用程序发送的至少一个图像处理指令,然后按照图像处理指令的发送时间依次将图像处理指令存储至缓冲队列,最后通过图像缓冲线程下发缓冲队列中的目标图像处理指令。如此,能够控制图像处理指令的下发速度,进而确保处理这些图像处理指令的图像处理芯片的稳定性。同时,由于下发的目标图像处理指令是缓冲队列中的位于队列出口的图像处理指令,这样按照依次下发的输出方式进行图像处理指令的下发,不仅能提高图像处理指令的处理准确度,还能避免处理这些图像处理指令的图像处理芯片出现卡顿、指令遗漏、指令混淆等异常理状况。

本申请实施例中的图像处理装置可以是装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personaldigital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(networkattached storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。

本申请实施例中的图像处理装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为IOS操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。

本申请实施例提供的图像装置能够实现上述方法实施例实现的各个过程,为避免重复,这里不再赘述。

可选地,如图5所示,本申请实施例还提供一种电子设备500,包括处理器501,存储器502,存储在存储器502上并可在处理器501上运行的程序或指令,该程序或指令被处理器501执行时实现上述图像处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

需要说明的是,本申请实施例中的电子设备包括上述的移动电子设备和非移动电子设备。

图6为实现本申请实施例的一种电子设备的硬件结构示意图。

该电子设备600包括但不限于:射频单元601、网络模块602、音频输出单元603、输入单元604、传感器605、显示单元606、用户输入单元607、接口单元608、存储器609、以及处理器610等部件。

本领域技术人员可以理解,电子设备600还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器610逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图6中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。

其中,处理器610,用于获取目标应用程序发送的至少一个图像处理指令;按照上述目标应用程序发送的上述至少一个图像处理指令中每个图像处理指令的发送时间,依次将上述每个图像处理指令存储至缓冲队列;通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令;其中,上述目标图像处理指令为:上述缓冲队列中的位于队列出口的图像处理指令。

可选地,如图6所示,所示处理器610,还用于:通过上述图像缓冲线程,判断当前处理中的图像处理指令指示处理的图像数量是否小于预置阈值;在上述当前处理中的图像处理指令指示处理的图像数量小于上述预置阈值的情况下,下发上述缓冲队列中的目标图像处理指令;其中,每个上述图像处理指令用于指示对至少一幅图像进行图像处理。

可选地,如图6所示,所示处理器610,还用于:上述通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令之前,基于图像处理芯片的图像数量吞吐量,计算上述预置阈值;其中,上述图像处理芯片用于处理上述目标图像处理指令。

可选地,如图6所示,所示处理器610,还用于:上述通过图像缓冲线程,下发上述缓冲队列中的目标图像处理指令之后,在接收到上述图像处理芯片的反馈信息的情况下,则更新当前处理中的图像处理指令指示处理的图像数量。

可选地,如图6所示,所示处理器610,还用于:上述更新当前处理中的图像处理指令指示处理的图像数量之后,通过所述图像缓冲线程,下发上述缓冲队列中位于队列出口的图像处理指令。

在本申请实施例提供的电子设备中,首先获取目标应用程序发送的至少一个图像处理指令,然后按照图像处理指令的发送时间依次将图像处理指令存储至缓冲队列,最后通过图像缓冲线程下发缓冲队列中的目标图像处理指令。如此,能够控制图像处理指令的下发速度,进而确保处理这些图像处理指令的图像处理芯片的稳定性。同时,由于下发的目标图像处理指令是缓冲队列中的位于队列出口的图像处理指令,这样按照依次下发的输出方式进行图像处理指令的下发,不仅能提高图像处理指令的处理准确度,还能避免处理这些图像处理指令的图像处理芯片出现卡顿、指令遗漏、指令混淆等异常理状况。

应理解的是,本申请实施例中,输入单元604可以包括图形处理器(graphicsprocessingunit,GPU)6041和麦克风6042,图形处理器6041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元606可包括显示面板6061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板6061。用户输入单元607包括触控面板6071以及其他输入设备6072。触控面板6071,也称为触摸屏。触控面板6071可包括触摸检测装置和触摸控制器两个部分。其他输入设备6072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。存储器609可用于存储软件程序以及各种数据,包括但不限于应用程序和操作系统。处理器610可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器610中。

本申请实施例还提供一种可读存储介质,该可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述图像处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

其中,处理器为上述实施例中的电子设备中的处理器。可读存储介质,包括计算机可读存储介质,如计算机只读存储器(read-onlymemory,ROM)、随机存取存储器(randomaccess memory,RAM)、磁碟或者光盘等。

本申请实施例另提供了一种芯片,该芯片包括处理器和通信接口,该通信接口和该处理器耦合,该处理器用于运行程序或指令,实现上述图像处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本申请各个实施例的方法。

上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

相关技术
  • 图像处理方法及图像处理装置、电子设备、可读存储介质
  • 图像处理方法、图像处理装置、电子设备及可读存储介质
技术分类

06120112899164