CN113630557A - 图像处理方法、装置、设备、存储介质及计算机程序产品 - Google Patents
图像处理方法、装置、设备、存储介质及计算机程序产品 Download PDFInfo
- Publication number
- CN113630557A CN113630557A CN202111177045.2A CN202111177045A CN113630557A CN 113630557 A CN113630557 A CN 113630557A CN 202111177045 A CN202111177045 A CN 202111177045A CN 113630557 A CN113630557 A CN 113630557A
- Authority
- CN
- China
- Prior art keywords
- filter
- special effect
- combined
- information
- chain
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 26
- 238000004590 computer program Methods 0.000 title claims description 29
- 230000000694 effects Effects 0.000 claims abstract description 194
- 238000000034 method Methods 0.000 claims abstract description 20
- 238000009877 rendering Methods 0.000 claims description 61
- 239000000463 material Substances 0.000 claims description 36
- 238000007781 pre-processing Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 6
- 239000012634 fragment Substances 0.000 description 4
- 208000025174 PANDAS Diseases 0.000 description 3
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 description 3
- 235000016496 Panda oleosa Nutrition 0.000 description 3
- 235000017166 Bambusa arundinacea Nutrition 0.000 description 2
- 235000017491 Bambusa tulda Nutrition 0.000 description 2
- 241001330002 Bambuseae Species 0.000 description 2
- 240000004718 Panda Species 0.000 description 2
- 235000015334 Phyllostachys viridis Nutrition 0.000 description 2
- 239000011425 bamboo Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 240000000220 Panda oleosa Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003796 beauty Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000002087 whitening effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/63—Control of cameras or camera modules by using electronic viewfinders
- H04N23/631—Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration by the use of local operators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/63—Control of cameras or camera modules by using electronic viewfinders
- H04N23/631—Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
- H04N23/632—Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters for displaying or modifying preview images prior to image capturing, e.g. variety of image resolutions or capturing parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/62—Control of parameters via user interfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/2621—Cameras specially adapted for the electronic generation of special effects during image pickup, e.g. digital cameras, camcorders, video cameras having integrated special effects capability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
Abstract
本申请实施例公开了一种图像处理方法、装置、设备、存储介质及计算机产品,本申请实施例可应用于云技术、人工智能、智慧交通、辅助驾驶等各种应用场景。其中方法包括:获取预览图像以及被选中的滤镜标识;若滤镜标识所指示的滤镜类型是组合滤镜,则获取滤镜标识对应的目标特效滤镜链的配置信息,目标特效滤镜链包括N个滤镜元素,N个滤镜元素是按照有向无环图的连接方式进行连接的;目标特效滤镜链的配置信息中包括N个滤镜元素中M个滤镜元素的组合信息,组合信息是基于有向无环图的连接方式确定的;按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,并在预览图像上显示组合滤镜。采用本申请实施例可丰富滤镜特效。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种图像处理方法、装置、设备、存储介质及计算机程序产品。
背景技术
滤镜主要是用来实现图像的各种特殊效果,随着信息时代的快速发展,越来越多的摄像类应用程序比如短视频应用程序、各种特效相机,会开发各种滤镜功能来吸引更多用户的关注。比如开发一些搞怪滤镜、电视电影人物仿妆滤镜等等。但是这类滤镜的特效是单一的,用户在长时间使用后会失去兴趣,从而降低了用户对该类应用程序的关注度。
目前通常是通过更新摄像类应用程序的代码,来更新应用程序的版本,新版本的应用程序中具有一些新的滤镜,而更新应用程序的版本需要将新的应用程序版本提交到各个应用程序商店中以便用户手动或自动更新,至此用户才可以体验到不一样的滤镜。这种方法不仅造成了应用程序开发的不方便,也造成了用户体验上的不方便。因此,在图像处理领域中,如何便捷地丰富图像滤镜成为当今研究的热点问题之一。
发明内容
本申请实施例提供了一种图像处理方法、装置、设备、存储介质及计算机程序产品,可以提供丰富的滤镜特效。
一方面,本申请实施例提供了一种图像处理方法,包括:
获取预览图像以及被选中的滤镜标识;
若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;
按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜,并在所述预览图像上显示所述组合滤镜。
一方面,本申请实施例提供了一种图像处理装置,包括:
获取单元,用于获取预览图像以及被选中的滤镜标识;
所述获取单元,还用于若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;
处理单元,用于按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜;
显示单元,用于在所述预览图像上显示所述组合滤镜。
一方面,本申请实施例提供了一种图像处理设备,包括:处理器,适用于实现一条或多条计算机程序;以及计算机存储介质,计算机存储介质存储有一条或多条计算机程序,一条或多条计算机程序适于由处理器加载并执行:
获取预览图像以及被选中的滤镜标识;若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜,并在所述预览图像上显示所述组合滤镜。
一方面,本申请实施例提供了一种计算机存储介质,计算机存储介质存储有计算机程序,该计算机程序被处理器执行时,用于执行:
获取预览图像以及被选中的滤镜标识;若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜,并在所述预览图像上显示所述组合滤镜。
一方面,本申请实施例提供了一种计算机程序产品或计算机程序,计算机程序产品包括计算机程序,该计算机程序存储在计算机存储介质中;图像处理设备的处理器从计算机存储介质中读取该计算机程序,处理器执行该计算机程序,使得图像处理设备执行:
获取预览图像以及被选中的滤镜标识;若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜,并在所述预览图像上显示所述组合滤镜。
本申请实施例中,获取预览图像以及被选中的滤镜标识,如果该滤镜标识所指示的滤镜类型是组合滤镜,则获取该滤镜标识对应的目标特效滤镜链的配置信息,在该目标特效滤镜链中包括N个滤镜元素,这N个滤镜元素是按照有向无环图的方式进行连接的,每个滤镜元素可以是一个单独的滤镜,也可以是一个特效滤镜链;目标特效滤镜链的配置信息中可以包括M个滤镜元素的组合信息,该组合信息是基于N个滤镜元素的有向无环图的连接方式确定的;进一步的,按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,并将该组合滤镜显示在预览图像上。应当理解的,M个滤镜元素的组合信息是基于有向无环图的连接方式确定的,有向无环图的连接方式中既包括链式结构也包括图式结构,如此基于有向无环图的连接方式可以生成多种组合信息,使得组合更加方便快捷。本申请实施例中按照组合信息将M个滤镜进行组合,实现了在不更新应用程序的前提下,得到更加丰富的滤镜特效。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图像处理系统的结构示意图;
图2是本申请实施例提供的一种数据处理方法的流程示意图;
图3a是本申请实施例提供的一种摄像类应用程序的用户界面的示意图;
图3b是本申请实施例提供的一种进入拍摄界面的示意图;
图3c是本申请实施例提供的一种选择滤镜标识的示意图;
图3d是本申请实施例提供的另一种选择滤镜标识的示意图;
图4a是本申请实施例提供的一种目标特效滤镜链的示意图;
图4b是本申请实施例提供的另一种目标特效滤镜链的示意图;
图4c是本申请实施例提供的又一种目标特效滤镜链的示意图;
图4d是本申请实施例提供的再一种目标特效滤镜链的示意图;
图5是本申请实施例提供的一种在预览图像上显示组合滤镜的示意图;
图6是本申请实施例提供的另一种图像处理方法的流程示意图;
图7是本申请实施例提供的又一种图像处理方法的流程示意图;
图8是本申请实施例提供的一种图像处理装置的结构示意图;
图9是本申请实施例提供的一种图像处理设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例提供了一种图像处理方案,可以便捷地实现丰富的滤镜。具体实现中,如果用户选中的滤镜标识所指示的滤镜类型是组合滤镜,则获取该滤镜标识对应的目标特效滤镜链的配置信息,该配置信息中包括目标特效滤镜链中M个滤镜元素的组合信息,M个滤镜元素的组合信息是基于N个滤镜元素的有向无环图的连接方式确定的,进一步的,按照配置信息中的组合信息将M个滤镜元素进行组合得到组合滤镜,并在预览图像上显示得到的组合滤镜。应当理解的,基于有向无环图的连接方式确定的组合信息可以是多样的,基于该组合信息对M个滤镜元素进行组合就可以得到多种组合滤镜,与现有技术中只能在预览图像上显示单一滤镜相比,本申请实施例丰富了滤镜种类;另外,本申请中M个滤镜元素的组合信息可以是自定义设置的,用于实现一些自定义的滤镜效果,实现应用程序中目前木有的滤镜效果。并且,本申请实施例无需用户更新应用程序便可以享受丰富的滤镜,方便用户体检,操作便捷。本申请实施例可以应用于各种应用场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
基于上述图像处理方案,本申请实施例提供了一种图像处理系统,参见图1,为本申请实施例提供的一种图像处理系统的结构示意图。在图1所示的图像处理系统中包括用户终端101和服务器102,用户终端101和服务器102可以通过有线或者无线的方式进行连接,用户终端101可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端、智能家电、智能语音交互设备等,但并不局限于此。服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。
用户终端101中可运行摄像类应用程序,比如各类短视频应用程序、各类相机应用程序,服务器102可以为摄像类应用程序的运行提供支持。摄像类应用程序中可集成有渲染引擎,本申请实施例中摄像类应用程序中集成的渲染引擎可以是跨平台的渲染引擎,所谓跨平台的渲染引擎是指该渲染引擎可以根据所应用的平台或者系统的不同,调用不同的渲染逻辑或者渲染接口进行渲染,例如对于安卓系统的用户终端来说,在应用该跨平台的渲染引擎进行渲染时,可以调用该渲染引擎中安卓系统对应的渲染逻辑进行渲染;对于ios系统的用户终端来说,可以调用该渲染引擎中ios系统对应的渲染逻辑进行渲染。采用跨平台的渲染引擎进行滤镜渲染,与图形应用程序以及运行平台无关,且可以打造个性引擎框架风格的渲染库,实现一套代码同时在不同用户终端中使用,如此也就实现了一个滤镜可以被使用不同用户终端的用户体验到。
摄像类应用程序可以支持多种滤镜,每种滤镜对应一个滤镜标识,在摄像类应用程序中显示多个滤镜标识,以便于用户通过选中滤镜标识在预览图像上添加滤镜。在本申请实施例中,多种滤镜的滤镜类型可以包括单一滤镜和组合滤镜,单一滤镜是对一个单独的滤镜进行渲染实现的,组合滤镜是对一个特效滤镜链中多个滤镜进行组合得到的。
具体实现中,用户在用户终端101中启动摄像类应用程序,用户在摄像类应用程序中选中一个滤镜标识,用户终端101获取用户选中的滤镜标识以及获取摄像类应用程序中的预览图像;进一步的,如果用户终端101确定滤镜标识所指示的滤镜类型是组合滤镜,则从服务器102获取滤镜标识对应的目标特效滤镜链的配置信息,目标特效滤镜链中包括N个滤镜元素,每个滤镜元素可以是一个单独的滤镜,也可以是一个特效滤镜链。目标特效滤镜链中的N个滤镜元素是按照有向无环图的连接方式进行连接的,目标特效链的配置信息中可以包括M个滤镜元素的组合信息,该组合信息是基于有向无环图的连接方式确定的;最后用户终端101按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,将组合滤镜显示在预览图像上。
在上述图像处理流程中,与现有技术中只能在预览图像上显示单一滤镜相比,本申请实施例丰富了滤镜种类;并且,本申请实施例无需用户更新应用程序便可以享受丰富的滤镜,方便用户体检,操作便捷。
基于上述的图像处理系统,本申请实施例提供了一种图像处理方法,参见图2,为本申请实施例提供的一种图像处理方法的流程示意图。图2所示的图像处理方法可由图像处理设备执行,具体可由图像处理设备的处理器执行,图像处理设备可以指图1所示的图像处理系统中的用户终端101。图2所示的图像处理方法可包括如下步骤:
步骤S201、获取预览图像以及被选中的滤镜标识。
其中,预览图像可以是指一段视频中的任意一帧图像,该视频可以是用户在历史时间拍摄的任一视频中。或者,由前述可知,假设图像处理设备中运行有短视频应用程序,上述视频也可以是调用短视频应用程序进行实时拍摄得到的。举例来说,参见图3a,为本申请实施例提供的一种摄像类应用程序的用户界面的示意图,假设摄像类应用程序为短视频应用程序,用户打开图像处理设备中的短视频应用程序,图像处理设备显示短视频应用程序的用户界面如图3a中301所示,用户界面301中包括拍摄选项302,用户选中拍摄选项302触发显示拍摄界面如图3b中303所示。拍摄界面303包括开始拍摄选项304,通过触发拍摄选项304可以拍摄得到一段视频,预览图像可以是指该段视频中的任意一帧图像,比如305是拍摄得到视频中的一帧图像,305可以作为预览图像。
可选的,滤镜标识可以是用户在拍摄界面303中选择的,比如拍摄界面303中包括显示全部滤镜的触发选项,表示为“全部魔法”,点击该触发选项后可以按照滤镜效果显示多个滤镜标识如图3c所示,滤镜效果可以包括热门、最新、美妆、唯美、可爱等等。将这些滤镜标识中被用户触发的滤镜标识确定为被选中的滤镜标识;再如,拍摄界面303中可以显示几个比较热门的滤镜的滤镜标识,比如在拍摄选项304后面显示的滤镜标识1和滤镜标识2,用户可以划动各个滤镜标识,当一个滤镜标识被划动到开始拍摄选项304中时,则将该滤镜标识确定为被选中的滤镜标识。例如,用户将滤镜标识1划动到开始拍摄选项304中如图3d所示,则将滤镜标识1确定为被选中的滤镜标识。
步骤S202、若滤镜标识所指示的滤镜类型是组合滤镜,则获取滤镜标识对应的目标特效滤镜链的配置信息,目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息。
由前述可知,滤镜类型可以包括单一滤镜和组合滤镜两种,所谓单一滤镜是指一个滤镜提供一种滤镜特效,比如在人脸上添加一个贴纸的滤镜属于单一滤镜,在人脸上添加特定妆效也属于单一滤镜;所谓组合滤镜是指将多个滤镜元素组合在一起提供一种或多种滤镜效果的滤镜,比如将大熊猫特效和添加贴纸特效作用组合在一起,得到一个组合滤镜。对于任意一个组合滤镜来说,组成组合滤镜的多个滤镜元素组成一个特效滤镜链,在该特效滤镜链中多个滤镜元素之间相连接,每个滤镜元素可以指一个单一滤镜,或者每个滤镜元素可以是一个特效滤镜链。
本申请中预先设置了滤镜、滤镜标识和滤镜类型之间的对应关系,根据一个滤镜的滤镜标识便可以查找到该滤镜,以及确定该滤镜的滤镜类型。当图像处理设备根据滤镜标识确定该滤镜标识所指示的滤镜类型是组合滤镜时,图像处理设备获取该滤镜标识对应的目标特效滤镜链的配置信息。目标特效滤镜链是多个特效滤镜链中与滤镜标识对应的特效滤镜链,假设目标特效滤镜链中包括N个滤镜元素,这N个滤镜元素按照有向无环图的连接方式进行连接。N个滤镜元素按照有向无环图的连接方式进行连接组成的目标特效滤镜链中既包括链式结构,也可以包括图式结构。
可选的,N个滤镜元素中每个滤镜元素可以是一个单一滤镜。例如,参见图4a为本申请实施例提供的一种目标特效滤镜链的示意图,在图4a中假设N的取值为5,目标特效滤镜链包括的5个滤镜元素均为单一滤镜,分别表示为滤镜1、滤镜2、滤镜3、滤镜4以及滤镜5,在目标特效滤镜链中5个滤镜元素按照有向无环图的连接方式进行连接。在这个有向无环图中滤镜1-滤镜3-滤镜4-滤镜5组成一个链式结构,滤镜1-滤镜2滤镜5,以及滤镜1-滤镜3-滤镜4-滤镜5组成了一个图式结构。各个滤镜元素之间的连接可以是单向的,也可以是双向的,在图4a中示出单向连接,比如滤镜1和滤镜2连接,滤镜2与滤镜5连接,滤镜1和滤镜3连接,滤镜3和滤镜4连接,滤镜4和滤镜5连接。如果各个滤镜元素之间是双向连接,那么滤镜2还可以反向与滤镜1连接,对于其他连接同理,在此不一一罗列,具体可参见图4b所示。
可选的,N个滤镜元素每个滤镜元素还可以是一个特效滤镜链。例如,参见图4c,为本申请实施例提供的又一种目标特效滤镜链的示意图,在图4c中假设N的取值为3,各个滤镜元素之间是单向连接的,这3个滤镜元素中可以包括两个单一滤镜和一个特效滤镜链,两个单一滤镜可以表示为滤镜1和滤镜7,特效滤镜链可以表示为特效滤镜链1,特效滤镜链1中可以包括5个滤镜元素,假设这5个滤镜元素均是单一滤镜,分别表示为滤镜2、滤镜3、滤镜4、滤镜5和滤镜6,特效滤镜链1中的5个滤镜元素是按照有向无环图的连接方式进行连接的。滤镜1、滤镜7和特效滤镜链1也是按照有向无环图的连接方式进行连接的。参见图4d,为本申请实施例提供的又一种目标特效滤镜链的示意图,在图4d所示的目标特效滤镜链中各个滤镜元素与图4c相同,但是不同的是,在图4c中各个滤镜元素之间是单向连接的,在图4d中各个滤镜元素之间是双向连接的。
目标特效滤镜链的配置信息可以包括N个滤镜元素中M个滤镜元素的组合信息,M个滤镜元素的组合信息中规定了M个滤镜元素之间的组合方式,M个滤镜元素的组合信息是基于有向无环图的连接方式确定的。M是小于或等于N的整数,换句话说,目标特效滤镜链的配置信息中规定了哪些滤镜元素可以组合,以及这些滤镜元素的组合方式是什么样的。例如,假设N个滤镜元素的连接如图4a所示,M个滤镜元素可以包括滤镜1、滤镜3、滤镜4以及滤镜5,M个滤镜元素的组合信息中规定的组合方式可以是滤镜1-滤镜3-滤镜4-滤镜5,M个滤镜元素可以是滤镜1、滤镜2以及滤镜5,M个滤镜元素的组合信息中规定的组合方式可以是滤镜1-滤镜2-滤镜5;再如,假设N个滤镜元素的连接方式如图4b所示,M个滤镜元素包括滤镜1、滤镜2以及滤镜5,M个滤镜元素的组合信息中规定的组合方式可以是滤镜5-滤镜2-滤镜1;又如,N个滤镜元素的连接方式如图4c所示,M个滤镜元素包括滤镜1、特效滤镜链1以及滤镜元素7,也就是说此时M等于N,M个滤镜元素的组合信息中规定的组合方式可以为滤镜1-特效滤镜链1-滤镜7。上述只是列举了一部分可能的组合方式,在实际应用中可以得到更多的组合方式,在此不一一罗列。可见,本申请这种有向无环图的连接方式下,不同滤镜元素之间相互组合得到多种不同的组合滤镜,或者相同滤镜元素之间按照不同组合顺序进行组合得到的组合滤镜可能是不同的,采用本申请可以得到不同的组合滤镜,丰富了滤镜特效。
步骤S203、按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,并在预览图像上显示组合滤镜。
获取到M个滤镜元素的组合信息之后,可以按照M个滤镜元素的组合信息中所指示的组合方式将M个滤镜元素进行组合,得到一个组合滤镜。然后将该组合滤镜显示在预览图像上。应当理解的,M个滤镜元素的组合信息的数量可以为一个或多个,那么得到的组合滤镜的数量也可以为一个或多个,本申请在下面的描述中以一个为例。
具体实现中,将M个滤镜元素进行组合得到组合滤镜可以包括:按照组合信息的组合方式中规定的组合顺序,将M个滤镜元素依次叠加组合,得到组合滤镜。比如组合信息中规定的组合方式是滤镜1-滤镜2-滤镜5,那么就先渲染滤镜1,然后在滤镜1的基础上渲染滤镜2得到一个组合的滤镜,然后再在该组合的滤镜基础上渲染滤镜5,得到最后的组合滤镜。
举例来说,参见图5,为本申请实施例提供的一种在预览图像上显示组合滤镜的示意图,假设501为预览图像,目标特效滤镜链如图4b所示,M个滤镜元素的组合信息中规定M个滤镜元素为滤镜1、滤镜2以及滤镜5,M个滤镜元素的组合方式为滤镜1-滤镜2-滤镜5,假设滤镜1是一个竹林的特效,滤镜2是一个大熊猫在吃竹子的特效,滤镜5是一个将人脸变换为卡通熊猫头的特效,那么按照滤镜1-滤镜2-滤镜5依次将各个滤镜进行叠加组合,得到一个组合滤镜,最后在预览图像上显示组合滤镜,在预览图像上显示组合滤镜的效果可如图中502所示。
本申请实施例中,获取预览图像以及被选中的滤镜标识,如果该滤镜标识所指示的滤镜类型是组合滤镜,则获取该滤镜标识对应的目标特效滤镜链的配置信息,在该目标特效滤镜链中包括N个滤镜元素,这N个滤镜元素是按照有向无环图的方式进行连接的,每个滤镜元素可以是一个单独的滤镜,也可以是一个特效滤镜链;目标特效滤镜链的配置信息中可以包括M个滤镜元素的组合信息,该组合信息是基于N个滤镜元素的有向无环图的连接方式确定的;进一步的,按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,并将该组合滤镜显示在预览图像上。应当理解的,M个滤镜元素的组合信息是基于有向无环图的连接方式确定的,有向无环图的连接方式可以生成多种组合信息,本申请实施例中按照组合信息将M个滤镜进行组合,实现了在不更新应用程序的前提下,得到更加丰富的滤镜效果。
基于上述的图像处理方法,本申请实施例提供了另一种图像处理方法,参见图6,为本申请实施例提供的另一种图像处理方法的流程示意图。图6所示的图像处理方法可由图像处理设备执行,具体可由图像处理设备的处理器执行,该图像处理设备可以是上述的用户终端。图6所示的图像处理方法可包括如下步骤:
步骤S601、获取预览图像以及被选中的滤镜标识。
在一个实施例中,步骤S601中包括的一些可行的实施方式可参见图2实施例中步骤S201的相关描述,在此不再赘述。
步骤S602、获取滤镜标识对应的素材包,若滤镜标识所指示的滤镜类型是组合滤镜,则从素材包中获取目标特效滤镜链的配置信息,目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息。
其中,素材包中可以包括摄像类应用程序中所能提供的所有滤镜,将所能提供的滤镜集成在素材包中,这些滤镜中包括单一滤镜和组合滤镜,对于组合滤镜,可以在素材包中更改特效滤镜链中各个滤镜元素之间的组合信息,能够提供更加丰富的滤镜特效,这样做实现了在不更新应用程序的前提下,丰富滤镜特效。现有技术中,丰富滤镜特效的方式通常是修改摄像类应用程序的代码,在其中添加更多的滤镜,然后将更新后的摄像类应用程序推送到各个应用商店中,等用户下载了更新后的摄像类应用程序方可体验丰富的滤镜。可见,相比于现有技术,本申请这种丰富滤镜特效的方式,过程简单,操作简便。
素材包可以是存储在服务器中,图像处理设备通过与服务器交互从服务器中下载该素材包。素材包中包括一个或多个组成组合滤镜的特效滤镜链,以及每个滤镜链中的配置信息。在本申请中,图像处理设备从素材包中获取与滤镜标识对应的目标特效滤镜链的配置信息。
步骤S603、按照M个滤镜元素的组合信息,将M个滤镜元素进行组合得到组合滤镜。
在执行步骤S603之前,需要先创建得到N个滤镜元素,目标特效滤镜链的配置信息中还包括有N个滤镜元素中每个滤镜元素对应的着色器信息,假设N个滤镜元素均为单一滤镜,创建N个滤镜元素的步骤可以包括:基于每个滤镜元素对应的着色器信息进行初始化处理得到N个滤镜元素。
本申请在进行渲染时所使用的渲染引擎是跨平台渲染引擎,每个滤镜元素对应的着色器信息中包括一个跨平台的顶点着色器和一个跨平台的片元着色器。目标特效滤镜链的配置信息中包含一个json文件,M个滤镜元素的组合信息是存储在该json文件中的,每个滤镜元素对应的着色器信息是通过json的方式与每个滤镜元素一一对应的。
在基于任意一个滤镜元素的着色器信息进行初始化,可以包括:通过顶点着色器计算任意一个滤镜元素需要作用到预览图像上的区域,并将计算到的信息传递该任意一个滤镜元素对应的片元着色器中,在片元着色器中计算该区域所需要的颜色信息。
可选的,每个滤镜元素对应的着色器信息是基于每个滤镜元素的着色器信息存储路径从素材包中获取到的。具体实现中,按照每个滤镜元素的着色器信息存储路径从素材包中下载滤镜元素对应的着色器信息。
步骤S604、将组合滤镜添加到渲染滤镜链中,渲染滤镜链包括图像美化特效和组合滤镜。
步骤S605、通过渲染滤镜链中的图像美化特效对预览图像进行美化预处理,将组合滤镜按照每个滤镜元素的显示指示信息渲染显示在美化预处理后的预览图像上。
应当理解的,图像处理设备在预览图像上渲染显示一个滤镜时是按照渲染树进行渲染的,在渲染树中预览图像作为渲染树的输入,预览图像与一个渲染滤镜链相连接,渲染滤镜链中包括图像美化特效和滤镜特效,图像美化特效用于对预览图像进行基本的图像美化处理比如美白、磨皮、曝光补偿等等;滤镜特效是添加到图像美化处理后的预览图像上的。滤镜特效是基于用户选中的滤镜标识确定的,本申请中当用户选中了目标特效滤镜链对应的滤镜标识后,图像处理设备基于素材包中该目标特效滤镜链中M个滤镜元素的组合信息,对M个滤镜元素进行组合得到一个组合滤镜后,基于该组合滤镜更新渲染滤镜链。具体实现中,可以是将组合滤镜添加到图像美化特效之后,以便于进行渲染时,将组合滤镜显示在美化预处理后的预览图像上。
在一个实施例中,将组合滤镜渲染显示在美化预处理后的预览图像上,可以是基于组合滤镜中每个滤镜元素的显示指示信息显示的。每个滤镜元素的指示信息是记录在目标特效滤镜链的素材包中的,具体实现中,素材包中可以包括一个脚本文件,该脚本文件中记录了每个滤镜元素的显示指示信息,任意一个滤镜元素的显示指示信息可以用于规定该任意一个滤镜元素如何显示,比如一个滤镜元素的显示指示信息中规定该滤镜元素是每隔1秒出现一次,或者规定该滤镜元素每隔1秒显示一次并且每次显示时亮度发生变化或者显示颜色发生变化等等。
为了实现更加丰富的滤镜,本申请中设置每个滤镜元素的显示指示信息是随着预览图像发生变化的,对于不同的预览图像可能同一个滤镜元素的显示指示信息不同,这是因为不同的预览图像可能包括的内容不同,亮度不同,尺寸也可能不同。因此具体实现中,本申请中可以基于脚本文件生成一个脚本程序对象,该脚本程序对应可以获取预览图像对应的滤镜特效参考信息,滤镜特效参考信息可以包括以下任意一种或多种:所述预览图像中是否存在目标对象、所述预览图像的尺寸信息以及所述预览图像的亮度信息;然后基于滤镜特效参考信息和预设的信息更新规则更新每个滤镜对应的显示指示信息。如此实现了通过脚本实时修改跨平台的渲染引擎中用于显示组合滤镜的参数,实现复杂的滤镜效果,实现滤镜效果是随着环境以及应用场景的变化发生改变,达到了实时更新不同滤镜效果的目的。
其中,预设的信息更新规则可以包括预览图像中包括不同的目标对象时,某个滤镜的显示指示信息中应该是什么样的,例如,目标对象是人脸,脚本程序检测预览图像中出现的人脸以及人脸点位信息,并根据检测到的人脸点位信息更新当前预览图像的显示指示信息,以便于渲染引擎基于显示指示信息显示当前预览图像的滤镜特效,比如这些人脸点位信息传递到渲染引擎的顶点着色器和片元着色器中,使得渲染引擎更新滤镜特效在预览图像中的显示位置。再如,预设的信息更新规则还可以包括不同的预览图像的尺寸,某个滤镜的显示指示信息应该是什么样的;又如,预设的信息更新规则还可以包括预览图像处于不同亮度时,某个滤镜的显示指示信息应该是如何的。
基于上述步骤S601-步骤S605的描述,本申请提供的图像处理流程图可如图7所示,具体可包括如下流程:1)图像处理设备将相机中的实时画面作为预览图像,以及获取被选中的滤镜标识;2)判断滤镜标识所指示的滤镜类型是否为组合滤镜;3)如果滤镜标识所指示的滤镜类型是组合滤镜,则下载素材包并从素材包中解析滤镜标识对应的目标特效滤镜链的配置信息;4)根据目标特效滤镜的配置信息中各个滤镜元素的创建信息创建各个滤镜;5)按照目标特效滤镜链中各个滤镜的组合方式进行组合得到组合滤镜;6)基于目标特效滤镜的配置信息中的脚本文件生成脚本程序对象,通过脚本程序对象获取预览图像的滤镜特效参考信息,基于获取到的特效滤镜参考信息更新滤镜的显示指示信息(显示指示信息又可以称为滤镜参数;7)将组合滤镜和显示指示信息更新到渲染滤镜链中,基于渲染滤镜链进行滤镜渲染,在预览图像上显示组合滤镜;9)如果滤镜标识所指示的滤镜类型是单一滤镜,则直接将该单一滤镜更新到渲染滤镜链中进行渲染,以在预览图像上显示该单一滤镜。
本申请实施例中,获取预览图像以及被选中的滤镜标识,如果该滤镜标识所指示的滤镜类型是组合滤镜,则从素材包中获取该滤镜标识对应的目标特效滤镜链的配置信息,在该目标特效滤镜链中包括N个滤镜元素,这N个滤镜元素是按照有向无环图的方式进行连接的,每个滤镜元素可以是一个单独的滤镜,也可以是一个特效滤镜链;目标特效滤镜链的配置信息中可以包括M个滤镜元素的组合信息,该组合信息是基于N个滤镜元素的有向无环图的连接方式确定的;进一步的,按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,并将该组合滤镜显示在预览图像上。应当理解的,素材包可以是存储在后台服务器中的,摄像类应用程序的滤镜都是集成在素材包中的,通过素材包可以得到更多的滤镜特效,实现了不更新应用程序丰富滤镜;另外,M个滤镜元素的组合信息是基于有向无环图的连接方式确定的,有向无环图的连接方式可以生成多种组合信息,本申请实施例中按照组合信息将M个滤镜进行组合,实现了在不更新应用程序的前提下,得到更加丰富的滤镜效果。
基于上述的图像处理方法实施例,本申请实施例提供了一种图像处理装置,参见图8,为本申请实施例提供的一种图像处理装置的结构示意图。图8所示的图像处理装置可运行如下单元:
获取单元801,用于获取预览图像以及被选中的滤镜标识;
所述获取单元801,还用于若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;
处理单元802,用于按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜;
显示单元803,用于在所述预览图像上显示所述组合滤镜。
在一个实施例中,所述目标特效滤镜链的配置信息还包括所述N个滤镜元素中每个滤镜元素的着色器信息,若所述N个滤镜元素均为单一滤镜,所述处理单元802,还用于基于所述每个滤镜元素对应的着色器信息进行初始化创建处理,得到N个滤镜元素。
在一个实施例中,所述获取单元801在获取所述滤镜标识对应的目标特效滤镜链的配置信息时,执行如下步骤:当所述滤镜标识被选中时,获取所述滤镜标识对应的素材包;从所述素材包中获取所述目标特效滤镜链的配置信息。
在一个实施例中,所述素材包中包括脚本文件,所述脚本文件用于记录所述M个滤镜元素中每个滤镜元素的显示指示信息,所述显示单元803在所述预览图像上显示所述组合滤镜时,执行如下步骤:基于所述每个滤镜元素的显示指示信息在所述预览图像上显示所述组合滤镜。
在一个实施例中,所述处理单元802还用于根据所述素材包中的脚本文件,生成脚本程序对象;所述获取单元801,还用于通过运行所述脚本程序对象,获取所述预览图像对应的滤镜特效参考信息;其中,所述滤镜特效参考信息包括以下任意一种或多种:所述预览图像中是否存在目标对象、所述预览图像的尺寸信息以及所述预览图像的亮度信息;所述处理单元802,还用于基于所述滤镜特效参考信息和预设的信息更新规则更新所述每个滤镜元素的显示指示信息。
在一个实施例中,所述显示单元803中在所述预览图像上显示所述组合滤镜时,执行如下步骤:将所述组合滤镜添加到渲染滤镜链中,所述渲染滤镜链包括图像美化特效和所述组合滤镜,所述图像美化处理和所述组合滤镜依次连接;通过所述渲染滤镜链中的图像美化特效对所述预览图像进行美化预处理;将所述渲染滤镜链中的组合滤镜渲染显示在美化预处理后的预览图像上。
在一个实施例中,所述素材包中包括所述每个滤镜元素对应的着色器信息存储路径,所述获取单元801还用于按照所述每个滤镜元素的对应的着色器信息存储路径,从所述素材包中获取所述每个滤镜元素对应的着色器信息。
在一个实施例中,所述N个滤镜元素组成的有向无环图中包括链式结构和图式结构。
根据本申请的一个实施例,图2所示的图像处理方法所涉及各个步骤可以是由图8所示的图像处理装置中的各个单元来执行的。例如,图2所述的步骤S201和S202可由图8所示的图像处理装置中的获取单元801来执行,步骤S203可由图8所示的图像处理装置中处理单元802和显示单元803来执行。
根据本申请的另一个实施例,图8所示的图像处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,基于图像处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图8中所示的图像处理装置,以及来实现本申请实施例图像处理方法。所述计算机程序可以记载于例如计算机可读存储介质上,并通过计算机可读存储介质装载于图像处理设备中,并在其中运行。
本申请实施例中,获取预览图像以及被选中的滤镜标识,如果该滤镜标识所指示的滤镜类型是组合滤镜,则获取该滤镜标识对应的目标特效滤镜链的配置信息,在该目标特效滤镜链中包括N个滤镜元素,这N个滤镜元素是按照有向无环图的方式进行连接的,每个滤镜元素可以是一个单独的滤镜,也可以是一个特效滤镜链;目标特效滤镜链的配置信息中可以包括M个滤镜元素的组合信息,该组合信息是基于N个滤镜元素的有向无环图的连接方式确定的;进一步的,按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,并将该组合滤镜显示在预览图像上。应当理解的,M个滤镜元素的组合信息是基于有向无环图的连接方式确定的,有向无环图的连接方式中既包括链式结构也包括图式结构,如此基于有向无环图的连接方式可以生成多种组合信息,本申请实施例中按照组合信息将M个滤镜进行组合,实现了在不更新应用程序的前提下,得到更加丰富的滤镜特效。
基于上述图像处理方法的实施例以及图像处理装置的实施例,本申请实施例还提供了一种图像处理设备,参见图9,为本申请实施例提供的一种图像处理设备的结构示意图。图9所示的图像处理设备可以包括处理器901、输入接口902、输出接口903以及计算机存储介质904。其中,处理器901、输入接口902、输出接口903以及计算机存储介质904可通过总线或其他方式连接。
计算机存储介质904可以存储在图像处理设备的存储器中,所述计算机存储介质904用于存储计算机程序,所述处理器901用于执行所述计算机存储介质904存储的计算机程序。处理器901(或称CPU(Central Processing Unit,中央处理器))是图像处理设备的计算核心以及控制核心,其适于实现一条或多条计算机程序,具体适于加载并执行:
获取预览图像以及被选中的滤镜标识;若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜,并在所述预览图像上显示所述组合滤镜。
本申请实施例中,获取预览图像以及被选中的滤镜标识,如果该滤镜标识所指示的滤镜类型是组合滤镜,则获取该滤镜标识对应的目标特效滤镜链的配置信息,在该目标特效滤镜链中包括N个滤镜元素,这N个滤镜元素是按照有向无环图的方式进行连接的,每个滤镜元素可以是一个单独的滤镜,也可以是一个特效滤镜链;目标特效滤镜链的配置信息中可以包括M个滤镜元素的组合信息,该组合信息是基于N个滤镜元素的有向无环图的连接方式确定的;进一步的,按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,并将该组合滤镜显示在预览图像上。应当理解的,M个滤镜元素的组合信息是基于有向无环图的连接方式确定的,有向无环图的连接方式中既包括链式结构也包括图式结构,如此基于有向无环图的连接方式可以生成多种组合信息,本申请实施例中按照组合信息将M个滤镜进行组合,实现了在不更新应用程序的前提下,得到更加丰富的滤镜特效。
本申请实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是图像处理设备的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括图像处理设备的内置存储介质,当然也可以包括图像处理设备所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了图像处理设备的操作系统。并且,在该存储空间中还存放了适于被处理器901加载并执行的一条或多条的计算机程序。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,所述计算机存储介质中存储的一条或多条计算机程序可由处理器901加载并执行:
获取预览图像以及被选中的滤镜标识;若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜,并在所述预览图像上显示所述组合滤镜。
在一个实施例中,所述目标特效滤镜链的配置信息还包括所述N个滤镜元素中每个滤镜元素的着色器信息,若所述N个滤镜元素均为单一滤镜,所述按照所述M个滤镜的组合信息将所述M个滤镜元素进行组合得到组合滤镜之前,所述处理器901,还用于执行:基于所述每个滤镜元素对应的着色器信息进行初始化创建处理,得到N个滤镜元素。
在一个实施例中,所述处理器901在获取所述滤镜标识对应的目标特效滤镜链的配置信息时,执行如下步骤:当所述滤镜标识被选中时,获取所述滤镜标识对应的素材包;从所述素材包中获取所述目标特效滤镜链的配置信息。
在一个实施例中,所述素材包中包括脚本文件,所述脚本文件用于记录所述M个滤镜元素中每个滤镜元素的显示指示信息,所述处理器901在所述预览图像上显示所述组合滤镜时,执行如下步骤:基于所述每个滤镜元素的显示指示信息在所述预览图像上显示所述组合滤镜。
在一个实施例中,所述处理器901还用于执行:根据所述素材包中的脚本文件,生成脚本程序对象;
在一个实施例中,在按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜之前,所述处理器901还用于执行:通过运行所述脚本程序对象,获取所述预览图像对应的滤镜特效参考信息;其中,所述滤镜特效参考信息包括以下任意一种或多种:所述预览图像中是否存在目标对象、所述预览图像的尺寸信息以及所述预览图像的亮度信息;基于所述滤镜特效参考信息和预设的信息更新规则更新所述每个滤镜元素的显示指示信息。
在一个实施例中,所述处理器901在所述预览图像上显示所述组合滤镜时,执行如下步骤:
将所述组合滤镜添加到渲染滤镜链中,所述渲染滤镜链包括图像美化特效和所述组合滤镜,所述图像美化处理和所述组合滤镜依次连接;通过所述渲染滤镜链中的图像美化特效对所述预览图像进行美化预处理;将所述渲染滤镜链中的组合滤镜渲染显示在美化预处理后的预览图像上。
在一个实施例中,所述素材包中包括所述每个滤镜元素对应的着色器信息存储路径,所述基于所述每个滤镜元素对应的着色器信息进行初始化创建处理,得到N个滤镜元素之前,所述处理器901还用于执行:按照所述每个滤镜元素的对应的着色器信息存储路径,从所述素材包中获取所述每个滤镜元素对应的着色器信息。
在一个实施例中,所述N个滤镜元素组成的有向无环图中包括链式结构和图式结构。
本申请实施例中,获取预览图像以及被选中的滤镜标识,如果该滤镜标识所指示的滤镜类型是组合滤镜,则获取该滤镜标识对应的目标特效滤镜链的配置信息,在该目标特效滤镜链中包括N个滤镜元素,这N个滤镜元素是按照有向无环图的方式进行连接的,每个滤镜元素可以是一个单独的滤镜,也可以是一个特效滤镜链;目标特效滤镜链的配置信息中可以包括M个滤镜元素的组合信息,该组合信息是基于N个滤镜元素的有向无环图的连接方式确定的;进一步的,按照M个滤镜元素的组合信息将M个滤镜元素进行组合得到组合滤镜,并将该组合滤镜显示在预览图像上。应当理解的,M个滤镜元素的组合信息是基于有向无环图的连接方式确定的,有向无环图的连接方式中既包括链式结构也包括图式结构,如此基于有向无环图的连接方式可以生成多种组合信息,本申请实施例中按照组合信息将M个滤镜进行组合,实现了在不更新应用程序的前提下,得到更加丰富的滤镜特效。
Claims (13)
1.一种图像处理方法,其特征在于,包括:
获取预览图像以及被选中的滤镜标识;
若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;
按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜,并在所述预览图像上显示所述组合滤镜。
2.如权利要求1所述的方法,其特征在于,所述目标特效滤镜链的配置信息还包括所述N个滤镜元素中每个滤镜元素的着色器信息,若所述N个滤镜元素均为单一滤镜,所述按照所述M个滤镜的组合信息将所述M个滤镜元素进行组合得到组合滤镜之前,所述方法还包括:
基于所述每个滤镜元素对应的着色器信息进行初始化创建处理,得到N个滤镜元素。
3.如权利要求2所述的方法,其特征在于,所述获取所述滤镜标识对应的目标特效滤镜链的配置信息,包括:
当所述滤镜标识被选中时,获取所述滤镜标识对应的素材包;
从所述素材包中获取所述目标特效滤镜链的配置信息。
4.如权利要求3所述的方法,其特征在于,所述素材包中包括脚本文件,所述脚本文件用于记录所述M个滤镜元素中每个滤镜元素的显示指示信息,所述在所述预览图像上显示所述组合滤镜,包括:
基于所述每个滤镜元素的显示指示信息在所述预览图像上显示所述组合滤镜。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:根据所述素材包中的脚本文件,生成脚本程序对象;
所述按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜之前,所述方法还包括:
通过运行所述脚本程序对象,获取所述预览图像对应的滤镜特效参考信息;其中,所述滤镜特效参考信息包括以下任意一种或多种:所述预览图像中是否存在目标对象、所述预览图像的尺寸信息以及所述预览图像的亮度信息;
基于所述滤镜特效参考信息和预设的信息更新规则更新所述每个滤镜元素的显示指示信息。
6.如权利要求1所述的方法,其特征在于,所述在所述预览图像上显示所述组合滤镜,包括:
将所述组合滤镜添加到渲染滤镜链中,所述渲染滤镜链包括图像美化特效和所述组合滤镜,所述图像美化特效和所述组合滤镜依次连接;
通过所述渲染滤镜链中的图像美化特效对所述预览图像进行美化预处理;
将所述渲染滤镜链中的组合滤镜渲染显示在美化预处理后的预览图像上。
7.如权利要求3所述的方法,其特征在于,所述素材包中包括所述每个滤镜元素对应的着色器信息存储路径,所述基于所述每个滤镜元素对应的着色器信息进行初始化创建处理,得到N个滤镜元素之前,所述方法还包括:
按照所述每个滤镜元素对应的着色器信息存储路径,从所述素材包中获取所述每个滤镜元素的着色器信息。
8.如权利要求1所述的方法,其特征在于,所述N个滤镜元素组成的有向无环图中包括链式结构和图式结构。
9.如权利要求1所述的方法,其特征在于,所述若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,包括:
获取滤镜、滤镜标识与滤镜类型之间的对应关系,所述滤镜类型包括单一滤镜和组合滤镜中任意一种;其中,若任意一个滤镜类型为单一滤镜,则与所述任意一个滤镜类型对应的滤镜标识,所对应的滤镜为一个单独的滤镜;若任意一个滤镜类型为组合滤镜,则与所述任意一个滤镜类型对应的滤镜标识,所对应的滤镜为一个特效滤镜链;
基于所述滤镜、滤镜标识与滤镜类型之间的对应关系,查找与被选中的滤镜标识对应的滤镜类型;
若被选中的滤镜标识对应的滤镜类型为组合滤镜,则基于所述滤镜、滤镜标识与滤镜类型之间的对应关系,获取与被选中的滤镜标识对应的目标特效滤镜链;
获取所述目标特效滤镜链的配置信息。
10.一种图像处理装置,其特征在于,包括:
获取单元,用于获取预览图像以及被选中的滤镜标识;
所述获取单元,还用于若所述滤镜标识所指示的滤镜类型是组合滤镜,则获取所述滤镜标识对应的目标特效滤镜链的配置信息,所述目标特效滤镜链包括N个滤镜元素,所述N个滤镜元素是按照有向无环图的连接方式进行连接的,每个滤镜元素是指一个单一滤镜或者一个特效滤镜链;所述目标特效滤镜链的配置信息中包括M个滤镜元素的组合信息,所述组合信息是基于所述有向无环图的连接方式确定的,N和M均为大于或等于1的整数,且M小于或等于N;
处理单元,用于按照所述M个滤镜元素的组合信息将所述M个滤镜元素进行组合得到组合滤镜;
显示单元,用于在所述预览图像上显示所述组合滤镜。
11.一种图像处理设备,其特征在于,包括:
处理器,适用于实现一条或多条计算机程序;
计算机存储介质,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由所述处理器加载并执行如权利要求1-9任一项所述的图像处理方法。
12.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行时用于加载并执行如权利要求1-9任一项所述的图像处理方法。
13.一种计算机程序产品或计算机程序,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时用于加载并执行如权利要求1-9任一项所述的图像处理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111177045.2A CN113630557B (zh) | 2021-10-09 | 2021-10-09 | 图像处理方法、装置、设备、存储介质及计算机程序产品 |
PCT/CN2022/117416 WO2023056820A1 (zh) | 2021-10-09 | 2022-09-07 | 图像处理方法、装置、设备、存储介质及计算机程序产品 |
EP22877840.3A EP4319123A1 (en) | 2021-10-09 | 2022-09-07 | Image processing method, apparatus and device, storage medium, and computer program product |
US18/205,097 US20230325989A1 (en) | 2021-10-09 | 2023-06-02 | Image processing method, apparatus, and device, storage medium, and computer program product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111177045.2A CN113630557B (zh) | 2021-10-09 | 2021-10-09 | 图像处理方法、装置、设备、存储介质及计算机程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113630557A true CN113630557A (zh) | 2021-11-09 |
CN113630557B CN113630557B (zh) | 2022-02-11 |
Family
ID=78390895
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111177045.2A Active CN113630557B (zh) | 2021-10-09 | 2021-10-09 | 图像处理方法、装置、设备、存储介质及计算机程序产品 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230325989A1 (zh) |
EP (1) | EP4319123A1 (zh) |
CN (1) | CN113630557B (zh) |
WO (1) | WO2023056820A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115379113A (zh) * | 2022-07-18 | 2022-11-22 | 北京达佳互联信息技术有限公司 | 拍摄处理方法、装置、设备及存储介质 |
WO2023056820A1 (zh) * | 2021-10-09 | 2023-04-13 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、设备、存储介质及计算机程序产品 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101272390A (zh) * | 2008-05-12 | 2008-09-24 | 腾讯科技(深圳)有限公司 | 媒体文件的滤镜链路建立方法和装置 |
CN104808975A (zh) * | 2014-01-26 | 2015-07-29 | 腾讯科技(深圳)有限公司 | 相机应用的滤镜实现方法和装置 |
CN105068822A (zh) * | 2015-07-09 | 2015-11-18 | 厦门美图网科技有限公司 | 一种实时滤镜的在线配置方法、系统及拍摄终端 |
CN105357451A (zh) * | 2015-12-04 | 2016-02-24 | Tcl集团股份有限公司 | 基于滤镜特效的图像处理方法及装置 |
TW201640888A (zh) * | 2015-02-04 | 2016-11-16 | 騰訊科技(深圳)有限公司 | 生成視頻的方法、裝置及終端 |
CN106873855A (zh) * | 2017-02-15 | 2017-06-20 | 努比亚技术有限公司 | 一种悬浮图标控制方法、装置及终端 |
CN107613046A (zh) * | 2017-08-22 | 2018-01-19 | 阿里巴巴集团控股有限公司 | 滤镜管道系统、图像数据处理方法、装置以及电子设备 |
WO2019095392A1 (zh) * | 2017-11-20 | 2019-05-23 | 华为技术有限公司 | 根据背景图像动态显示图标的方法及装置 |
CN113194255A (zh) * | 2021-04-29 | 2021-07-30 | 南京维沃软件技术有限公司 | 拍摄方法、装置和电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8977077B2 (en) * | 2013-01-21 | 2015-03-10 | Apple Inc. | Techniques for presenting user adjustments to a digital image |
CN104967801B (zh) * | 2015-02-04 | 2019-09-17 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法和装置 |
US10554908B2 (en) * | 2016-12-05 | 2020-02-04 | Facebook, Inc. | Media effect application |
CN109040615A (zh) * | 2018-08-10 | 2018-12-18 | 北京微播视界科技有限公司 | 视频特效添加方法、装置、终端设备及计算机存储介质 |
CN111510645B (zh) * | 2020-04-27 | 2022-09-27 | 北京字节跳动网络技术有限公司 | 视频处理方法、装置、计算机可读介质和电子设备 |
CN113630557B (zh) * | 2021-10-09 | 2022-02-11 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、设备、存储介质及计算机程序产品 |
-
2021
- 2021-10-09 CN CN202111177045.2A patent/CN113630557B/zh active Active
-
2022
- 2022-09-07 WO PCT/CN2022/117416 patent/WO2023056820A1/zh active Application Filing
- 2022-09-07 EP EP22877840.3A patent/EP4319123A1/en active Pending
-
2023
- 2023-06-02 US US18/205,097 patent/US20230325989A1/en active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101272390A (zh) * | 2008-05-12 | 2008-09-24 | 腾讯科技(深圳)有限公司 | 媒体文件的滤镜链路建立方法和装置 |
CN104808975A (zh) * | 2014-01-26 | 2015-07-29 | 腾讯科技(深圳)有限公司 | 相机应用的滤镜实现方法和装置 |
TW201640888A (zh) * | 2015-02-04 | 2016-11-16 | 騰訊科技(深圳)有限公司 | 生成視頻的方法、裝置及終端 |
CN105068822A (zh) * | 2015-07-09 | 2015-11-18 | 厦门美图网科技有限公司 | 一种实时滤镜的在线配置方法、系统及拍摄终端 |
CN105357451A (zh) * | 2015-12-04 | 2016-02-24 | Tcl集团股份有限公司 | 基于滤镜特效的图像处理方法及装置 |
CN106873855A (zh) * | 2017-02-15 | 2017-06-20 | 努比亚技术有限公司 | 一种悬浮图标控制方法、装置及终端 |
CN107613046A (zh) * | 2017-08-22 | 2018-01-19 | 阿里巴巴集团控股有限公司 | 滤镜管道系统、图像数据处理方法、装置以及电子设备 |
WO2019095392A1 (zh) * | 2017-11-20 | 2019-05-23 | 华为技术有限公司 | 根据背景图像动态显示图标的方法及装置 |
CN113194255A (zh) * | 2021-04-29 | 2021-07-30 | 南京维沃软件技术有限公司 | 拍摄方法、装置和电子设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023056820A1 (zh) * | 2021-10-09 | 2023-04-13 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、设备、存储介质及计算机程序产品 |
CN115379113A (zh) * | 2022-07-18 | 2022-11-22 | 北京达佳互联信息技术有限公司 | 拍摄处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113630557B (zh) | 2022-02-11 |
EP4319123A1 (en) | 2024-02-07 |
US20230325989A1 (en) | 2023-10-12 |
WO2023056820A1 (zh) | 2023-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11450350B2 (en) | Video recording method and apparatus, video playing method and apparatus, device, and storage medium | |
CN108010112B (zh) | 动画处理方法、装置及存储介质 | |
CN113630557B (zh) | 图像处理方法、装置、设备、存储介质及计算机程序产品 | |
CN111294663B (zh) | 弹幕处理方法、装置、电子设备及计算机可读存储介质 | |
CN109901894B (zh) | 一种进度条图像生成方法、装置和存储介质 | |
US11432049B2 (en) | Subtitle splitter | |
US11087432B2 (en) | Multistage neural network processing using a graphics processor | |
CN104917666A (zh) | 一种制作个性化动态表情的方法和装置 | |
CN112291484A (zh) | 视频合成方法、装置、电子设备及存储介质 | |
CN116233491B (zh) | 视频生成的方法及服务器 | |
CN113411664B (zh) | 基于子应用的视频处理方法、装置和计算机设备 | |
US20230386001A1 (en) | Image display method and apparatus, and device and medium | |
CN112035046B (zh) | 榜单信息显示方法、装置、电子设备及存储介质 | |
CN113965773A (zh) | 直播展示方法和装置、存储介质及电子设备 | |
CN110971974B (zh) | 配置参数创建方法、装置、终端及存储介质 | |
CN114697703A (zh) | 视频数据生成方法、装置、电子设备及存储介质 | |
CN110647374A (zh) | 全息展示窗的交互方法、装置以及电子设备 | |
CN114170472A (zh) | 图像处理方法、可读存储介质及计算机终端 | |
CN113076155A (zh) | 数据处理方法、装置、电子设备及计算机存储介质 | |
CN114913058A (zh) | 显示对象的确定方法、装置、电子设备及存储介质 | |
CN113556578B (zh) | 视频生成方法、装置、终端及存储介质 | |
CN110310639B (zh) | 一种互动表情的实现方法及终端 | |
CN116843802A (zh) | 虚拟形象的处理方法及相关产品 | |
CN108390850B (zh) | 数据处理方法、装置、电子设备和服务器 | |
WO2021208330A1 (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40056694 Country of ref document: HK |