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

拍照方法、装置、存储介质、芯片及终端

文献发布时间:2024-04-18 20:02:40


拍照方法、装置、存储介质、芯片及终端

技术领域

本公开涉及终端技术领域,尤其涉及一种拍照方法、装置、存储介质、芯片及终端。

背景技术

随着移动终端的普及和移动互联网的迅速发展,拍照功能已经成为移动终端的标准配置之一。用户在使用移动终端进行拍照时,为了拍出满意的照片,通常需要对图片进行图像后处理。

相关技术中,在用户点击拍照应用程序中的拍照按钮后,通过传感器获取原始图像数据,并对原始图像数据进行图像后处理得到目标图像,并将该目标图像存储至图库中,用于可以在图库中查看拍摄的目标图像。但是,由于图像后处理的算法比较复杂,导致图像后处理的速度比较慢,在连续拍照时存在排队等待图像后处理的情况,用户在图库中查看拍摄的图片时,该目标图像还未存储至图库中,影响用户体验。

发明内容

为克服相关技术中存在的问题,本公开提供一种拍照方法、装置、存储介质、芯片及终端。

根据本公开实施例的第一方面,提供一种拍照方法,应用于终端,包括:

响应于用户通过所述终端的应用程序触发的拍照请求消息,通过所述应用程序获取所述终端拍摄的原始图像数据;

通过所述应用程序将所述原始图像数据发送至所述终端的图像算法引擎;

在所述图像算法引擎确定待处理图像数据集包括多个所述原始图像数据的情况下,获取预先存储的目标图像处理顺序;

通过所述图像算法引擎,按照所述目标图像处理顺序,依次对所述待处理图像数据集中的每个所述原始图像数据进行图像处理,得到所述原始图像数据对应的目标图像数据,并将所述目标图像数据发送至所述应用程序;

通过所述应用程序存储所述目标图像数据。

可选地,在所述通过所述图像算法引擎,按照所述目标图像处理顺序,依次对所述待处理图像数据集中的每个所述原始图像数据进行图像处理,得到所述原始图像数据对应的目标图像数据前,所述方法还包括:

通过所述图像算法引擎,确定所述待处理图像数据集中每个所述原始图像数据对应的优先级;

所述通过所述图像算法引擎,按照所述目标图像处理顺序,依次对所述待处理图像数据集中的每个所述原始图像数据进行图像处理,得到所述原始图像数据对应的目标图像数据包括:

通过所述图像算法引擎,根据所述目标图像处理顺序和所述待处理图像数据集中每个所述原始图像数据对应的优先级,依次对所述待处理图像数据集中每个所述原始图像数据进行图像处理,得到所述原始图像数据对应的目标图像数据。

可选地,所述通过所述图像算法引擎,根据所述目标图像处理顺序和所述待处理图像数据集中每个所述原始图像数据对应的优先级,依次对所述待处理图像数据集中每个所述原始图像数据进行图像处理,得到所述原始图像数据对应的目标图像数据包括:

通过所述图像算法引擎,循环执行图像处理步骤,直至所述待处理图像数据集中每个所述原始图像数据均执行所述图像处理步骤;

所述图像处理步骤包括:

根据所述目标图像处理顺序和所述待处理图像数据集中每个所述原始图像数据对应的优先级,从所述待处理图像数据集中确定待处理原始图像数据;

对所述待处理原始图像数据进行图像处理,得到所述待处理原始图像数据对应的目标图像数据;

将所述待处理图像数据集中除所述待处理原始图像数据之外的原始图像数据作为新的待处理图像数据集。

可选地,所述优先级包括顺序优先级和逆序优先级;所述根据所述目标图像处理顺序和所述待处理图像数据集中每个所述原始图像数据对应的优先级,从所述待处理图像数据集中确定待处理原始图像数据包括:

在所述目标图像处理顺序为顺序处理的情况下,根据所述待处理图像数据集中每个所述原始图像数据对应的顺序优先级,从所述待处理图像数据集中确定所述待处理原始图像数据;

在所述目标图像处理顺序为逆序处理的情况下,根据所述待处理图像数据集中每个所述原始图像数据对应的逆序优先级,从所述待处理图像数据集中确定所述待处理原始图像数据。

可选地,所述方法还包括:

在对所述待处理原始图像数据进行图像处理过程中,响应于所述用户触发的顺序变更请求;

根据所述顺序变更请求,更新所述目标图像处理顺序。

可选地,所述图像算法引擎包括多个图像处理算法;所述按照所述目标图像处理顺序,依次对所述待处理图像数据集中的每个所述原始图像数据进行图像处理包括:

针对每个所述图像处理算法,通过所述图像处理算法依次对算法图像数据集中的每个所述原始图像数据进行图像处理,所述算法图像数据集包括等待被所述图像处理算法处理的原始图像数据。

可选地,所述目标图像处理顺序通过以下方式预先存储:

响应于所述用户触发的顺序选择菜单,展示多个预设图像处理顺序;

响应于所述用户的选择操作,从多个所述预设图像处理顺序中确定所述目标图像处理顺序,并存储所述目标图像处理顺序。

根据本公开实施例的第二方面,提供一种拍照装置,应用于终端,包括:

获取模块,被配置为响应于用户通过所述终端的应用程序触发的拍照请求消息,通过所述应用程序获取所述终端拍摄的原始图像数据;

发送模块,被配置为通过所述应用程序将所述原始图像数据发送至所述终端的图像算法引擎;

图像处理模块,被配置为在所述图像算法引擎确定待处理图像数据集包括多个所述原始图像数据的情况下,获取预先存储的目标图像处理顺序,按照所述目标图像处理顺序,依次对所述待处理图像数据集中的每个所述原始图像数据进行图像处理,得到所述原始图像数据对应的目标图像数据,并将所述目标图像数据发送至所述应用程序;

存储模块,被配置为通过所述应用程序存储所述目标图像数据。

可选地,所述装置还包括:

确定模块,被配置为通过所述图像算法引擎,确定所述待处理图像数据集中每个所述原始图像数据对应的优先级;

所述图像处理模块,还被配置为:

通过所述图像算法引擎,根据所述目标图像处理顺序和所述待处理图像数据集中每个所述原始图像数据对应的优先级,依次对所述待处理图像数据集中每个所述原始图像数据进行图像处理,得到所述原始图像数据对应的目标图像数据。

可选地,所述图像处理模块,还被配置为:

通过所述图像算法引擎,循环执行图像处理步骤,直至所述待处理图像数据集中每个所述原始图像数据均执行所述图像处理步骤;

所述图像处理步骤包括:

根据所述目标图像处理顺序和所述待处理图像数据集中每个所述原始图像数据对应的优先级,从所述待处理图像数据集中确定待处理原始图像数据;

对所述待处理原始图像数据进行图像处理,得到所述待处理原始图像数据对应的目标图像数据;

将所述待处理图像数据集中除所述待处理原始图像数据之外的原始图像数据作为新的待处理图像数据集。

可选地,所述优先级包括顺序优先级和逆序优先级;所述图像处理模块,还被配置为:

在所述目标图像处理顺序为顺序处理的情况下,根据所述待处理图像数据集中每个所述原始图像数据对应的顺序优先级,从所述待处理图像数据集中确定所述待处理原始图像数据;

在所述目标图像处理顺序为逆序处理的情况下,根据所述待处理图像数据集中每个所述原始图像数据对应的逆序优先级,从所述待处理图像数据集中确定所述待处理原始图像数据。

可选地,所述装置还包括:

更新模块,被配置为在对所述待处理原始图像数据进行图像处理过程中,响应于所述用户触发的顺序变更请求,更新所述目标图像处理顺序。

可选地,所述图像算法引擎包括多个图像处理算法;所述图像处理模块,还被配置为:

针对每个所述图像处理算法,通过所述图像处理算法依次对算法图像数据集中的每个所述原始图像数据进行图像处理,所述算法图像数据集包括等待被所述图像处理算法处理的原始图像数据。

可选地,所述目标图像处理顺序通过以下方式预先存储:

响应于所述用户触发的顺序选择菜单,展示多个预设图像处理顺序;

响应于所述用户的选择操作,从多个所述预设图像处理顺序中确定所述目标图像处理顺序,并存储所述目标图像处理顺序。

根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开第一方面所提供的拍照方法的步骤。

根据本公开实施例的第四方面,提供一种芯片,包括第一处理器和接口;所述第一处理器用于读取指令以实现本公开第一方面所述的方法。

根据本公开实施例的第五方面,提供一种终端,包括:

存储器,其上存储有计算机程序;

处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所提供的拍照方法的步骤。

本公开的实施例提供的技术方案可以包括以下有益效果:通过响应于用户通过所述终端的应用程序触发的拍照请求消息,通过所述应用程序获取所述终端拍摄的原始图像数据;通过所述应用程序将所述原始图像数据发送至所述终端的图像算法引擎;在所述图像算法引擎确定待处理图像数据集包括多个所述原始图像数据的情况下,获取预先存储的目标图像处理顺序;通过所述图像算法引擎,按照所述目标图像处理顺序,依次对所述待处理图像数据集中的每个所述原始图像数据进行图像处理,得到所述原始图像数据对应的目标图像数据,并将所述目标图像数据发送至所述应用程序;通过所述应用程序存储所述目标图像数据。也就是说,本公开可以根据预先设置的目标图像处理顺序对多个原始图像数据进行处理,这样,先处理的原始图像数据可以优先得到对应的目标图像数据,从而降低了用于查看照片时的等待时长,提高了用户体验。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是根据一示例性实施例示出的一种拍照流程示意图;

图2是根据一示例性实施例示出的一种拍照方法的流程图;

图3是根据一示例性实施例示出的另一种拍照方法的流程图;

图4是根据一示例性实施例示出的一种图像处理方法的流程图;

图5是根据一示例性实施例示出的一种拍照装置的框图;

图6是根据一示例性实施例示出的另一种拍照装置的框图;

图7是根据一示例性实施例示出的另一种拍照装置的框图;

图8是根据一示例性实施例示出的一种终端的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

需要说明的是,本申请中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。

首先,对本公开的应用场景进行说明。通常情况下,一次拍照流程可以包括点击拍照按钮、等待返回照片以及存储照片,用户通过拍照应用程序点击拍照按钮后,直到该拍照应用程序接收到图像数据,才能进行下一次拍照。由于拍照应用程序接收到的图像数据是原始图像数据,在接收到该原始图像数据后,需要将该原始图像数据发送至算法引擎,对该原始图像数据进行图像后处理,将处理后的目标图像数据保存至图库中,以便用户查看。图1是根据一示例性实施例示出的一种拍照流程示意图,如图1所示,1~7表示拍照过程中的7个步骤。第1步:用户可以通过该终端的拍照应用程序中的拍照按钮触发该拍照请求消息,该拍照应用程序可以将该拍照请求消息发送至该终端的框架层,第2步:该框架层可以将该拍照请求消息发送至该终端的硬件抽象层,该硬件抽象层可以根据该拍照请求消息获取原始图像数据,第3步:该硬件抽象层将该原始图像数据发送至该框架层,第4步:该框架层将接收到的原始图像数据发送至该应用程序,第5步:该应用程序将该原始图像数据发送至该图像算法引擎,该图像算法引擎对该原始图像数据进行处理,第6步:该图像算法引擎将处理后的目标图像数据发送至该应用程序,第7步:该应用程序将接收到的目标图像数据存储至图库。但是,图像算法引擎中的图像处理算法比较复杂,导致图像后处理的效率比较低,在用户连续点击多次拍照后,若先查看最后一次拍摄的照片,则可能会由于图像后处理未完成而无法查看,导致用户体验比较差。

为了克服以上相关技术中存在的技术问题,本公开提供了一种拍照方法、装置、存储介质、芯片及终端,可以根据预先设置的目标图像处理顺序对多个原始图像数据进行处理,这样,先处理的原始图像数据可以优先得到对应的目标图像数据,从而降低了用于查看照片时的等待时长,提高了用户体验。

下面结合示例性实施例对本公开进行说明。

图2是根据一示例性实施例示出的一种拍照方法的流程图,如图2所示,该方法应用于终端,可以包括:

S201、响应于用户通过终端的应用程序触发的拍照请求消息,通过该应用程序获取该终端拍摄的原始图像数据。

其中,该应用程序可以是拍照应用程序,也可以是其他包括拍照功能的应用程序,本公开对此不作限定。本公开实施例中以该应用程序为该拍照应用程序为例进行说明。

在本步骤中,用户可以通过该终端的拍照应用程序中的拍照按钮触发该拍照请求消息,该拍照应用程序可以将该拍照请求消息发送至该终端的框架层,该框架层可以将该拍照请求消息发送至该终端的硬件抽象层,该硬件抽象层可以根据该拍照请求消息获取原始图像数据,并将该原始图像数据发送至该拍照应用程序。

本公开实施例中,原始图像数据可以为图像传感器捕捉到的原始图像数据;示例地,原始图像数据可以为RAW图像数据。或者,本公开实施例中,原始图像数据可以为对图像传感器捕捉到的图像数据进行前处理之后的图像数据;示例地,原始图像数据可以为图像传感器捕捉到的图像数据经由图像信号处理(Image SignalProcessing,ISP)输出的图像数据。

S202、通过该应用程序将该原始图像数据发送至该终端的图像算法引擎。

本公开实施例中,图像算法引擎用于对原始图像数据进行图像后处理。

本公开实施例中,该图像算法引擎可以包括多个图像处理算法,多个图像处理算法用于对该原始图像数据进行图像后处理。示例地,图像处理算法可包括但不限于:黑电平矫正算法、坏点矫正算法、白平衡矫正算法、镜头阴影矫正算法、高动态范围(High-DynamicRange,HDR)图像处理算法、美颜算法、图像虚化处理算法等。

在本步骤中,在该应用程序接收到该硬件抽象层发送的该原始图像数据后,可以将该原始图像数据发送至该终端的图像算法引擎。

S203、在该图像算法引擎确定待处理图像数据集包括多个该原始图像数据的情况下,获取预先存储的目标图像处理顺序。

其中,该待处理图像数据集可以包括该图像算法引擎接收到的该应用程序发送的原始图像数据中还未处理的原始图像数据。该目标图像处理顺序可以包括顺序处理或者逆序处理,顺序处理表示先获取的原始图像数据先进行图像处理,后获取的原始图像数据后进行图像处理,示例地,若获取原始图像数据的顺序为原始图像数据A、原始图像数据B、原始图像数据C,则先对原始图像数据A进行图像处理,再对原始图像数据B进行图像处理,最后对原始图像数据C进行图像处理。逆序处理表示先获取的原始图像数据最后进行图像处理,最后获取的原始图像数据先进行图像处理,示例地,若获取原始图像数据的顺序为原始图像数据A、原始图像数据B、原始图像数据C,则先对原始图像数据C进行图像处理,再对原始图像数据B进行图像处理,最后对原始图像数据A进行图像处理。

在本步骤中,在该图像算法引擎确定待处理的原始图像数据包括多个的情况下,可以获取该目标图像处理顺序。

在一种可能的实现方式中,该目标图像处理顺序可以通过以下方式预先存储:响应于该用户触发的顺序选择菜单,展示多个预设图像处理顺序;响应于该用户的选择操作,从多个该预设图像处理顺序中确定该目标图像处理顺序,并存储该目标图像处理顺序。

用户可以通过该顺序选择菜单选择所需的图像处理顺序。该顺序选择菜单可以设置在拍照应用程序中,也可以设置在该终端的设置应用程序中,本公开对该顺序选择菜单的位置不作限定。用户可以点击该拍照应用程序中的顺序选择菜单,显示多个预设图像处理顺序,该预设图像处理顺序可以包括顺序处理、逆序处理等。用户可以点击其中一个预设图像处理顺序进行选择操作,将选择的该预设图像处理顺序作为该目标图像处理顺序,并存储该目标图像处理顺序。

另外,也可以针对部分拍照模式设置该顺序选择菜单,示例地,连拍模式拍摄到的图像为多个类似的图像,可以针对连拍模式设置该顺序选择菜单,在用户选择连拍模式后,可以显示该顺序选择菜单,用户点击该顺序选择菜单后,展示多个预设图像处理顺序,用户可以选择其中的逆序处理作为该目标图像处理顺序。

需要说明的是,针对不同的拍照模式,可以设置初始图像处理顺序,例如,针对单次拍照模式,该初始图像处理顺序可以设置为顺序处理,针对连拍模式,该初始图像处理顺序可以设置为逆序处理。若用户未通过顺序选择菜单选择目标图像处理顺序,则可以该初始图像处理顺序作为该目标图像处理顺序。

S204、通过该图像算法引擎,按照该目标图像处理顺序,依次对该待处理图像数据集中的每个该原始图像数据进行图像处理,得到该原始图像数据对应的目标图像数据,并将该目标图像数据发送至该应用程序。

在本步骤中,在该图像算法引擎接收到该应用程序发送的该原始图像数据后,可以对该原始图像数据进行图像处理,得到该原始图像数据对应的目标图像数据。该图像算法引擎可以包括多个图像处理算法,该原始图像数据可能需要多个图像处理算法进行处理,图像处理的效率比较低,在当前原始图像数据还未处理完的情况下,可能会接收到下一个原始图像数据。在这种情况下,该图像算法引擎完成一次图像处理后,需要从待处理的多个原始图像数据中选择一个原始图像数据进行处理。本公开可以按照该目标图像处理顺序,从待处理图像数据集中选择一个原始图像数据进行图像处理,得到该原始图像数据对应的目标图像数据,并将该目标图像数据发送至该应用程序。该图像算法引擎每处理完一个原始图像数据,可以从该待处理图像数据集中删除该原始图像数据,得到新的待处理图像数据集,之后,按照该目标图像处理顺序,从新的待处理图像数据集中选择一个原始图像数据进行处理,直至处理完该待处理图像数据集中的所有原始图像数据。

S205、通过该应用程序存储该目标图像数据。

在本步骤中,在该应用程序接收到该图像算法引擎发送的目标图像数据后,可以将该目标图像数据存储至图库中,以便用户在图库中查看该目标图像数据。

示例地,以连拍模式为例对上述步骤S201~步骤S205进行举例说明,若用户期望最后拍摄的图像优先被处理,则可以通过顺序选择菜单选择逆序处理,在用户点击连拍按钮后,可以连续获取多个原始图像数据(例如,原始图像数据1、原始图像数据2、原始图像数据3、……、原始图像数据9、原始图像数据10),在每次获取到原始图像数据后,可以将该原始图像数据发送至该图像算法引擎。该图像算法引擎在确定图像处理顺序为逆序处理后,可以先对接收到的原始图像数据10进行图像处理,得到该原始图像数据10对应的目标图像数据10,并将该目标图像数据10发送至应用程序,通过应用程序存储该目标图像数据10。之后,再对原始图像数据9进行图像处理,得到该原始图像数据9对应的目标图像数据9,并将该目标图像数据9发送至应用程序,通过应用程序存储该目标图像数据9,以此类推,最后对该原始图像数据1进行图像处理,得到该原始图像数据1对应的目标图像数据1,并将该目标图像数据1发送至应用程序,通过应用程序存储该目标图像数据1。

采用上述方法,可以根据预先设置的目标图像处理顺序对多个原始图像数据进行处理,这样,先处理的原始图像数据可以优先得到对应的目标图像数据,从而降低了用于查看照片时的等待时长,提高了用户体验。

图3是根据一示例性实施例示出的另一种拍照方法的流程图,如图3所示,该方法还可以包括:

S206、通过该图像算法引擎,确定该待处理图像数据集中每个该原始图像数据对应的优先级。

相应的,步骤S204可以为:

通过该图像算法引擎,根据该目标图像处理顺序和该待处理图像数据集中每个该原始图像数据对应的优先级,依次对该待处理图像数据集中每个该原始图像数据进行图像处理,得到该原始图像数据对应的目标图像数据,并将该目标图像数据发送至该应用程序。

示例地,该优先级可以包括顺序优先级和逆序优先级,该图像算法引擎在接收到该应用程序发送的原始图像数据后,可以确定接收到该原始图像数据的序号,例如,序号越小表示优先级越低。若该优先级为顺序优先级,当前原始图像数据为第5个接收到的原始图像数据,则可以确定该当前原始图像数据对应的顺序优先级为-5级,该当前原始图像数据对应的逆序优先级为5级。需要说明的是,上述对优先级的定义只是举例说明,也可以通过其他序号表示不同的优先级,本公开对此不作限定。

在一种可能的实现方式中,可以通过该图像算法引擎,循环执行图像处理步骤,直至该待处理图像数据集中每个该原始图像数据均执行该图像处理步骤。图4是根据一示例性实施例示出的一种图像处理方法的流程图,如图4所示,该图像处理步骤可以包括:

S41、根据该目标图像处理顺序和该待处理图像数据集中每个该原始图像数据对应的优先级,从该待处理图像数据集中确定待处理原始图像数据。

该图像算法引擎在从待处理图像数据集中选择待处理原始图像数据时,可以根据该目标图像处理顺序和该待处理图像数据集中每个原始图像数据的优先级,确定该待处理原始图像数据。在该目标图像处理顺序为顺序处理的情况下,根据该待处理图像数据集中每个该原始图像数据对应的顺序优先级,从该待处理图像数据集中确定该待处理原始图像数据;在该目标图像处理顺序为逆序处理的情况下,根据该待处理图像数据集中每个该原始图像数据对应的逆序优先级,从该待处理图像数据集中确定该待处理原始图像数据。

示例地,若该待处理图像数据集中包括原始图像数据A、原始图像数据B以及原始图像数据C,该原始图像数据A对应的顺序优先级为-2,该原始图像数据A对应的逆序优先级为2,该原始图像数据B对应的顺序优先级为-3,该原始图像数据B对应的逆序优先级为3,该原始图像数据C对应的顺序优先级为-4,该原始图像数据C对应的逆序优先级为4,该图像算法引擎正在对原始图像数据D进行图像处理,在对该原始图像数据D处理完成后,可以按照该目标图像处理顺序,根据该待处理图像数据集中每个该原始图像数据对应的优先级,确定该待处理原始图像数据。示例地,若该目标图像处理顺序为顺序处理,则可以从该待处理图像数据集的多个该原始图像数据中,确定顺序优先级最大的目标原始图像数据,并将该目标原始图像数据作为该待处理原始图像数据。以上述原始图像数据对应的优先级为例,可以确定该原始图像数据A为该待处理原始图像数据。若该目标图像处理顺序为逆序处理,则可以从该待处理图像数据集的多个该原始图像数据中,确定逆序优先级最大的目标原始图像数据,并将该目标原始图像数据作为该待处理原始图像数据。以上述原始图像数据对应的优先级为例,可以确定该原始图像数据C为该待处理原始图像数据。

S42、对该待处理原始图像数据进行图像处理,得到该待处理原始图像数据对应的目标图像数据。

S43、将该待处理图像数据集中除该待处理原始图像数据之外的原始图像数据作为新的待处理图像数据集。

在对该待处理原始图像数据进行图像处理,得到该待处理原始图像数据对应的目标图像数据后,可以将该目标图像数据发送至该应用程序。从该待处理图像数据集中删除已处理的该原始图像数据,得到新的待处理图像数据集。继续以步骤S31的待处理图像数据集进行说明,若该目标图像处理顺序为逆序处理,则在完成对该原始图像数据C的图像处理后,将该原始图像数据C从该待处理图像数据集中删除,得到的新的待处理图像数据集包括该原始图像数据A和该原始图像数据B。

考虑到该图像算法引擎在进行图像处理过程中,用户可能会更改该目标图像处理顺序,在一种可能的实现方式中,在该图像算法引擎在进行图像处理过程中,响应于该用户触发的顺序变更请求,更新该目标图像处理顺序。示例地,若用户点击连续拍照后,在拍照应用程序中修改了该目标图像处理顺序,则可以更新该目标图像处理顺序。在该图像算法引擎处理完当前原始图像数据后,按照更新后的目标图像处理顺序再选择下一个原始图像数据进行处理。这样,用于可以随时切换该目标图像处理顺序,进一步提高了用户体验。

该图像算法引擎包括多个图像处理算法,针对每个该图像处理算法,通过该图像处理算法依次对算法图像数据集中的每个该原始图像数据进行图像处理,该算法图像数据集包括等待被该图像处理算法处理的原始图像数据。

示例地,该图像算法引擎可以根据该原始图像数据对应的图像参数,确定该原始图像数据对应的至少一个目标图像处理算法,即该原始图像数据需要至少一个目标图像处理算法进行图像处理。该图像算法引擎在接收到该原始图像数据后,可以将该原始图像数据添加至需要第一个处理的图像处理算法对应的算法图像数据集中。

例如,该图像算法引擎可以包括图像处理算法1、图像处理算法2、图像处理算法3,该图像算法引擎在接收到该原始图像数据A后,若确定该原始图像数据A需要通过该图像处理算法1、该图像处理算法2以及该图像处理算法3进行图像处理,则可以将该原始图像数据A添加至该图像处理算法1对应的算法图像数据集。该图像算法引擎在接收到该原始图像数据B后,若确定该原始图像数据B需要通过该图像处理算法1和该图像处理算法3进行图像处理,则可以将该原始图像数据B添加至该图像处理算法1对应的算法图像数据集。该图像算法引擎在接收到该原始图像数据C后,若确定该原始图像数据C需要通过该图像处理算法1、该图像处理算法2以及该图像处理算法3进行图像处理,则可以将该原始图像数据C添加至该图像处理算法1对应的算法图像数据集。

该算法图像数据集可以包括顺序处理队列和逆序处理队列,该原始图像数据可以添加至该顺序处理队列和该逆序处理队列,示例地,在将该原始图像数据B添加至该图像处理算法1对应的算法图像数据集时,可以根据该原始图像数据B对应的顺序优先级,将该原始图像数据B添加至该图像处理算法1的顺序处理队列,根据该原始图像数据B对应的逆序优先级,将该原始图像数据B添加至该图像处理算法1的逆序处理队列。以步骤S31中的待处理图像数据集为例,该图像处理算法1对应的顺序处理队列可以包括该原始图像数据A、该原始图像数据B、该原始图像数据C,该图像处理算法1对应的逆序处理队列可以包括该原始图像数据C、该原始图像数据B、该原始图像数据A;该图像处理算法2对应的顺序处理队列可以包括该原始图像数据A、该原始图像数据B、该原始图像数据C,该图像处理算法2对应的逆序处理队列可以包括该原始图像数据C、该原始图像数据B、该原始图像数据A;该图像处理算法3对应的顺序处理队列可以包括该原始图像数据A、该原始图像数据B,该图像处理算法3对应的逆序处理队列可以包括该原始图像数据B、该原始图像数据A。

以该目标图像处理顺序为逆序处理为例进行说明,该图像处理算法1在处理完当前的原始图像数据后,可以从该图像处理算法1对应的逆序处理队列中获取第一个原始图像数据(原始图像数据C),并将该原始图像数据C作为该待处理原始图像数据。

在该图像处理算法1对该原始图像数据C进行图像处理后,可以从该图像处理算法1对应的逆序处理队列中获取第一个原始图像数据(原始图像数据B),并将该原始图像数据B作为该待处理原始图像数据。

在该图像处理算法1对该原始图像数据B进行图像处理后,可以从该图像处理算法1对应的逆序处理队列中获取第一个原始图像数据(原始图像数据A),并将该原始图像数据A作为该待处理原始图像数据。

另外,通过该图像数据算法1对该原始图像数据C进行图像处理后,可以将该原始图像数据C添加至该图像处理算法2对应的顺序处理队列和逆序处理队列中,通过该图像数据算法1对该原始图像数据B进行图像处理后,可以将该原始图像数据B添加至该图像处理算法3对应的顺序处理队列和逆序处理队列中,通过该图像数据算法1对该原始图像数据A进行图像处理后,可以将该原始图像数据A添加至该图像处理算法2对应的顺序处理队列和逆序处理队列中。

在该图像数据算法2对该原始图像数据C进行图像处理后,可以将该原始图像数据C添加至该图像处理算法3对应的顺序处理队列和逆序处理队列中,通过该图像数据算法2对该原始图像数据A进行图像处理后,可以将该原始图像数据A添加至该图像处理算法3对应的顺序处理队列和逆序处理队列中。

需要说明的是,由于该原始图像数据B不需要通过图像数据算法2进行图像处理,因此,该原始图像数据B可以优先于该原始图像数据C和该原始图像数据B优先被该图像数据算法3处理,这样,最终输出目标图像数据的顺序是该原始图像数据B对应的目标图像数据、该原始图像数据C对应的目标图像数据、该原始图像数据A对应的目标图像数据。在这种情况下,虽然用户选择的目标图像处理顺序是逆序处理,但是,最终输出的处理后图像的顺序并不完全是逆序(非绝对逆序),这样,图像处理算法可以灵活对该原始图像数据进行处理,提高了图像处理的效率。

上述示例以该目标图像处理顺序为逆序处理为例进行说明,该目标图像数据为顺序处理的方式与逆序处理类似,此处不再赘述。

图5是根据一示例性实施例示出的一种拍照装置的框图,如图5所示,该装置应用于终端,可以包括:

第一获取模块501,被配置为响应于用户通过该终端的应用程序触发的拍照请求消息,通过该应用程序获取该终端拍摄的原始图像数据;

发送模块502,被配置为通过该应用程序将该原始图像数据发送至该终端的图像算法引擎;

第二获取模块503,被配置为在该图像算法引擎确定待处理图像数据集包括多个该原始图像数据的情况下,获取预先存储的目标图像处理顺序;

图像处理模块504,被配置为通过该图像算法引擎,按照该目标图像处理顺序,依次对该待处理图像数据集中的每个该原始图像数据进行图像处理,得到该原始图像数据对应的目标图像数据,并将该目标图像数据发送至该应用程序;

存储模块505,被配置为通过该应用程序存储该目标图像数据。

可选地,图6是根据一示例性实施例示出的另一种拍照装置的框图,如图6所示,该装置还包括:

确定模块506,被配置为通过该图像算法引擎,确定该待处理图像数据集中每个该原始图像数据对应的优先级;

该图像处理模块504,还被配置为:

通过该图像算法引擎,根据该目标图像处理顺序和该待处理图像数据集中每个该原始图像数据对应的优先级,依次对该待处理图像数据集中每个该原始图像数据进行图像处理,得到该原始图像数据对应的目标图像数据。

可选地,该图像处理模块504,还被配置为:

通过该图像算法引擎,循环执行图像处理步骤,直至该待处理图像数据集中每个该原始图像数据均执行该图像处理步骤;

该图像处理步骤包括:

根据该目标图像处理顺序和该待处理图像数据集中每个该原始图像数据对应的优先级,从该待处理图像数据集中确定待处理原始图像数据;

对该待处理原始图像数据进行图像处理,得到该待处理原始图像数据对应的目标图像数据;

将该待处理图像数据集中除该待处理原始图像数据之外的原始图像数据作为新的待处理图像数据集。

可选地,该优先级包括顺序优先级和逆序优先级;该图像处理模块504,还被配置为:

在该目标图像处理顺序为顺序处理的情况下,根据该待处理图像数据集中每个该原始图像数据对应的顺序优先级,从该待处理图像数据集中确定该待处理原始图像数据;

在该目标图像处理顺序为逆序处理的情况下,根据该待处理图像数据集中每个该原始图像数据对应的逆序优先级,从该待处理图像数据集中确定该待处理原始图像数据。

可选地,可选地,图7是根据一示例性实施例示出的另一种拍照装置的框图,如图7所示,该装置还包括:

更新模块507,被配置为在对该待处理原始图像数据进行图像处理过程中,响应于该用户触发的顺序变更请求,更新该目标图像处理顺序。

可选地,该图像算法引擎包括多个图像处理算法;该图像处理模块504,还被配置为:

针对每个该图像处理算法,通过该图像处理算法依次对算法图像数据集中的每个该原始图像数据进行图像处理,该算法图像数据集包括等待被该图像处理算法处理的原始图像数据。

可选地,该目标图像处理顺序通过以下方式预先存储:

响应于该用户触发的顺序选择菜单,展示多个预设图像处理顺序;

响应于该用户的选择操作,从多个该预设图像处理顺序中确定该目标图像处理顺序,并存储该目标图像处理顺序。

通过上述装置,可以根据预先设置的目标图像处理顺序对多个原始图像数据进行处理,这样,先处理的原始图像数据可以优先得到对应的目标图像数据,从而降低了用于查看照片时的等待时长,提高了用户体验。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本公开还提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开提供的拍照方法的步骤。

上述装置除了可以是独立的电子设备外,也可是独立电子设备的一部分,例如在一种实施例中,该装置可以是集成电路(Integrated Circuit,IC)或芯片,其中该集成电路可以是一个IC,也可以是多个IC的集合;该芯片可以包括但不限于以下种类:GPU(GraphicsProcessing Unit,图形处理器)、CPU(Central Processing Unit,中央处理器)、FPGA(Field Programmable Gate Array,可编程逻辑阵列)、DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、SOC(System on Chip,SoC,片上系统或系统级芯片)等。上述的集成电路或芯片中可以用于执行可执行指令(或代码),以实现上述的拍照方法。其中该可执行指令可以存储在该集成电路或芯片中,也可以从其他的装置或设备获取,例如该集成电路或芯片中包括第一处理器、存储器,以及用于与其他的装置通信的接口。该可执行指令可以存储于该存储器中,当该可执行指令被第一处理器执行时实现上述的拍照方法;或者,该集成电路或芯片可以通过该接口接收可执行指令并传输给该第一处理器执行,以实现上述的拍照方法。

图8是根据一示例性实施例示出的一种终端800的框图。例如,终端800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

参照图8,终端800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出接口812,传感器组件814,以及通信组件816。

处理组件802通常控制终端800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个第二处理器820来执行指令,以完成上述的拍照方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。

存储器804被配置为存储各种类型的数据以支持在终端800的操作。这些数据的示例包括用于在终端800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。

电源组件806为终端800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为终端800生成、管理和分配电力相关联的组件。

多媒体组件808包括在所述终端800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当终端800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当终端800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。

输入/输出接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件814包括一个或多个传感器,用于为终端800提供各个方面的状态评估。例如,传感器组件814可以检测到终端800的打开/关闭状态,组件的相对定位,例如所述组件为终端800的显示器和小键盘,传感器组件814还可以检测终端800或终端800一个组件的位置改变,用户与终端800接触的存在或不存在,终端800方位或加速/减速和终端800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件816被配置为便于终端800和其他设备之间有线或无线方式的通信。终端800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。

在示例性实施例中,终端800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述拍照方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由终端800的第二处理器820执行以完成上述拍照方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的拍照方法的代码部分。

本领域技术人员在考虑说明书及实践本公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

技术分类

06120116586871