CN116703692A - 一种拍摄性能优化方法和装置 - Google Patents

一种拍摄性能优化方法和装置 Download PDF

Info

Publication number
CN116703692A
CN116703692A CN202211736988.9A CN202211736988A CN116703692A CN 116703692 A CN116703692 A CN 116703692A CN 202211736988 A CN202211736988 A CN 202211736988A CN 116703692 A CN116703692 A CN 116703692A
Authority
CN
China
Prior art keywords
algorithm
image processing
processing algorithm
preset
identification
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
CN202211736988.9A
Other languages
English (en)
Other versions
CN116703692B (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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202211736988.9A priority Critical patent/CN116703692B/zh
Publication of CN116703692A publication Critical patent/CN116703692A/zh
Application granted granted Critical
Publication of CN116703692B publication Critical patent/CN116703692B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Studio Devices (AREA)

Abstract

本申请实施例提供一种拍摄性能优化方法和装置,涉及终端领域,能够缩短电子设备的拍摄流程的处理时间。其方法应用于电子设备,该方法包括:识别当前拍摄模式;遍历至少一个图像处理算法得到注册信息;执行至少一个图像处理算法中的第一图像处理算法,当第一图像处理算法执行完毕后,将第一图像处理算法的标识与注册信息进行匹配;若第一图像处理算法的标识与注册信息相匹配,并行执行预设算法和第一图像处理算法的下一个算法。

Description

一种拍摄性能优化方法和装置
技术领域
本申请涉及终端领域,尤其涉及一种拍摄性能优化方法和装置。
背景技术
目前,大多数电子设备都具备拍摄功能,用户可以使用拍摄功能来记录生活。在一次拍摄流程中,电子设备一般需要执行多种算法对拍摄到的图像进行处理。当执行的算法的数量较多时,用户往往要等待较长的时间才能得到处理后的图像。也就是说,现有技术中,拍摄流程存在拍摄处理耗时较长的技术问题。
发明内容
本申请实施例提供一种拍摄性能优化方法和装置,可以缩短拍摄处理时间。
第一方面,本申请提供一种拍摄性能优化方法,应用于电子设备,包括:识别当前拍摄模式,当前拍摄模式对应至少一个图像处理算法;遍历至少一个图像处理算法得到注册信息,注册信息包括预设算法依赖的算法的标识,预设算法是至少一个图像处理算法中不依赖于前一个或前M个连续算法的算法,其中,M为大于或等于2的整数;执行至少一个图像处理算法中的第一图像处理算法,当第一图像处理算法执行完毕后,将第一图像处理算法的标识与注册信息进行匹配;若第一图像处理算法的标识与注册信息相匹配,并行执行预设算法和第一图像处理算法的下一个算法。
基于本申请提供的方法,当第一图像处理算法执行完毕后,将第一图像处理算法的标识与注册信息进行匹配,注册信息包括预设算法依赖的算法的标识;若第一图像处理算法的标识与注册信息相匹配,表示第一图像处理算法是预设算法所依赖的算法,从而在第一图像处理算法执行完毕后,可以并行执行预设算法和第一图像处理算法的下一个算法。相比现有技术,串行执行各个图像处理算法导致不能充分利用CPU,可伸缩性不高的问题,基于本申请提供的方法,可以并行执行多个图像处理算法(预设算法和第一图像处理算法的下一个算法),可以缩短拍摄流程的处理时间,能够充分的利用CPU,提高系统的可伸缩性,从而实现了提高拍摄的性能的技术效果。
在第一方面的一种可能的实施方式中,至少一个图像处理算法包括第一图像处理算法、第二图像处理算法和第三图像处理算法,第一图像处理算法、第二图像处理算法和第三图像处理算法依次排列,第二图像处理算法和第三图像处理算法依赖第一图像处理算法,第二图像处理算法和第三图像处理算法之间没有依赖关系;注册信息包括第一图像处理算法的标识,预设算法包括第三图像处理算法;若第一图像处理算法的标识与注册信息相匹配,并行执行预设算法和第一图像处理算法的下一个算法包括:若第一图像处理算法的标识与注册信息相匹配,并行执行第二图像处理算法和第三图像处理算法。
基于本申请提供的方法,对于第三图像处理算法仅依赖第一图像处理算法,即第二图像处理算法和第三图像处理算法之间没有依赖关系的情况,可以根据第一图像处理算法的标识来匹配注册信息中各个预设算法依赖的算法的标识。若第一图像处理算法的标识与注册信息中第三图像处理算法依赖的算法的标识相匹配,表示第一图像处理算法是第三图像处理算法所依赖的算法,从而在第一图像处理算法执行完毕后,可以并行执行第三图像处理算法和第一图像处理算法的下一个算法。相比现有技术,串行执行第三图像处理算法和第一图像处理算法的下一个算法导致拍摄流程的处理时间较长的问题,基于本申请提供的方法,可以并行执行第三图像处理算法和第一图像处理算法的下一个算法,从而提升拍摄的性能,缩短拍摄流程的处理时间。
在第一方面的另一种可能的实施方式中,第三图像处理算法包括第一子算法和第二子算法,第一子算法依赖第一图像处理算法,第二子算法依赖第一图像处理算法和第二图像处理算法;注册信息包括第一图像处理算法的标识,预设算法包括第一子算法;若第一图像处理算法的标识与注册信息相匹配,并行执行预设算法和第一图像处理算法的下一个算法包括:若第一图像处理算法的标识与注册信息相匹配,并行执行第一子算法和第二图像处理算法,再执行第二子算法。
基于本申请提供的方法,预设算法的粒度可以定义地更小,对于第三图像处理算法所包括的第一子算法仅依赖第一图像处理算法,即第二图像处理算法和第一子算法之间没有依赖关系的情况,可以根据第一图像处理算法的标识来匹配注册信息中各个预设算法依赖的算法的标识。若第一图像处理算法的标识与注册信息中第三图像处理算法所包括的第一子算法依赖的算法的标识相匹配,表示第一图像处理算法是第一子算法所依赖的算法,从而在第一图像处理算法执行完毕后,可以并行执行第三图像处理算法所包括的第一子算法和和第二图像处理算法,再执行第二子算法。相比现有技术,串行执行第一图像处理算法的下一个算法和第三图像处理算法所包括的第一子算法导致的拍摄流程的处理时间较长的问题,基于本申请提供的方法,可以并行执行第三图像处理算法所包括的第一子算法和第一图像处理算法的下一个算法,然后再执行第三图像处理算法所包括的第二子算法。从而提升了并行处理拍摄流程的精确度。
在第一方面的另一种可能的实施方式中,执行至少一个图像处理算法中的第一图像处理算法包括:
在第一线程中执行第一图像处理算法;并行执行预设算法和第一图像处理算法的下一个算法包括:在第一线程中执行第一图像处理算法的下一个算法,在第二线程中执行预设算法。
基于本申请提供的方法,可以在第一图像处理算法执行完毕后,在原有线程中继续执行第一图像处理算法的下一个算法,并开启一个新线程,并在新线程中执行预设算法。这样,可以同时在两个不同的线程中并行执行互相之间没有依赖关系的算法,能够充分的利用CPU,提高系统的可伸缩性,从而实现了提高拍摄的性能的技术效果。
在第一方面的另一种可能的实施方式中,执行至少一个图像处理算法中的第一图像处理算法包括:在第一线程中执行第一图像处理算法;并行执行预设算法和第一图像处理算法的下一个算法包括:当预设算法的数量大于预设数量时,启动预设数量个第二线程,其中,预设数量为电子设备的中央处理器的核心数;在第一线程中执行第一图像处理算法的下一个算法,并在预设数量个第二线程中执行预设算法。
由于每个线程本身有独立的栈空间,过多则会占用内存资源。基于本申请提供的方法,当匹配到的预设算法的数量较多时,可以启动预设数量个第二线程,而不是启动较多数量的线程。这样不仅可以减少占用的内存资源,还可以降低中央处理器因频繁的线程切换导致的消耗。
在第一方面的另一种可能的实施方式中,第一图像处理算法执行完毕后生成触发事件,触发事件携带第一图像处理算法的执行结果以及第一图像处理算法的标识;将第一图像处理算法的标识与注册信息进行匹配包括:将触发事件中携带的第一图像处理算法的标识与注册信息中的预设算法依赖的算法的标识相匹配。
基于本申请提供的方法,当电子设备监听到第一图像处理算法对应的触发事件时,可以将触发事件携带的第一图像处理算法的标识与注册信息中的预设算法依赖的算法的标识进行匹配,从而可以准确地执行监听匹配的处理过程。
在第一方面的另一种可能的实施方式中,当前拍摄模式为美颜模式,第一图像处理算法为人脸识别算法,第二图像处理算法为美肤算法,第三图像处理算法为年龄识别算法;注册信息包括人脸识别算法的标识,预设算法包括年龄识别算法;当人脸识别算法执行完毕后,将人脸识别算法的标识与注册信息进行匹配;若人脸识别算法的标识与注册信息相匹配,并行执行年龄识别算法和美肤算法。
基于本申请提供的方法,当人脸识别算法执行完毕后,将人脸识别算法的标识与注册信息进行匹配,注册信息包括年龄识别算法依赖的算法的标识;若人脸识别算法的标识与注册信息相匹配,表示人脸识别算法是年龄识别算法所依赖的算法,从而在人脸识别算法执行完毕后,可以并行执行年龄识别算法和人脸识别算法的下一个算法。相比现有技术,串行执行美颜模式对应的各个图像处理算法导致不能充分利用CPU,可伸缩性不高的问题,基于本申请提供的方法,可以并行执行美颜模式下没有依赖关系的图像处理算法,可以缩短拍摄流程的处理时间,能够充分的利用CPU,提高系统的可伸缩性,从而实现了提高拍摄的性能的技术效果。
第二方面,本申请提供一种电子设备,该电子设备包括:无线通信模块、存储器和一个或多个处理器。该无线通信模块、存储器与处理器耦合。其中,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令。当计算机指令被处理器执行时,使得电子设备执行如第一方面及其任一种可能的实施方式的方法。
第三方面,本申请提供一种电子设备,该电子设备包括:无线通信模块、存储器和一个或多个处理器。该无线通信模块、存储器与处理器耦合。其中,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令。当该计算机指令被处理器执行时,使得电子设备执行如下步骤:识别当前拍摄模式,当前拍摄模式对应至少一个图像处理算法;遍历至少一个图像处理算法得到注册信息,注册信息包括预设算法依赖的算法的标识,预设算法是至少一个图像处理算法中不依赖于前一个或前M个连续算法的算法,其中,M为大于或等于2的整数;执行至少一个图像处理算法中的第一图像处理算法,当第一图像处理算法执行完毕后,将第一图像处理算法的标识与注册信息进行匹配;若第一图像处理算法的标识与注册信息相匹配,并行执行预设算法和第一图像处理算法的下一个算法。
在第三方面的另一种可能的实施方式中,上述至少一个图像处理算法包括第一图像处理算法、第二图像处理算法和第三图像处理算法,第一图像处理算法、第二图像处理算法和第三图像处理算法依次排列,第二图像处理算法和第三图像处理算法依赖第一图像处理算法,第二图像处理算法和第三图像处理算法之间没有依赖关系。上述注册信息包括第一图像处理算法的标识,预设算法包括第三图像处理算法。
当上述计算机指令被处理器执行时,使得电子设备还执行如下步骤:若第一图像处理算法的标识与注册信息相匹配,并行执行第二图像处理算法和第三图像处理算法。
在第三方面的另一种可能的实施方式中,若第三图像处理算法包括第一子算法和第二子算法,第一子算法依赖第一图像处理算法,第二子算法依赖第一图像处理算法和第二图像处理算法。上述注册信息包括第一图像处理算法的标识,预设算法包括第一子算法。
当上述计算机指令被处理器执行时,使得电子设备还执行如下步骤:若第一图像处理算法的标识与注册信息相匹配,并行执行第一子算法和第二图像处理算法,再执行第二子算法。
在第三方面的另一种可能的实施方式中,当上述计算机指令被处理器执行时,使得电子设备还执行如下步骤:在第一线程中执行第一图像处理算法;在第一线程中执行第一图像处理算法的下一个算法,在第二线程中执行预设算法。
在第三方面的另一种可能的实施方式中,当上述计算机指令被处理器执行时,使得电子设备还执行如下步骤:在第一线程中执行第一图像处理算法;当预设算法的数量大于预设数量时,启动预设数量个第二线程,其中,预设数量为电子设备的中央处理器的核心数;在第一线程中执行第一图像处理算法的下一个算法,并在预设数量个第二线程中执行预设算法。
在第三方面的另一种可能的实施方式中,当上述计算机指令被处理器执行时,使得电子设备还执行如下步骤:第一图像处理算法执行完毕后生成触发事件,触发事件携带第一图像处理算法的执行结果以及第一图像处理算法的标识;将触发事件中携带的第一图像处理算法的标识与注册信息中的预设算法依赖的算法的标识相匹配。
在第三方面的另一种可能的实施方式中,上述当前拍摄模式为美颜模式,第一图像处理算法为人脸识别算法,第二图像处理算法为美肤算法,第三图像处理算法为年龄识别算法。上述注册信息包括人脸识别算法的标识,预设算法包括年龄识别算法。
当上述计算机指令被处理器执行时,使得电子设备还执行如下步骤:当人脸识别算法执行完毕后,将人脸识别算法的标识与注册信息进行匹配;若人脸识别算法的标识与注册信息相匹配,并行执行年龄识别算法和美肤算法。
第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行如第一方面及其任一种可能的实施方式的方法。
第五方面,本申请提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得该计算机执行如第一方面及任一种可能的实施方式的方法。该计算机可以是上述电子设备。
第六方面,本申请提供一种芯片系统,该芯片系统包括一个或多个接口电路和一个或多个处理器。接口电路和处理器通过线路互联。该芯片系统应用于包括通信模块和存储器的电子设备;接口电路用于从存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令。当处理器执行计算机指令时,电子设备执行如第一方面及任一种可能的实施方式的方法。
可以理解地,上述提供的第二方面或第三方面及其任一种可能的实现方式所述的电子设备,第四方面所述的计算机存储介质,第五方面所述的计算机程序产品,以及第六方面所述的芯片系统所能达到的有益效果,可参考第一方面及其任一种可能的实施方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种电子设备的结构示意图;
图2为本申请实施例提供的一种电子设备的软件架构示意图;
图3为本申请实施例提供的又一种电子设备的软件架构示意图;
图4为本申请实施例提供的一种模块交互示意图;
图5A为本申请实施例提供的一种拍摄的示意图;
图5B为本申请实施例提供的另一种拍摄的示意图;
图6为本申请实施例提供的一种拍摄处理过程的示意图;
图7为本申请实施例提供的另一种拍摄处理过程的示意图;
图8为本申请实施例提供的又一种拍摄处理过程的示意图;
图9为本申请实施例提供的一种芯片系统的结构示意图。
具体实施方式
为了下述各实施例的描述清楚简洁及便于本领域技术人员容易理解,首先给出相关概念或技术的简要介绍。
拍摄场景,本申请实施例中,拍摄场景可以包括电子设备开启相机应用后在不同拍摄模式下拍摄(拍照或录像)的场景以及其他应用调用相机应用进行拍摄的拍摄场景。其中,电子设备开启相机应用后在不同拍摄模式下的拍摄场景可以包括电子设备处于多镜拍摄模式的场景和电子设备处于单镜拍摄模式的场景。其中:
多镜拍摄模式,指电子设备通过多个摄像头进行拍摄的模式。电子设备在多镜拍摄模式下,显示屏在拍摄预览界面中同时显示多个摄像头分别拍摄的图像,不同摄像头拍摄的图像可以拼接显示,或者以画中画的方式显示。其中,根据电子设备所用摄像头的类型,及不同摄像头拍摄的图像的显示方式,多镜拍摄可包括前后拍摄模式、后后拍摄模式、画中画拍摄模式、单前拍摄模式(简称为单前模式)、单后拍摄模式等子模式。在本申请实施例中,多镜拍摄可以包括多镜录像和多镜拍照。
前后拍摄模式,指电子设备可通过前置摄像头和后置摄像头同时进行拍摄的模式。电子设备处于前后拍摄模式时,可在拍摄预览界面中同时显示前置摄像头和后置摄像头所拍摄的图像(例如,第一图像、第二图像),第一图像与第二图像拼接显示。其中,当电子设备竖置时,第一图像与第二图像可上下拼接;当电子设备横置时,第一图像与第二图像可左右拼接。默认情况下,第一图像的显示面积与第二图像的显示面积一致。
后拍摄模式,指电子设备可通过两个后置摄像头(如果存在多个后置摄像头)同时进行拍摄的模式。电子设备处于后后拍摄模式时,电子设备可在拍摄预览界面中同时显示两个后置摄像头所拍摄的图像(例如,第一图像、第二图像),第一图像与第二图像拼接显示。其中,当电子设备竖置时,第一图像与第二图像可上下拼接;当电子设备横置时,第一图像与第二图像可左右拼接。
画中画拍摄模式,指电子设备可通过两个摄像头同时进行拍摄的模式。电子设备处于画中画拍摄模式时,可在拍摄预览界面中同时显示两个摄像头所拍摄的图像(例如,第一图像、第二图像)。其中,第二图像显示于拍摄预览界面的整个区域,第一图像叠放于第二图像上,且第一图像的显示面积小于第二图像的显示面积。默认情况下,第一图像可位于第二图像的左下方。上述两个摄像头可自由组合,例如可以为两个前置摄像头、两个后置摄像头或者一个前置摄像头和一个后置摄像头。
单前拍摄模式,指电子设备通过前置摄像头进行拍摄的模式。单后拍摄模式,指电子设备通过后置摄像头进行拍摄的模式。与普通的前置拍摄模式和后置拍摄模式不同的是,在多镜拍摄模式下的单前拍摄和单后拍摄的子模式下,用户可以使用多镜拍摄模式下的隔空换镜功能,即可以通过隔空手势切换摄像头,例如可以通过隔空手势从单前拍摄模式切换到单后拍摄模式,或者从单后拍摄模式切换到前后拍摄模式等,在此不做限定。
单镜拍摄模式,指电子设备仅通过一个摄像头进行拍摄的模式。电子设备在单镜拍摄模式下,在拍摄预览界面中仅显示一个摄像头拍摄的图像。其中,单镜拍摄可包括前置拍摄模式、后置拍摄模式等。
其中,前置拍摄模式,指电子设备通过前置摄像头进行拍摄的模式。电子设备处于前置拍摄模式时,可在拍摄预览界面实时显示该前置摄像头所拍摄的图像。
可选的,前置拍摄模式可以包括人脸识别、人脸解锁、人像、拍照(普通拍照)、录像、短视频、水印、延时摄影、动态照片等拍摄子模式。
后置拍摄模式,指电子设备通过后置摄像头进行拍摄的模式。电子设备处于后置拍摄模式时,可在拍摄预览界面实时显示该后置摄像头所拍摄的图像。
可选的,后置拍摄模式可以包括拍照(普通拍照)、高像素拍照、录像(普通录像)、60fps录像、短视频、水印、动态照片、慢动作拍摄、人像模式、大光圈、延时摄影(t ime lapse)、专业、超级微距等拍摄子模式。
后置拍摄模式和前置拍摄模式都可以包括拍照、录像、短视频、水印、动态照片、延时摄影等拍摄子模式,但由于启动的摄像头不同,后置拍摄模式下的拍照、录像、短视频、水印、动态照片、延时摄影等拍摄子模式与前置拍摄模式下的拍照、录像、短视频、水印、动态照片、延时摄影等拍摄子模式对应的摄像头模式(sensormode)可以不同。换句话说,后置拍摄模式下的拍照、录像、短视频、水印、动态照片、延时摄影等拍摄子模式对应的拍摄场景与前置拍摄模式下的拍照、录像、短视频、水印、动态照片、延时摄影等拍摄子模式对应的拍摄场景可以视为是不同的拍摄场景。
需要说明的是,上述“多镜拍摄模式”、“前后拍摄模式”、“画中画拍摄模式”、“后后拍摄模式”、“单镜拍摄模式”、“前置拍摄模式”、“后置拍摄模式”只是本申请实施例所使用的一些名称,其代表的含义在本申请实施例中已经记载,其名称并不能对本实施例构成任何限制。
其他应用调用相机应用进行拍摄的场景可以包括人脸识别场景、人脸解锁场景、人脸支付场景、拍照/录像功能调用场景。
其中,人脸解锁场景可以是指锁屏应用调用相机应用的拍摄功能,根据拍摄得到的图像进行人脸解锁的场景。
人脸识别场景可以是指银行应用、理财应用(例如,)等应用程序在进行身份验证时调用相机应用的拍摄功能,根据拍摄得到的图像进行人脸识别的场景。
人脸支付场景可以是指银行应用、理财应用(例如,)等应用程序在进行人脸支付时调用相机应用的拍摄功能,根据拍摄得到的图像进行人脸识别和支付的场景。
拍照/录像功能调用场景可以是指其他应用(例如, 等)调用相机应用的拍摄功能拍摄图片或视频的场景。
本申请实施例提供的拍摄性能优化方法可以应用于电子设备。电子设备例如可以为手机(包括折叠屏手机和直板手机)、平板电脑、台式机(桌面型电脑)、手持计算机、笔记本电脑(膝上型电脑)、超级移动个人计算机(u ltra-mobi le persona l computer,UMPC)、上网本、个人数字助理(persona l d igita l ass i stant,PDA)、增强现实(augmented rea l ity,AR)\虚拟现实(vi rtua l rea l ity,VR)设备等,本申请实施例对电子设备的具体形态不作特殊限制。
图1为本申请实施例提供的一种电子设备100的结构示意图。如图1所示,电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(un iversa lser ia lbus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscr iber ident ificat ion modu le,SIM)卡接口195等。
其中,传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本实施例示意的结构并不构成对电子设备100的具体限定。在另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(app l icat ion processor,AP),调制解调处理器,图形处理器(graph ics process ingun it,GPU),图像信号处理器(image s igna l processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(d igita l s igna l processor,DSP),基带处理器,和/或神经网络处理器(neura l-network process ing un it,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
充电管理模块140用于从充电器接收充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noi se amp l ifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。
无线通信模块160可以提供应用在电子设备100上的包括WLAN(如无线保真(wi reless fide l ity,Wi-Fi)网络),蓝牙(b l uetooth,BT),全球导航卫星系统(globa lnavigat ion sate l l ite system,GNSS),调频(frequency modu l at ion,FM),近距离无线通信技术(near fie ld commun icat ion,NFC),红外技术(infrared,I R)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(globa l system for mobi le commun ications,GSM),通用分组无线服务(genera l packet rad io service,GPRS),码分多址接入(code d ivi s ion mu lt ip le access,CDMA),宽带码分多址(wideband code d ivi sion mu lt ip le access,WCDMA),时分码分多址(t ime-d ivi s ion code d ivi s ionmu lt ip le access,TD-SCDMA),长期演进(long term evo l ut ion,LTE),BT,GNSS,WLAN,NFC,FM,和/或I R技术等。所述GNSS可以包括全球卫星定位系统(globa l pos ition ing system,GPS),全球导航卫星系统(globa lnavigat ion sate l l ite system,GLONASS),北斗卫星导航系统(beidou navigat ion sate l l ite system,BDS),准天顶卫星系统(quas i-zen ith sate l l ite system,QZSS)和/或星基增强系统(sate l lite based augmentat ion systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。该显示屏194包括显示面板。显示面板可以采用液晶显示屏(l iqu id crysta l d i sp l ay,LCD),发光二极管(l ight-emitt ing diode,LED),有机发光二极管(organ ic l ight-emitt ing d iode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(act ive-matr ix organ ic l ight emitt ingd iode,AMOLED),柔性发光二极管(f lex l ight-emitt ing d iode,FLED),Min i led,MicroLed,Micro-oLed,量子点发光二极管(quantum dot l ight emitt ing d iodes,QLED)等。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。ISP用于处理摄像头193反馈的数据。摄像头193用于捕获静态图像或视频。数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
摄像头193可以包括1~N个。每个摄像头包括感光元件(CCD/CMOS),可以通过感光元件(CCD/CMOS)进行感光,收集光子并转换成电荷。
例如,电子设备可以包括2个前置摄像头和3个后置摄像头。其中,前置摄像头可以包括前置主摄像头和TOF摄像头。其中,TOF摄像头可以包括TX和RX,TX可以用于发射光信号(红外光或激光脉冲),RX可以用于接收成像。TX例如可以为红外光发射器。RX例如可以为互补金属氧化物半导体(comp lementary meta l oxide semiconductor,CMOS)或者电荷耦合器件(charge coup led device,CCD)图像感应器。可选的,前置摄像头还可以包括前置副摄像头。
其中,后置摄像头例如可以包括后置主摄像头、广角摄像头(也可以称为超广角摄像头)和远焦摄像头等。当然,后置摄像头还可以包括其他类型的摄像头,例如,还可以包括深度摄像头模组、黑白摄像头模组、微距摄像头模组等,本申请不做限定。其中,后置主摄像头可以为广角摄像头,后置主摄像头与超广角摄像头的视角可以不同。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。例如,在本申请实施例中,处理器110可以通过执行存储在内部存储器121中的指令,内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universa l f l ash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口170D用于连接有线耳机。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。
以下实施例中的方法均可以在具有上述硬件结构的电子设备100中实现。
上述电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的系统为例,示例性说明电子设备100的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过接口通信。在一些实施例中,系统可以包括应用程序层,应用程序框架层,安卓运行时(Android runt ime)和系统库,硬件抽象层(hardware abstract ion l ayer,HAL)以及内核层。需要说明的是,本申请实施例以/>系统举例来说明,在其他操作系统中(例如IOS系统等),只要各个功能模块实现的功能和本申请的实施例类似也能实现本申请的方案。
其中,应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,无线局域网(wi re less loca l area networks,WLAN),蓝牙,音乐,视频,短信息、锁屏应用、设置应用等应用程序。当然,应用程序层还可以包括其他应用程序包,例如支付应用,购物应用、银行应用、聊天应用或理财应用等,本申请不做限定。
其中,相机应用具有拍摄和录像的功能,响应于用户打开相机应用的操作,电子设备可以进行拍摄或录像。可以理解的是,相机应用的拍摄和录像功能也可以被其他应用调用。例如,锁屏应用可以调用相机应用的拍摄功能,根据拍摄得到的图像进行人像识别或人脸解锁。
应用程序框架层为应用程序层的应用程序提供应用编程接口(app l icat ionprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。例如可以包括活动管理器、窗口管理器,内容提供器,视图系统,资源管理器,通知管理器和相机服务(Camera Service)等,本申请实施例对此不做任何限制。
其中,Camera Service可以在电子设备开机阶段启动,可以用于传递和保存摄像头的相关信息。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Med ia Librar ies),三维图形处理库(例如:OpenGL ES),2D图像引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
OpenGL ES用于实现三维图形绘图,图像渲染,合成,和图层处理等。
SGL是2D绘图的绘图引擎。
安卓运行时(Android Runt ime)包括核心库和虚拟机。Android Runt ime负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
HAL层是对Linux内核驱动程序的封装,向上提供接口,屏蔽低层硬件的实现细节。
HAL层中可以包括Wi-Fi HAL,音频(aud io)HAL和相机HAL等。
其中,相机HAL是摄像头(Camera)的核心软件框架。相机HAL中可以包括算法处理模块。其中,算法处理模块可以包括多种图像处理算法。例如,算法处理模块可以包括人脸识别算法、美肤算法、年龄识别算法、补光算法、瘦脸算法、亮眼算法、祛痘算法、去皱算法、滤镜算法、美妆算法、发型更换算法、马赛克算法、对比度算法、饱和度算法、锐化算法、背景虚化算法以及高动态范围图像算法等图像处理算法。
本申请实施例中,相机HAL中还可以包括并行管理模块。并行管理模块用于对相机HAL中所包括的多种图像处理算法进行异步流程控制。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动等。其中,摄像头驱动是Camera器件的驱动层,主要负责和硬件的交互。
本申请实施例中,摄像头驱动可以包括后置主摄像头对应的驱动、广角摄像头对应的驱动、远焦摄像头对应的驱动和前置摄像头对应的驱动等。其中,前置摄像头对应的驱动可以包括前置主摄像头对应的驱动和TOF摄像头对应的驱动。
硬件层包括显示器、摄像头等。其中,摄像头可以包括后置主摄像头、广角摄像头、远焦摄像头和前置摄像头等。其中,前置摄像头可以包括前置主摄像头和TOF摄像头等。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请的描述中,除非另有说明,“至少一个”是指一个或多个,“多个”是指两个或多于两个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
为了便于理解,以下结合附图对本申请实施例提供的拍摄性能优化方法进行具体介绍。
下面以电子设备为手机为例,对本申请实施例提供的拍摄性能优化方法所涉及的软件模块和模块间的交互进行说明。
如图3所示,响应于用户打开相机应用或者用户通过其他应用调用相机应用的操作,应用程序层的相机应用可以向应用程序框架层的相机服务发送拍摄请求。拍摄请求中可以包括当前拍摄场景对应的摄像头标识(ident ity,I D)、拍摄模式等参数。相机服务可以将拍摄请求发送至HAL层的相机HAL。相机HAL接收到拍摄请求后,可以向内核层的摄像头驱动发送当前拍摄场景对应的摄像头I D等参数。摄像头驱动可以根据当前拍摄场景对应的摄像头I D向硬件层中的相应的摄像头发送启动指令以启动(打开)相应摄像头。被打开的摄像头可以采集图像数据,并通过摄像头驱动将图像数据上报给相机HAL。相机HAL可以根据拍摄模式调用相应的图像处理算法对图像数据进行处理。
其中,拍摄模式可以包括多种,例如人像模式、夜景模式、大光圈模式以及美颜模式等。不同拍摄模式表示用户在拍摄图像时的需求不同。每个拍摄模式可以对应多个不同功能的图像处理算法,该多个图像处理算法具有预设的执行顺序。相机HAL可以根据不同的拍摄模式,以预设的执行顺序来调用不同功能的图像处理算法。例如,当拍摄模式为美颜模式时,相机HAL会依次调用人脸识别算法、美肤算法、年龄识别算法、补光算法、美白算法以及瘦脸算法等图像处理算法;当拍摄模式为夜景模时,相机HAL可以依次调用清晰化算法、提亮算法以及去噪算法等图像处理算法。
本申请实施例中,可以预先定义一个或多个拍摄模式对应的预设算法。对于每个拍摄模式来说,该拍摄模式对应的多个不同功能的图像处理算法中,若某个图像处理算法不依赖于其前一个算法或者其前若干个算法,可以将这个图像处理算法确定为该拍摄模式对应的预设算法。即拍摄模式对应的预设算法可以是该拍摄模式对应的多个不同功能的图像处理算法中不依赖于前一个或前M个连续算法的算法,M为大于或等于2的整数。以拍摄模式为美颜模式为例,美颜模式对应的图像处理算法的执行顺序可以为:人脸识别算法、美肤算法、年龄识别算法、补光算法等。由于年龄识别算法不依赖于其前一个算法,即美肤算法,而仅依赖于人脸识别算法,可以将年龄识别算法确定为美颜模式所对应的预设算法。可以对美颜模式所对应的预设算法,即对年龄识别算法定义依赖项,将年龄识别算法的依赖项定义为人脸识别算法。
或者,对于每个拍摄模式来说,该拍摄模式对应的多个不同功能的图像处理算法中,若存在连续Q个不存在依赖关系的算法,可以将该连续Q个算法中(Q-1)个算法确定为该拍摄模式对应的预设算法。若该拍摄模式对应的多个不同功能的图像处理算法中,存在多组不存在依赖关系的算法,每一组不存在依赖关系的算法包括至少两个算法,可以将每一组不存在依赖关系的算法中的至少一个算法确定为该拍摄模式对应的预设算法。
举例来说,若当前的拍摄模式为夜景模式,夜景模式对应6个不同功能的算法,执行顺序为算法1、算法2、算法3、算法4、算法5、算法6。其中,算法1不依赖于任何一个算法;算法2与算法3仅依赖于算法1;算法4与算法5仅依赖于算法3。由于算法2和算法3不存在依赖关系,算法4和算法5不存在依赖关系,因此可以将算法2或算法3作为预设算法,并可以将算法4或算法5作为预设算法。例如,可以将算法3和算法5确定为夜景模式下的预设算法;或者,可以将算法2和算法4确定为夜景模式下的预设算法;或者,可以将算法2和算法5确定为夜景模式下的预设算法;或者,可以将算法3和算法4确定为夜景模式下的预设算法。
本申请实施例以用户在相机应用中选择美颜模式进行拍摄的场景为例进行说明。当拍摄请求下发到HAL层的相机HAL时,相机HAL可以创建拍摄进程,在拍摄进程中执行包含人脸识别算法、年龄识别算法、美肤算法以及补光算法在内的多种图像处理算法。相机HAL执行图像处理算法的具体过程可以包括以下步骤:
步骤1,遍历美颜模式对应的至少一个图像处理算法得到注册信息。其中,注册信息包括遍历得到的预设算法的依赖项的标识(即预设算法依赖的算法的标识)。并行管理模块接收到注册信息后,可以以数据表的形式将预设算法的依赖项的标识存储在并行管理模块的数据库中。假设相机HAL中的图像处理算法的执行顺序为:人脸识别算法、美肤算法、年龄识别算法、补光算法等等。由于年龄识别算法不依赖于其前一个算法,即美肤算法,而仅依赖于人脸识别算法时,因而可以将年龄识别算法确定为美颜模式所对应的预设算法。可以将年龄识别算法的依赖项定义为人脸识别算法。假设人脸识别算法的标识为I D1,年龄识别算法的标识为I D3。如表1所示,表1中存储有美颜模式下的预设算法的依赖项的标识,由于预设算法(年龄识别算法)仅依赖于人脸识别算法,因而年龄识别算法的标识I D3所对应的依赖项的标识为人脸识别算法的标识I D1。可选的,注册信息还可以包括预设算法对应的函数(例如,启动函数)的信息,即表1中的字段还可以包括年龄识别算法所对应的函数(例如,启动函数)的信息(例如,名称、形参、实参等),本申请实施例对表1所包含的字段不作具体限定。
表1
步骤2,在主线程(第一线程)中执行人脸识别算法(第一图像处理算法)。
步骤3,人脸识别算法执行完毕后,继续在主线程执行美肤算法(第二图像处理算法)。
需要说明的是,根据相机HAL中预设的图像处理算法执行顺序,可以确定美肤算法在人脸识别算法执行完毕之后继续执行,因此人脸识别算法执行完毕后,可以继续在主线程执行美肤算法。
步骤4,人脸识别算法通知并行管理模块人脸识别算法执行完毕。
步骤5,当并行管理模块的监听逻辑监听到用于指示人脸识别算法执行完毕的触发事件时,并行管理模块执行匹配注册信息的操作。
其中,触发事件可以携带人脸识别算法执行完毕后得到的人脸框信息,人脸框信息是美肤算法和年龄识别算法所依赖的信息。
需要说明的是,在某个拍摄模式下,只有预设算法所对应的依赖项可以发送触发事件,以触发并行管理模块匹配注册信息。例如,对于美颜模式来说,该拍摄模式对应的多个不同功能的图像处理算法中,由于年龄识别算法为确定出的唯一的预设算法,而年龄识别算法对应的依赖项为人脸识别算法,因而美颜模式下只有人脸识别算法可以在执行完毕后发送触发事件,当并行管理模块的监听逻辑监听到人脸识别算法发送的触发事件时,可以执行匹配注册信息的操作。也就是说,并行管理模块的监听逻辑可以监听到注册信息中各个预设算法对应的各个依赖项所发送的触发事件,并执行匹配注册信息的操作。
在一种可能的设计中,可以将与触发事件匹配的算法的标识作为目标标识,并行管理模块查询存储有预设算法的依赖项的数据表,以确定数据表中是否存在某个或者若干个预设算法的标识对应的依赖项的标识与目标标识相匹配。若存在,则确定本次注册信息匹配成功;若不存在,则确定本次注册信息匹配失败。
可选的,触发事件中可以携带目标标识。或者,可以根据触发信息中携带的信息(例如,人脸框信息)确定目标标识。例如,若并行管理模块的监听逻辑监听到的触发事件携带有人脸框信息,则与该触发事件匹配的算法为人脸识别算法,那么目标标识就是人脸识别算法的标识(即I D1),并行管理模块查询存储有预设算法的依赖项的数据表(可参见上表1),以确定是否存在某个或者若干个预设算法的标识对应的依赖项的标识与I D1相匹配。当查询到I D3(年龄识别算法的标识)对应的依赖项的标识为与目标标识匹配的I D1时,判断本次注册信息匹配成功。
作为一种可选的实施方式,若当前的拍摄模式为夜景模式,夜景模式对应6个不同功能的算法,执行顺序为算法1、算法2、算法3、算法4、算法5、算法6。其中,算法1不依赖于任何一个算法;算法2与算法3仅依赖于算法1;算法4与算法5仅依赖于算法3。由于算法2和算法3不存在依赖关系,算法4和算法5不存在依赖关系,因此可以将算法2或算法3作为预设算法,并可以将算法4或算法5作为预设算法。例如,可以将算法3和算法5确定为夜景模式下的预设算法;或者,可以将算法2和算法4确定为夜景模式下的预设算法;或者,可以将算法2和算法5确定为夜景模式下的预设算法;或者,可以将算法3和算法4确定为夜景模式下的预设算法。在夜景模式下,(算法3、算法5)或(算法2、算法4)或(算法3、算法4)或(算法2、算法5)可以发送触发事件,并行管理模块执行监听逻辑以及匹配注册信息的具体过程可以参照上述执行逻辑。
步骤6,在注册信息匹配成功的情况下,创建一个新线程(第二线程)执行年龄识别算法(第三图像处理算法)。
需要解释的是,由于年龄识别算法不依赖于其前一个执行的算法(即美肤算法),因而在人脸识别算法执行完毕后,年龄识别算法可以与美肤算法并行执行。
在一种可能的设计中,人脸识别算法执行完毕后,可以继续在主线程执行年龄识别算法,而将美肤算法作为预设算法在新线程中执行。步骤7,当年龄识别算法和美肤算法的处理流程结束后,通知主线程来执行补光算法。
需要解释的是,由于补光算法依赖于年龄识别算法和美肤算法的执行结果,因而补光算法需要等待年龄识别算法和美肤算法执行完毕后再执行。
步骤8,执行补光算法。
需要说明的是,在注册信息匹配失败的情况下,当主线程中美肤算法执行完毕后,可以按照既定顺序继续串行执行年龄识别算法和补光算法。并行管理模块则继续执行监听逻辑,直至拍摄进程结束。当拍摄进程结束后,电子设备可以根据经过多种算法处理后的图像数据,来显示当前拍摄模式下拍摄的图像。即电子设备显示美颜模式下拍摄的图像。
基于本申请实施例提供的方法,并行执行互相之间没有依赖关系的图像处理算法,而不再局限于串行执行各个算法,可以缩短拍摄流程的处理时间,提高拍摄的性能。相比现有技术,单线程串行执行相机HAL中的各个图像处理算法导致不能充分利用CPU,可伸缩性不高的问题,本申请使用多线程并行执行多个图像处理算法,可以缩短拍摄流程的处理时间,能够充分的利用CPU,提高系统的可伸缩性,从而实现了提高拍摄的性能的技术效果。
如图4所示,本申请实施例提供一种拍摄性能优化方法,包括如下步骤:
401、响应于用户打开拍摄功能的操作,相机应用向应用框架层的相机服务发送拍摄请求。
响应于用户打开相机应用的操作,或者响应于用户通过其他应用调用相机应用的拍摄功能,相机应用识别当前拍摄场景,确定当前拍摄场景对应的摄像头(例如,第一摄像头)、拍摄模式等。
其中,拍摄请求中可以包括当前拍摄场景对应的摄像头I D、拍摄模式等参数。当前拍摄场景可以包括电子设备开启相机应用后在不同拍摄模式下拍摄(拍照或录像)的场景以及其他应用调用相机应用进行拍摄的拍摄场景,可以参考前文的描述,在此不做赘述。
402、相机服务将拍摄请求发送至HAL层的相机HAL。
403、相机HAL中的算法处理模块遍历各个预设算法的依赖项,并将这些预设算法的依赖项注册到并行管理模块。
需要说明的是,相机HAL可以根据拍摄请求中携带的拍摄模式,来按照既定顺序依次执行与拍摄模式相对应的各个图像处理算法。在本实施例中,电子设备为手机为例,如图5A所示,手机的主界面(即桌面)501中包括相机应用的图标502,手机可以接收用户对相机应用的图标502的点击操作,响应于该点击操作,手机可以打开相机应用。如图5B所示,响应于用户在相机应用的界面503中对“美颜”的拍摄模式的点击操作,手机可以将拍摄模式确定为美颜模式。
由于用户选择的是美颜模式,因而当用户点击拍摄控件505时,手机所接收到的拍摄请求中携带的拍摄模式为美颜模式,相机HAL中对应执行的图像处理算法包括:人脸识别算法、年龄识别算法、美肤算法以及补光算法等图像处理算法。
需要说明的是,可以预先定义一个或多个拍摄模式对应的预设算法。拍摄模式对应的预设算法可以是该拍摄模式对应的多个不同功能的图像处理算法中不依赖于前一个或前M个连续算法的算法,M为大于或等于2的整数。以拍摄模式为美颜模式为例,假设美颜模式对应的图像处理算法的既定执行顺序为:人脸识别算法、美肤算法、年龄识别算法、补光算法、……。在年龄识别算法不依赖于其前一个算法,即美肤算法,而仅依赖于人脸识别算法的情况下,可以将年龄识别算法确定为美颜模式下的预设算法,并将年龄识别算法的依赖项定义为人脸识别算法。
在遍历相机HAL中各个预设算法的依赖项的过程中,并行管理模块可以获取注册信息,其中,注册信息包括遍历得到的预设算法的依赖项,以将各个预设算法的依赖项存储至并行管理模块的数据库中。在一种可能的设计中,可以以数据表的形式将预设算法的依赖项存储在并行管理模块的数据库中(如上表1)。
在一种可能的设计中,还可以以更小的划分粒度来定义图像处理算法的依赖项。例如,可以以算法的阶段或者算法包括的函数为划分粒度来定义图像处理算法的依赖项。例如,假设年龄识别算法包括第一子算法和第二子算法。年龄识别算法的第一子算法不依赖于其前一个算法(即美肤算法),而仅依赖于人脸识别算法,年龄识别算法的第二子算法依赖于人脸识别算法和美肤算法。则可以将年龄识别算法的第一子算法确定为美颜模式下的预设算法。表2中存储有相机HAL所要执行的图像处理算法中预设算法(年龄识别算法的第一子算法)的依赖项(人脸识别算法)。其中,年龄识别算法的第一子算法的标识为I D3-1,人脸识别算法的标识为I D1。可选的,注册信息还可以包括预设算法对应的函数(例如,启动函数)的信息,即表2中的字段还可以包括年龄识别算法的第一子算法所对应的函数(例如,启动函数)的信息(例如,名称、形参、实参等),本申请实施例对表2所包含的字段不作具体限定。另外,图像处理算法也可以划分为多个阶段或多个函数,本申请实施例对于图像处理算法的划分粒度不做限定。
表2
404、相机HAL接收到拍摄请求后,向摄像头驱动发送当前拍摄场景对应的摄像头ID。
405、摄像头驱动向相应的摄像头(摄像头I D指示的摄像头)发送启动命令以打开相应的摄像头。
406、被打开的摄像头采集图像数据,并可以将采集到的图像数据上报给摄像头驱动,
407、摄像头驱动可以将当前摄像头的图像数据上报给相机HAL。
408、相机HAL在主线程中执行人脸识别算法。
需要说明的是,由于美颜模式对应的相机HAL中算法的既定执行顺序为:人脸识别算法、美肤算法、年龄识别算法、补光算法…,因而当人脸识别算法的处理流程结束后,可以继续执行步骤409。
409、相机HAL在主线程中继续调用美肤算法。
与此同时,当并行管理模块的监听逻辑监听到用于指示人脸识别算法的处理流程结束的触发事件时,可以执行步骤410。其中,触发事件可以携带人脸识别算法执行完毕后得到的人脸框信息,人脸框信息是美肤算法和年龄识别算法所依赖的信息。
410、并行管理模块匹配注册信息。
需要说明的是,在某个拍摄模式下,只有预设算法所对应的依赖项可以发送触发事件,以触发并行管理模块匹配注册信息。例如,对于美颜模式来说,人脸识别算法(预设算法)在执行完毕后发送触发事件,当并行管理模块的监听逻辑监听到人脸识别算法发送的触发事件时,可以执行匹配注册信息的操作。也就是说,并行管理模块的监听逻辑可以监听到注册信息中各个预设算法对应的各个依赖项所发送的触发事件,并执行匹配注册信息的操作。
在一种可能的设计中,可以将与触发事件匹配的算法的标识作为目标标识,并行管理模块查询存储有预设算法的依赖项的数据表,以确定数据表中是否存在某个或者若干个标识对应的依赖项的标识与目标标识相匹配。若存在,则确定本次注册信息匹配成功;若不存在,则确定本次注册信息匹配失败。可以根据触发信息中携带的信息(例如,人脸框信息)确定目标标识。例如,若并行管理模块的监听逻辑监听到的触发事件携带有人脸框信息,则与该触发事件匹配的算法为人脸识别算法,那么目标标识就是人脸识别算法的标识(即I D1),并行管理模块查询存储有预设算法的依赖项的数据表(可参见上表1),以确定是否存在某个或者若干个标识对应的依赖项的标识与I D1相匹配。当查询到I D3(年龄识别算法的标识)对应的依赖项的标识为与目标标识匹配的I D1时,判断本次注册信息匹配成功。
411、在注册信息匹配成功的情况下,启动一个新线程来执行与注册信息相匹配的图像处理算法。
需要解释的是,由于年龄识别算法仅依赖于人脸识别算法,而与其前一个执行的算法(即)美肤算法之间并无依赖关系,因而相机HAL可以启动一个新线程来执行年龄识别算法,以达到并行执行美肤算法和年龄识别算法的目的。这样,主线程中的美肤算法和新线程中的年龄识别算法并行执行,可以提高处理拍摄请求的速度,使得用户能够尽快获取经过美颜处理后的拍摄的图片,提升了用户的拍摄体验。
作为一种可选的实施方式,如图6中所示,假设在数据表(如表1)中查询到年龄识别算法的标识与算法5的标识所对应的依赖项的标识均与目标标识相匹配,那么相机HAL可以同时启动两个新线程来并行执行年龄识别算法和算法5。具体的,可以启动一个新线程(线程3),并在线程3中执行年龄识别算法;同时启动另一个新线程(线程4),并在线程4中执行算法5。
作为另一种可选的实施方式,如图7中所示,假设在数据表(如表1)中查询到年龄识别算法的标识与算法5的标识所对应的依赖项的标识均与目标标识相匹配,那么相机HAL可以启动一个新线程(线程3)来串行执行年龄识别算法和算法5。
需要说明的是,当在数据表(如表1)中查询到有P(P为大于或等于2的整数)个算法的依赖项的标识均与目标标识相匹配时,可以同时启动P个新线程,来并行执行这P个算法。在一种可能的设计中,还可以启动1个到(P-1)个新线程,来以串行执行和并行执行相结合的方式执行这P个算法。例如,当P=4时,可以启动2个新线程,可以在一个新线程中串行执行2个算法,在另外1个线程中并行执行其他2个算法。
在一种可能的设计中,由于线程数量较多往往会使得电子设备的中央处理器切换线程的开销较大,当匹配到较多数量的预设算法时,启动较少的线程(不超过中央处理器的核心数)可以在提升拍照处理流程的性能的同时,降低中央处理器因频繁的线程切换导致的消耗。同时。因而可以将电子设备的中央处理器的核心数作为预设数量,当查询到与目标标识相匹配的依赖项的标识的数量大于预设数量时,可以启动预设数量个新线程(第二线程)。在主线程(第一线程)中执行人脸识别算法的下一个算法,并在预设数量个第二线程中执行匹配到的预设算法。
作为又一种可选的实施方式,如图8所示,(请参照表2)假设在数据表(如表2)中查询到年龄识别算法的第一阶段的标识(I D3-1)所对应的依赖项的标识(I D1)与目标标识相匹配,那么相机HAL可以启动一个新线程(线程3)来执行年龄识别算法的第一阶段,以并行执行美肤算法和年龄识别算法的第一阶段。由于年龄识别算法的第二阶段依赖于年龄识别算法的第一阶段和美肤算法,因而可以在年龄识别算法的第一阶段和美肤算法并行执行完毕之后再执行年龄识别算法的第二阶段。
另外,在注册信息匹配失败的情况下,不启动新线程来执行图像处理算法,而是继续在主线程中串行执行各个图像处理算法。并行管理模块的监听逻辑会继续监听下一个触发事件,直至拍摄进程结束。
412、在主线程中继续执行补光算法。
其中,由于补光算法依赖于美肤算法和年龄识别算法,因而当美肤算法和年龄识别算法的处理流程结束后,可以在主线程中继续执行补光算法。
需要说明的是,当拍摄进程结束后,电子设备可以根据经过多种算法处理后的图像数据,来显示当前拍摄模式下拍摄的图像。即电子设备显示美颜模式下拍摄的图像。
在一种可能的设计中,可以在拍摄图像的属性信息中记录下拍摄图像对应的拍摄模式。当用户在拍摄时选择了普通模式,而在查看图库时,想要对某张图片以其他拍摄模式进行再次处理时,相机HAL对这张图片的处理方式可以参照本申请实施例中记载的并行处理的方式。
本申请一些实施例提供了一种电子设备,该电子设备可以包括:触摸屏、存储器和一个或多个处理器。该触摸屏、存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,电子设备可执行上述方法实施例中电子设备执行的各个功能或者步骤。该电子设备的结构可以参考图1所示的电子设备100的结构。
本申请实施例还提供一种芯片系统(例如,片上系统(system on a ch ip,SoC)),如图9所示,该芯片系统包括至少一个处理器901和至少一个接口电路902。处理器901和接口电路902可通过线路互联。例如,接口电路902可用于从其它装置(例如电子设备的存储器)接收信号。又例如,接口电路902可用于向其它装置(例如处理器901或者电子设备的触摸屏)发送信号。示例性的,接口电路902可读取存储器中存储的指令,并将该指令发送给处理器901。当所述指令被处理器901执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当所述计算机指令在上述电子设备上运行时,使得该电子设备执行上述方法实施例中电子设备执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read on ly memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种拍摄性能优化方法,应用于电子设备,其特征在于,包括:
识别当前拍摄模式,所述当前拍摄模式对应至少一个图像处理算法;
遍历所述至少一个图像处理算法得到注册信息,所述注册信息包括预设算法依赖的算法的标识,所述预设算法是所述至少一个图像处理算法中不依赖于前一个或前M个连续算法的算法,其中,M为大于或等于2的整数;
执行所述至少一个图像处理算法中的第一图像处理算法,当所述第一图像处理算法执行完毕后,将所述第一图像处理算法的标识与所述注册信息进行匹配;
若所述第一图像处理算法的标识与所述注册信息相匹配,并行执行所述预设算法和所述第一图像处理算法的下一个算法。
2.根据权利要求1所述的方法,其特征在于,
所述至少一个图像处理算法包括所述第一图像处理算法、第二图像处理算法和第三图像处理算法,所述第一图像处理算法、所述第二图像处理算法和所述第三图像处理算法依次排列,所述第二图像处理算法和所述第三图像处理算法依赖所述第一图像处理算法,所述第二图像处理算法和所述第三图像处理算法之间没有依赖关系;
所述注册信息包括所述第一图像处理算法的标识,所述预设算法包括所述第三图像处理算法;
所述若所述第一图像处理算法的标识与所述注册信息相匹配,并行执行所述预设算法和所述第一图像处理算法的下一个算法,包括:
若所述第一图像处理算法的标识与所述注册信息相匹配,并行执行所述第二图像处理算法和所述第三图像处理算法。
3.根据权利要求2所述的方法,其特征在于,所述第三图像处理算法包括第一子算法和第二子算法,所述第一子算法依赖所述第一图像处理算法,所述第二子算法依赖所述第一图像处理算法和所述第二图像处理算法;
所述注册信息包括所述第一图像处理算法的标识,所述预设算法包括所述第一子算法;
所述若所述第一图像处理算法的标识与所述注册信息相匹配,并行执行所述预设算法和所述第一图像处理算法的下一个算法包括:
若所述第一图像处理算法的标识与所述注册信息相匹配,并行执行所述第一子算法和所述第二图像处理算法,再执行所述第二子算法。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述执行所述至少一个图像处理算法中的第一图像处理算法包括:
在第一线程中执行所述第一图像处理算法;
所述并行执行所述预设算法和所述第一图像处理算法的下一个算法包括:
在所述第一线程中执行所述第一图像处理算法的下一个算法,在第二线程中执行所述预设算法。
5.根据权利要求1所述的方法,其特征在于,所述执行所述至少一个图像处理算法中的第一图像处理算法包括:
在第一线程中执行所述第一图像处理算法;
所述并行执行所述预设算法和所述第一图像处理算法的下一个算法包括:
当所述预设算法的数量大于预设数量时,启动所述预设数量个第二线程,其中,所述预设数量为所述电子设备的中央处理器的核心数;
在所述第一线程中执行所述第一图像处理算法的下一个算法,并在所述预设数量个第二线程中执行所述预设算法。
6.根据权利要求1-3或5任一项所述的方法,其特征在于,
所述第一图像处理算法执行完毕后生成触发事件,所述触发事件携带所述第一图像处理算法的执行结果以及所述第一图像处理算法的标识;
所述将所述第一图像处理算法的标识与所述注册信息进行匹配包括:
将所述触发事件中携带的所述第一图像处理算法的标识与所述注册信息中的所述预设算法依赖的算法的标识相匹配。
7.根据权利要求2或3所述的方法,其特征在于,
所述当前拍摄模式为美颜模式,所述第一图像处理算法为人脸识别算法,所述第二图像处理算法为美肤算法,所述第三图像处理算法为年龄识别算法;
所述注册信息包括所述人脸识别算法的标识,所述预设算法包括所述年龄识别算法;
当所述人脸识别算法执行完毕后,将所述人脸识别算法的标识与所述注册信息进行匹配;
若所述人脸识别算法的标识与所述注册信息相匹配,并行执行所述年龄识别算法和所述美肤算法。
8.一种电子设备,其特征在于,所述电子设备包括:无线通信模块、存储器和一个或多个处理器;所述无线通信模块、所述存储器与所述处理器耦合;
其中,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-7中任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,包括计算机指令;
当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-7中任一项所述的方法。
10.一种芯片系统,其特征在于,所述芯片系统包括一个或多个接口电路和一个或多个处理器;所述接口电路和所述处理器通过线路互联;
所述芯片系统应用于包括通信模块和存储器的电子设备;所述接口电路用于从所述存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述电子设备执行如权利要求1-7中任一项所述的方法。
CN202211736988.9A 2022-12-30 2022-12-30 一种拍摄性能优化方法和装置 Active CN116703692B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211736988.9A CN116703692B (zh) 2022-12-30 2022-12-30 一种拍摄性能优化方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211736988.9A CN116703692B (zh) 2022-12-30 2022-12-30 一种拍摄性能优化方法和装置

Publications (2)

Publication Number Publication Date
CN116703692A true CN116703692A (zh) 2023-09-05
CN116703692B CN116703692B (zh) 2024-06-07

Family

ID=87826427

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211736988.9A Active CN116703692B (zh) 2022-12-30 2022-12-30 一种拍摄性能优化方法和装置

Country Status (1)

Country Link
CN (1) CN116703692B (zh)

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004079523A2 (en) * 2003-02-28 2004-09-16 Aperio Technologies, Inc. Image processing and analysis framework
US20070269123A1 (en) * 2006-05-16 2007-11-22 Randall Don Briggs Method and apparatus for performing image enhancement in an image processing pipeline
US20150063778A1 (en) * 2013-09-04 2015-03-05 Samsung Electronics Co., Ltd. Method for processing an image and electronic device thereof
CN107680128A (zh) * 2017-10-31 2018-02-09 广东欧珀移动通信有限公司 图像处理方法、装置、电子设备及计算机可读存储介质
CN107820017A (zh) * 2017-11-30 2018-03-20 广东欧珀移动通信有限公司 图像拍摄方法、装置、计算机可读存储介质和电子设备
US20200244885A1 (en) * 2017-10-14 2020-07-30 Huawei Technologies Co., Ltd. Photographing method and electronic apparatus
CN112446832A (zh) * 2019-08-31 2021-03-05 华为技术有限公司 一种图像处理方法及电子设备
CN113037997A (zh) * 2021-01-28 2021-06-25 维沃移动通信有限公司 图像处理方法、装置和电子设备
WO2021217463A1 (zh) * 2020-04-28 2021-11-04 深圳市大疆创新科技有限公司 图像处理算法装置、图像处理方法及相机
CN113747060A (zh) * 2021-08-12 2021-12-03 荣耀终端有限公司 图像处理的方法、设备、存储介质及计算机程序产品
CN113810602A (zh) * 2021-08-12 2021-12-17 荣耀终端有限公司 一种拍摄方法及电子设备
CN113949803A (zh) * 2020-07-16 2022-01-18 华为技术有限公司 拍照方法及电子设备
CN113973189A (zh) * 2020-07-24 2022-01-25 荣耀终端有限公司 显示内容的切换方法、装置、终端及存储介质
CN114697527A (zh) * 2020-12-29 2022-07-01 华为技术有限公司 一种拍摄方法、系统及电子设备
CN114697732A (zh) * 2020-12-30 2022-07-01 华为技术有限公司 一种拍摄方法、系统及电子设备
CN114726950A (zh) * 2022-02-28 2022-07-08 荣耀终端有限公司 一种摄像头模组的开启方法和装置
CN115375315A (zh) * 2021-05-19 2022-11-22 中移动金融科技有限公司 无感支付方法、装置、电子设备及存储介质
CN115442517A (zh) * 2022-07-26 2022-12-06 荣耀终端有限公司 图像处理方法、电子设备及计算机可读存储介质

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004079523A2 (en) * 2003-02-28 2004-09-16 Aperio Technologies, Inc. Image processing and analysis framework
US20070269123A1 (en) * 2006-05-16 2007-11-22 Randall Don Briggs Method and apparatus for performing image enhancement in an image processing pipeline
US20150063778A1 (en) * 2013-09-04 2015-03-05 Samsung Electronics Co., Ltd. Method for processing an image and electronic device thereof
US20200244885A1 (en) * 2017-10-14 2020-07-30 Huawei Technologies Co., Ltd. Photographing method and electronic apparatus
CN107680128A (zh) * 2017-10-31 2018-02-09 广东欧珀移动通信有限公司 图像处理方法、装置、电子设备及计算机可读存储介质
CN107820017A (zh) * 2017-11-30 2018-03-20 广东欧珀移动通信有限公司 图像拍摄方法、装置、计算机可读存储介质和电子设备
CN112446832A (zh) * 2019-08-31 2021-03-05 华为技术有限公司 一种图像处理方法及电子设备
WO2021217463A1 (zh) * 2020-04-28 2021-11-04 深圳市大疆创新科技有限公司 图像处理算法装置、图像处理方法及相机
CN113949803A (zh) * 2020-07-16 2022-01-18 华为技术有限公司 拍照方法及电子设备
CN113973189A (zh) * 2020-07-24 2022-01-25 荣耀终端有限公司 显示内容的切换方法、装置、终端及存储介质
CN114697527A (zh) * 2020-12-29 2022-07-01 华为技术有限公司 一种拍摄方法、系统及电子设备
CN114697732A (zh) * 2020-12-30 2022-07-01 华为技术有限公司 一种拍摄方法、系统及电子设备
CN113037997A (zh) * 2021-01-28 2021-06-25 维沃移动通信有限公司 图像处理方法、装置和电子设备
CN115375315A (zh) * 2021-05-19 2022-11-22 中移动金融科技有限公司 无感支付方法、装置、电子设备及存储介质
CN113747060A (zh) * 2021-08-12 2021-12-03 荣耀终端有限公司 图像处理的方法、设备、存储介质及计算机程序产品
CN113810602A (zh) * 2021-08-12 2021-12-17 荣耀终端有限公司 一种拍摄方法及电子设备
CN114726950A (zh) * 2022-02-28 2022-07-08 荣耀终端有限公司 一种摄像头模组的开启方法和装置
CN115442517A (zh) * 2022-07-26 2022-12-06 荣耀终端有限公司 图像处理方法、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN116703692B (zh) 2024-06-07

Similar Documents

Publication Publication Date Title
US11947974B2 (en) Application start method and electronic device
CN114650363B (zh) 一种图像显示的方法及电子设备
CN109903260B (zh) 图像处理方法及图像处理装置
CN114726950A (zh) 一种摄像头模组的开启方法和装置
CN116074634B (zh) 一种曝光参数确定方法和装置
CN116315667A (zh) 数据传输方法、装置、设备及存储介质
CN113703894A (zh) 通知消息的显示方法和显示装置
CN116074623B (zh) 一种摄像头的分辨率选择方法和装置
CN116708751B (zh) 一种拍照时长的确定方法、装置和电子设备
CN115309547B (zh) 处理异步binder调用的方法和装置
CN116703692B (zh) 一种拍摄性能优化方法和装置
CN115686182B (zh) 增强现实视频的处理方法与电子设备
WO2022033344A1 (zh) 视频防抖方法、终端设备和计算机可读存储介质
CN117425227A (zh) 建立基于WiFi直接连接的会话的方法和装置
CN113688368A (zh) 一种跨设备认证的方法
CN115460343B (zh) 图像处理方法、设备及存储介质
CN116916148B (zh) 一种图像处理方法、电子设备及可读存储介质
CN116095224B (zh) 通知显示方法和终端设备
CN116668763B (zh) 录屏方法及装置
US12020472B2 (en) Image processing method and image processing apparatus
CN115002939B (zh) 加入WiFi群组的方法和装置
CN116051351B (zh) 一种特效处理方法和电子设备
CN116723382B (zh) 一种拍摄方法及相关设备
CN116052236A (zh) 人脸检测处理引擎、涉及人脸检测的拍摄方法及设备
CN117130680A (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