CN108848312A - 拍照预览方法、装置及电子设备 - Google Patents
拍照预览方法、装置及电子设备 Download PDFInfo
- Publication number
- CN108848312A CN108848312A CN201810875962.XA CN201810875962A CN108848312A CN 108848312 A CN108848312 A CN 108848312A CN 201810875962 A CN201810875962 A CN 201810875962A CN 108848312 A CN108848312 A CN 108848312A
- Authority
- CN
- China
- Prior art keywords
- image
- preview image
- anything
- preview
- photographing module
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 96
- 244000035744 Hura crepitans Species 0.000 claims abstract description 26
- 238000012545 processing Methods 0.000 claims description 97
- 239000000463 material Substances 0.000 claims description 55
- 230000006870 function Effects 0.000 claims description 52
- 238000012544 monitoring process Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 9
- 238000003860 storage Methods 0.000 claims description 9
- 230000000903 blocking effect Effects 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 32
- 230000001815 facial effect Effects 0.000 description 31
- 238000005457 optimization Methods 0.000 description 29
- 238000010586 diagram Methods 0.000 description 15
- 238000009826 distribution Methods 0.000 description 10
- 238000003709 image segmentation Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 239000012141 concentrate Substances 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 108010001267 Protein Subunits Proteins 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 238000003708 edge detection Methods 0.000 description 4
- 230000002708 enhancing effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 2
- 241000124033 Salix Species 0.000 description 2
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000003796 beauty Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 229910052802 copper Inorganic materials 0.000 description 2
- 239000010949 copper Substances 0.000 description 2
- 229910003460 diamond Inorganic materials 0.000 description 2
- 239000010432 diamond Substances 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002087 whitening effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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/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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Image Processing (AREA)
Abstract
本发明涉及拍照技术领域,具体而言,涉及一种拍照预览方法、装置及电子设备。拍照预览方法包括:监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览;若是监听到所述分身应用调用所述摄像模块进行画面预览,则拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像;对所述初始预览图像进行处理,获得待预览图像;将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。本发明实施例提供的拍照预览方法、装置及电子设备能够提高带有拍照功能的应用程序调用电子设备中的摄像模块进行画面预览采集的预览图像的图像质量。
Description
技术领域
本发明涉及拍照技术领域,具体而言,涉及一种拍照预览方法、装置及电子设备。
背景技术
随着科技的发展,越来越多的用户使用自带拍照功能的电子设备,例如手机和平板电脑,用户可以随时随地进行拍照。基于此,应用于电子设备的带有拍照功能的应用程序也层出不穷。
目前,带有拍照功能的应用程序在预览图像时,都是直接调用电子设备中的摄像模块进行画面预览。但是由于拍摄角度、拍摄环境等问题,预览图像质量可能较差。故而,如何处理质量较差的预览图像是目前亟需解决的技术难题。
发明内容
有鉴于此,本发明实施例的目的在于提供一种拍照预览方法、装置及电子设备,以有效改善上述问题。
本发明实施例提供的拍照预览理方法,包括:
监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览;
若是监听到所述分身应用调用所述摄像模块进行画面预览,则拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像;
对所述初始预览图像进行处理,获得待预览图像;
将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。
进一步地,所述对所述初始预览图像进行处理,获得待预览图像,包括:
从所述摄像模块的图像存储库中选取目标图像;
利用所述目标图像对所述初始预览图像进行替换,并将替换后的图像作为所述待预览图像。
进一步地,所述从所述摄像模块的图像存储库中选取目标图像,包括:
从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像。
进一步地,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像,包括:
对所述初始预览图像进行特征识别,以获得所述初始预览图像的第一特征集;
对所述摄像模块的图像存储库中的各图像进行特征识别,以获得各图像的第二特征集;
分别计算所述摄像模块的图像存储库中各图像的第二特征集与所述第一特征集的相似度;
将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
进一步地,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像,还包括:
对与所述第一特征集的相似度最大的第二特征集对应的图像进行质量系数评估;
若质量系数评估结果达到预设要求,则执行将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像的步骤。
进一步地,所述从所述摄像模块的图像存储库中选取目标图像,包括:
从所述摄像模块的图像存储库中选取与所述初始预览图像的图像内容不同的图像,作为目标图像。
进一步地,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的图像内容不同的图像,作为目标图像,包括:
从所述摄像模块的图像存储库中随机选取一张待对比图像;
将所述待对比图象的图像内容与所述初始预览图像的图像内容进行对比,以判断所述待对比图像的图像内容是否与所述初始预览图像的图像内容不同;
若所述待对比图像的图像内容与所述初始预览图像的图像内容不同,则将所述待对比图像确定为所述目标图像。
进一步地,所述利用所述目标图像对所述初始预览图像进行替换,并将替换后的图像作为所述待预览图像,包括:
对所述初始预览图像进行分割,获得待替换区域图像和保留区域图像;
对所述目标图像进行分割,获得目标区域图像;
利用所述目标区域图像对所述待替换区域图像进行替换,获得包括所述目标区域图像和所述保留区域图像的待预览图像。
进一步地,所述对所述初始预览图像进行处理,获得待预览图像,包括:
对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像。
进一步地,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,包括:
当所述初始预览图像为人物图像时,确定所述人物图像中包括的人像区域,并从所述人像区域中定位人脸图像;
对所述人脸图像进行美颜处理。
进一步地,所述对所述人脸图像进行美颜处理,包括:
确定所述人脸图像的个性特征;
选取与所述个性特征对应的美颜处理逻辑;
根据选取的所述美颜处理逻辑对所述人脸图像进行美颜处理。
进一步地,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,还包括:
当所述初始预览图像为人物图像时,确定所述人物图像包括的非人像区域;
对所述非人像区域的图像质量进行优化处理。
进一步地,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,还包括:
对所述非人像区域的图像质量进行评估;
若质量系数评估结果未达到预设要求,则执行对所述非人像区域的图像质量进行优化处理的步骤。
进一步地,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,包括:
当所述初始预览图像为非人物图像时,对所述初始预览图像的图像质量进行优化处理。
进一步地,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,还包括:
对所述初始预览图像进行质量系数进行评估;
若质量系数评估结果未达到预设要求,则执行对所述初始预览图像的图像质量进行优化处理的步骤。
进一步地,所述对所述初始预览图像进行处理,获得待预览图像之前,所述方法还包括:
向所述分身应用发送图像处理请求,以使所述分身应用根据所述图像处理请求或用户触发的指令生成请求生成处理指令,并返回;
接收所述分身应用返回的处理指令,以根据所述处理指令执行对所述初始预览图像进行处理,获得待预览图像的步骤。
进一步地,所述监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览,包括:
通过钩子函数监听所述分身应用是否利用画面预览指令调用所述摄像模块;
当所述钩子函数监听到所述分身应用利用所述画面预览指令调用所述摄像模块时,表示监听到所述分身应用调用所述摄像模块进行画面预览。
本发明实施例提供的拍照预览装置,包括:
分身应用监听模块,用于监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览;
图像拦截模块,用于在所述分身应用监听模块监听到所述分身应用调用所述摄像模块进行画面预览时,拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像;
图像处理模块,用于对所述初始预览图像进行处理,获得待预览图像;
图像发送模块,用于将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。
进一步地,所述图像处理模块,包括:
目标图像选取子模块,用于从所述摄像模块的图像存储库中选取目标图像;
第一图像处理子模块,用于利用所述目标图像对所述初始预览图像进行替换,并将替换后的图像作为所述待预览图像。
进一步地,所述目标图像选取子模块,包括:
第一目标图像选取单元,用于从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像。
进一步地,所述第一目标图像选取单元,包括:
第一特征集选取子单元,用于对所述初始预览图像进行特征识别,以获得所述初始预览图像的第一特征集;
第二特征集选取子单元,用于对所述摄像模块的图像存储库中的各图像进行特征识别,以获得各图像的第二特征集;
相似度计算子单元,用于分别计算所述摄像模块的图像存储库中各图像的第二特征集与所述第一特征集的相似度;
第一目标图像确定子单元,用于将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
进一步地,所述第一目标图像选取单元,还包括:
第一质量系数评估子单元,用于对与所述第一特征集的相似度最大的第二特征集对应的图像进行质量系数评估;
第一评估结果判断子单元,用于在质量系数评估结果达到预设要求时,使所述第一目标图像确定子单元执行将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像的动作。
进一步地,所述目标图像选取子模块,包括:
第二目标图像选取单元,用于从所述摄像模块的图像存储库中选取与所述初始预览图像的图像内容不同的图像,作为目标图像。
进一步地,所述第二目标图像选取单元,包括:
待对比图像选取子单元,用于从所述摄像模块的图像存储库中随机选取一张待对比图像;
图像内容对比子单元,用于将所述待对比图象的图像内容与所述初始预览图像的图像内容进行对比,以判断所述待对比图像的图像内容是否与所述初始预览图像的图像内容不同;
第二目标图像确定子单元,用于在所述待对比图像的图像内容与所述初始预览图像的图像内容不同时,将所述待对比图像确定为所述目标图像。
进一步地,所述第一图像处理子模块,包括:
第一图像分割单元,用于对所述初始预览图像进行分割,获得待替换区域图像和保留区域图像;
第二图像分割单元,用于对所述目标图像进行分割,获得目标区域图像;
图像替换单元,用于利用所述目标区域图像对所述待替换区域图像进行替换,获得包括所述目标区域图像和所述保留区域图像的待预览图像。
进一步地,所述图像处理模块,包括:
第二图像处理子模块,用于对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像。
进一步地,所述第二图像处理子模块,包括:
人脸图像定位单元,用于当所述初始预览图像为人物图像时,确定所述人物图像中包括的人像区域,并从所述人像区域中定位人脸图像;
美颜处理单元,用于对所述人脸图像进行美颜处理。
进一步地,所述美颜处理单元,包括:
个性特征确定子单元,用于确定所述人脸图像的个性特征;
美颜处理逻辑选取子单元,用于选取与所述个性特征对应的美颜处理逻辑;
美颜处理子单元,用于根据选取的所述美颜处理逻辑对所述人脸图像进行美颜处理。
进一步地,所述第二图像处理子模块,还包括:
非人像区域确定子单元,用于当所述初始预览图像为人物图像时,确定所述人物图像包括的非人像区域;
第一图像质量优化子单元,用于对所述非人像区域的图像质量进行优化处理。
进一步地,所述第二图像处理子模块,还包括:
第二质量系数评估子单元,用于对所述非人像区域的图像质量进行评估;
第二评估结果判断子单元,用于在质量系数评估结果未达到预设要求时,使所述第一图像质量优化子单元执行对所述非人像区域的图像质量进行优化处理的步骤。
进一步地,所述第二图像处理子模块,包括:
图像质量优化单元,用于当所述初始预览图像为非人物图像时,对所述初始预览图像的图像质量进行优化处理。
进一步地,所述第二图像处理子模块,还包括:
质量系数评估单元,用于对所述初始预览图像进行质量系数进行评估;
评估结果判断单元,用于在质量系数评估结果未达到预设要求,使所述图像质量优化单元执行对所述初始预览图像的图像质量进行优化处理的步骤。
进一步地,所述拍照预览装置,还包括:
图像处理请求发送模块,用于向所述分身应用发送图像处理请求,以使所述分身应用根据所述图像处理请求或用户触发的指令生成请求生成处理指令,并返回;
处理指令接收模块,用于接收所述分身应用返回的处理指令,以使所述图像处理模块根据所述处理指令执行对所述初始预览图像进行处理,获得待预览图像的动作。
进一步地,所述分身应用监听模块,包括:
分身应用监听子模块,用于通过钩子函数监听所述分身应用是否利用画面预览指令调用所述摄像模块;
采集动作确定子模块,用于当所述钩子函数监听到所述分身应用利用所述画面预览指令调用所述摄像模块时,表示监听到所述分身应用调用所述摄像模块进行画面预览。
本发明实施例提供的电子设备,包括处理器、存储器和上述拍照预览装置,所述拍照预览装置包括一个或多个存储于所述存储器并由所述处理器执行的软件功能模块。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时,可实现上述拍照预览方法。
本发明实施例提供的拍照预览方法、装置及电子设备能够监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览,并在监听到所述分身应用调用所述摄像模块进行画面预览,拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像,对所述初始预览图像进行处理,获得待预览图像,将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。如此,即便是分身应用在调用电子设备中的摄像模块进行画面预览时采集了质量差的图像(例如,初始预览图像),通过本发明实施例提供的拍照预览方法及装置也可以拦截该初始预览图像,不会直接将初始预览图像发送给分身应用展示,而是对其进行处理得到质量较好的图像(例如,待预览图像),然后发送给分身应用展示。故而,本发明实施例提供的拍照预览方法、装置及电子设备能够提高带有拍照功能的应用程序调用电子设备中的摄像模块进行画面预览采集的预览图像的图像质量。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的电子设备的示意性结构框图。
图2为本发明实施例提供的拍照预览方法的流程示意图。
图3为图2所示拍照预览方法中步骤S300的一种子步骤流程示意图。
图4为本发明实施例提供的拍照预览装置的示意性结构框图。
图标:100-电子设备;110-拍照预览装置;111-分身应用监听模块;112-图像拦截模块;113-图像处理模块;114-图像发送模块;120-处理器;130-存储器。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
请参阅图1,为本发明实施例提供的一种应用拍照预览方法及装置的电子设备100的示意性结构框图。其中,电子设备100可以是,但不限于手机、平板电脑、PDA(PersonalDigital Assistant,个人数字助理)等。进一步地,本发明实施例中,该电子设备100包括拍照预览装置110、处理器120和存储器130。
处理器120和存储器130之间直接或间接地电性连接,以实现数据的传输或交互,例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。拍照预览装置110包括至少一个可以软件或固件(Firmware)的形式存储在存储器130中或固化在电子设备100的操作系统(Operating System,OS)中的软件模块。处理器120用于执行存储器130中存储的可执行模块,例如,拍照预览装置110所包括的软件功能模块及计算机程序等。处理器120可以在接收到执行指令后,执行计算机程序。
其中,处理器120可以是一种集成电路芯片,具有信号处理能力。处理器120也可以是通用处理器,例如,可以是数字信号处理器(DSP)、专用集成电路(ASIC)、分立门或晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。此外,通用处理器可以是微处理器或者任何常规处理器等。
存储器130可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦可编程序只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦编程只读存储器Electric Erasable Programmable Read-Only Memory,EEPROM)等。存储器130用于存储程序,处理器120在接收到执行指令后,执行该程序。
应当理解,图1所示的结构仅为示意,本发明实施例提供的电子设备100还可以具有比图1更少或更多的组件,或是具有与图1所示不同的配置。此外,图1所示的各组件可以通过软件、硬件或其组合实现。
请参阅图2,图2为本发明实施例提供的拍照预览方法的流程示意图,该拍照预览方法应用于图1所示的电子设备,下面结合图2对该拍照预览方法的具体流程及步骤进行详细阐述。需要说明的是,本发明实施例提供的拍照预览方法的实施过程都是在沙箱中实现的。
步骤S100,监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览。
沙箱是一个允许在其环境中运行浏览器或其他应用程序(例如,被监听的分身应用)的虚拟系统程序。分身应用则是安装于电子设备的原生应用程序的分身,是利用分身技术对原生应用程序进行分身而来,具备原生应用程序的所有功能,能够提供与原生应用程序完全相同的服务。本发明实施例中,分身应用可以是QQ、微信、钉钉、263云通信等能够调用电子设备中的摄像模块进行拍照的应用程序的分身。
在实际实施时,沙箱可以利用钩子函数监听分身应用,以判断分身应用是否调用电子设备中的摄像模块进行画面预览。
此处,术语“钩子”涵盖了用于通过拦截在软件组件之间传递的函数调用、消息、或事件来改变或增加操作系统、应用程序、或其他软件组件的行为的技术,而处理这种被拦截的函数调用、事件或消息的代码就被称为钩子函数,即hook函数。钩子通常用于各种目标,包括对功能进行调试和对功能进行扩展,其示例可以包括在键盘或鼠标事件传递到目标应用程序之前拦截它们,或拦截系统调用(system call)、系统函数行为、函数执行结果等,以监听或修改应用程序或其他组件的功能等。
进一步地,本发明实施例中,可以通过钩子函数监听分身应用是否利用画面预览指令调用电子设备中的摄像模块,当钩子函数监听到分身应用利用画面预览指令调用摄像模块时,表示监听到分身应用调用摄像模块进行画面预览。其中,画面预览指令可以为摄像模块中与拍照对应的jni方法,具体为android.hardware.Camera方法setHasPreviewCallback。
步骤S200,若是监听到分身应用调用摄像模块进行画面预览,则拦截分身应用调用摄像模块进行画面预览所采集的初始预览图像。
在实际实施时,同样可以通过钩子函数拦截分身应用调用摄像模块进行画面预览所采集的初始预览图像。例如,可以通过钩子函数对摄像模块的回调接口进行接管,使得沙箱可以得到对摄像模块的管理权限,从而可以拦截到摄像模块所采集的初始预览图像,具体地,可以将回调接口mPreviewCallback修改为MyPreviewCallback。此后,将摄像模块所采集的初始预览图像调用至沙箱,具体代码实现如下:
MyPreviewCallback onPreview Frame(byte[]data,Camera camera),其中,data数组即为初始预览图像。
步骤S300,对初始预览图像进行处理,获得待预览图像。
初始预览图像为分身应用调用电子设备中的摄像模块进行画面预览所采集的图像,由于拍摄角度、拍摄环境等问题,初始预览图像的质量可能较差,因此,对初始预览图像进行处理后可以得到质量较好的待预览图像。
在实际实施时,可以利用其他图像对始预览图像进行替换,并将替换后的图像作为待预览图像,也可以直接对初始预览图像进行质量优化处理,并将经过质量优化处理后的初始预览图像作为待预览图像。
因此,请结合图3,本发明实施例中,作为第一种实施方式,步骤S300可以包括步骤S310和步骤S320两个子步骤。
步骤S310,从摄像模块的图像存储库中选取目标图像。
摄像模块的图像存储库中存储的图像包括应用于该电子设备的所有应用程序(包括被监听的分身应用)调用该摄像模块所拍摄的历史图像。本发明实施例中,从摄像模块的图像存储库中选取的目标图像可以包括,但不限于与初始预览图像相似的图像,以及与初始预览图像的图像内容不同的图像等。
基于以上描述,步骤S310可以具体为,从摄像模块的图像存储库中选取与初始预览图像的相似度最大的图像,作为目标图像。
为实现上述方案,首先,可以对初始预览图像进行特征识别,以获得初始预览图像的第一特征集。例如,可以对初始预览图像进行边缘检测,根据闭合的边缘确定初始预览图像的至少一个第一特征区域,作为初始预览图像的第一特征集。另外,对摄像模块的图像存储库中的各图像进行特征识别,以获得各图像的第二特征集。同样,针对于图像存储库中的各图像,可以对该图像进行边缘检测,根据闭合的边缘确定该图像的至少一个第二特征区域,作为该图像的第二特征集。在获得初始预览图像的第一特征集和摄像模块的图像存储库中的各图像的第二特征集后,分别计算摄像模块的图像存储库中各图像的第二特征集与第一特征集的相似度,将与第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
进一步地,当第一特征集中包括一个第一特征区域时,分别计算图像存储库中各图像的第二特征集中包括的各第二特征区域与第一特征区域的相似度,确定与第一特征区域的相似度最大的第二特征区域,并将与该第二特征区域所属的第二特征集对应的图像作为目标图像。当第一特征集中包括多个第一特征区域时,针对于摄像模块的图像存储库中的各图像,分别将该图像的第二特征集中包括的各第二特征区域与第一特征集中包括的各第一特征区域进行相似度匹配,以确定该图像的第二特征集中与各第一特征区域匹配的第二特征区域,再针对于第一特征集中包括的各第一特征区域,计算该第一特征区域与匹配的第二特征区域的相似度,此后,根据第一特征集中包括的各第一特征区域与匹配的第二特征区域的相似度获得第一特征集与该图像的第二特征集的相似度,最后,将与第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
为了保证选取的目标图像具有较好的质量,本发明实施例中,还可以预先对与第一特征集的相似度最大的第二特征集对应的图像进行质量系数评估,若质量系数评估结果达到预设要求,再将与第一特征集的相似度最大的第二特征集对应的图像作为目标图像。其中,质量系数评估可以通过边缘强度、噪声率、统一亮度分布等来制定图像评价因子,本发明实施例对此不作具体限制。
步骤S310还可以具体为,从摄像模块的图像存储库中选取与初始预览图像的图像内容不同的图像,作为目标图像。
为实现上述方案,首先,可以从摄像模块的图像存储库中随机选取一张待对比图像,再将待对比图象的图像内容与初始预览图像的图像内容进行对比,以判断待对比图像的图像内容是否与初始预览图像的图像内容不同,若待对比图像的图像内容与初始预览图像的图像内容不同,则将待对比图像确定为目标图像。
同样,为了保证选取的目标图像具有较好的质量,本发明实施例中,还可以预先对随机选取的待对比图像进行质量系数评估,若质量系数评估结果达到预设要求,再将待对比图象的图像内容与初始预览图像的图像内容进行对比。其中,质量系数评估可以通过边缘强度、噪声率、统一亮度分布等来制定图像评价因子,本发明实施例对此不作具体限制。
步骤S320,利用目标图像对初始预览图像进行替换,并将替换后的图像作为待预览图像。
在实际实施时,可以先对目标图像进行二进制化处理,再利用二进制化处理之后的目标图像对初始预览图像进行替换。
此外,为了满足多样化的应用需求,在实际实施时,利用目标图像对初始预览图像进行替换可以是利用目标图像对初始预览图像进行整体替换,也可以是利用目标图像对初始预览图像进行局部替换。
当利用目标图像对初始预览图像进行局部替换时,首先,可以对初始预览图像进行分割,获得待替换区域图像和保留区域图像,再对目标图像进行分割,获得目标区域图像,此后,利用目标区域图像对待替换区域图像进行替换,获得包括目标区域图像和保留区域图像的待预览图像。如此,当初始预览图像为人物图像时,便可以对初始预览图像进行人像区域替换或背景替换的操作,其中,人像区域替换又可以是人像区域整体替换,或人像区域中人脸图像的单独替换,再或人像区域中躯干部分的单独替换。
本发明实施例中,作为第二种实施方式,步骤S300还可以具体为,对初始预览图像进行美化处理,将经过美化处理的初始预览图像,作为待预览图像。
在实际实施时,不同类型的图像可以采取不同的美化处理方式,以保证较好的美化处理效果。例如,在处理人物图像时,可以对人物图像中包括的人脸图像进行美颜处理,同时,也可以对人物图像中包括的非人像区域进行质量优化处理,又例如,在处理非人物图像时,可以直接对非人物图像进行质量优化处理。
基于以上描述,当初始预览图像为人物图像时,首先,可以确定人物图像中包括的人像区域,并从人像区域中定位人脸图像,再对人脸图像进行美颜处理。
人脸的五官结构非常相似,但还是具有明显的个性特征,包括,性别、脸型、眼形、胖瘦程度、肤色和纹理等,具有不同个性特征的人脸,往往需要采取不同的美颜处理逻辑进行处理,以保证较好的美颜处理效果。鉴于此,本发明实施例中,对于人脸图像的每项个性特征都做了具体划分,例如,性别可以划分为男性和女性,脸型可以划分为圆形脸、椭圆脸、长形脸、方形脸、菱形脸、正三角脸和倒三角脸,眼形可以划分为标准眼、丹凤眼、吊眼、柳叶眼、铜铃眼,胖瘦程度可以划分为肥胖、微胖、正常、偏瘦和过瘦,肤色可以按颜色由深到浅依次划分为肤色等级1、肤色等级2、肤色等级3、肤色等级4、肤色等级5和肤色等级6,纹理可以按清晰程度从清晰到模糊依次划分为纹理等级1、纹理等级2、纹理等级3、纹理等级4、纹理等级5和纹理等级6。进一步地,本发明实施例中,对每种类型的人脸特征都制定了对应的美颜处理逻辑,例如,不同的性别和脸型对应不同的眉形,不同的性别和眼形对应不同的眼妆效果,不同的胖瘦程度对应不同的瘦脸级别,不同的肤色对应不同的美白级别,不同的纹理对应不同的磨皮级别。
因此,本发明实施例中,对人脸图像进行美颜处理时,可以先确定人脸图像的个性特征,再选取与个性特征对应的美颜处理逻辑,此后,根据选取的美颜处理逻辑对人脸图像进行美颜处理。
进一步地,本发明实施例中,在确定人物图像中包括的人像区域的同时,还可以确定该人物图像包括的非人像区域,并对非人像区域的图像质量进行优化处理。其中,对非人像区域的图像质量进行优化处理可以包括对非人像区域进行增强边缘强度、降低噪声率、亮度分布校正等操作。
为了提高对初始预览图像的美化处理效率,还可以预先对非人像区域的图像质量进行评估,若质量系数评估结果未达到预设要求,再对非人像区域的图像质量进行优化处理。其中,质量系数评估可以通过边缘强度、噪声率、统一亮度分布等来制定图像评价因子,本发明实施例对此不作具体限制。
当初始预览图像为非人物图像时,可以直接对初始预览图像的图像质量进行优化处理。其中,对初始预览图像的图像质量进行优化处理可以包括对初始预览图像进行增强边缘强度、降低噪声率、亮度分布校正等操作。
同样,为了提高对初始预览图像的美化处理效率,还可以预先对初始预览图像进行质量系数进行评估,若质量系数评估结果未达到预设要求,再对初始预览图像的图像质量进行优化处理。其中,质量系数评估可以通过边缘强度、噪声率、统一亮度分布等来制定图像评价因子,本发明实施例对此不作具体限制。
本发明实施例中,步骤S300之前,拍照预览方法还可以包括,向分身应用发送图像处理请求,以使分身应用根据图像处理请求或用户触发的指令生成请求生成处理指令,并返回给沙箱,进一步地,沙箱可以接收分身应用返回的处理指令,以根据处理指令执行步骤S300。其中,处理指令可以包括指示是否需要对初始预览图像进行处理,获得待预览图像的命令。当需要对初始预览图像进行处理,获得待预览图像时,处理指令还可以包括指示对初始预览图像进行处理,获得待预览图像的具体处理方式的命令。例如,利用其他图像对初始预览图像进行替换,并将替换后的图像作为待预览图像,或直接对初始预览图像进行质量优化处理,并将经过质量优化处理后的初始预览图像作为待预览图像。
步骤S400,将待预览图像发送至分身应用,以使分身应用对待预览图像进行展示。
请参阅图4,图4为本发明实施例提供的拍照预览装置110的示意性结构框图,该拍照预览装置110包括分身应用监听模块111、图像拦截模块112、图像处理模块113和图像发送模块114。需要说明的是,本发明实施例提供的拍照预览装置110是在沙箱中执行的。
分身应用监听模块111用于监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览。
其中,沙箱是一个允许在其环境中运行浏览器或其他应用程序(例如,被监听的分身应用)的虚拟系统程序。分身应用则是安装于电子设备的原生应用程序的分身,是利用分身技术对原生应用程序进行分身而来,具备原生应用程序的所有功能,能够提供与原生应用程序完全相同的服务。本发明实施例中,分身应用可以是QQ、微信、钉钉、263云通信等能够调用电子设备中的摄像模块进行拍照的应用程序的分身。
在实际实施时,沙箱可以利用钩子函数监听分身应用,以判断分身应用是否调用电子设备中的摄像模块进行画面预览。
此处,术语“钩子”涵盖了用于通过拦截在软件组件之间传递的函数调用、消息、或事件来改变或增加操作系统、应用程序、或其他软件组件的行为的技术,而处理这种被拦截的函数调用、事件或消息的代码就被称为钩子函数,即hook函数。钩子通常用于各种目标,包括对功能进行调试和对功能进行扩展,其示例可以包括在键盘或鼠标事件传递到目标应用程序之前拦截它们,或拦截系统调用(system call)、系统函数行为、函数执行结果等,以监听或修改应用程序或其他组件的功能等。
进一步地,本发明实施例中,分身应用监听模块111可以包括分身应用监听子模块和采集动作确定子模块。
分身应用监听子模块用于通过钩子函数监听分身应用是否利用画面预览指令调用电子设备中的摄像模块。采集动作确定子模块用于当钩子函数监听到分身应用利用画面预览指令调用摄像模块时,表示监听到分身应用调用摄像模块进行画面预览。其中,画面预览指令可以为摄像模块中与拍照对应的jni方法,具体为android.hardware.Camera方法setHasPreviewCallback。
图像拦截模块112用于在分身应用监听模块111监听到分身应用调用摄像模块进行画面预览时,拦截分身应用调用摄像模块进行画面预览所采集的初始预览图像。
在实际实施时,图像拦截模块112同样可以通过钩子函数拦截分身应用调用摄像模块进行画面预览所采集的初始预览图像。例如,可以通过钩子函数对摄像模块的回调接口进行接管,使得沙箱可以得到对摄像模块的管理权限,从而可以拦截到摄像模块所采集的初始预览图像,具体地,可以将回调接口mPreviewCallback修改为MyPreviewCallback。此后,将摄像模块所采集的初始预览图像调用至沙箱,具体代码实现如下:
MyPreviewCallback onPreview Frame(byte[]data,Camera camera),其中,数组data即为初始预览图像。
图像处理模块113用于对初始预览图像进行处理,获得待预览图像。
初始预览图像为分身应用调用电子设备中的摄像模块进行画面预览所采集的图像,由于拍摄角度、拍摄环境等问题,初始预览图像的质量可能较差,因此,对初始预览图像进行处理后可以得到质量较好的待预览图像。
在实际实施时,可以利用其他图像对始预览图像进行替换,并将替换后的图像作为待预览图像,也可以直接对初始预览图像进行质量优化处理,并将经过质量优化处理后的初始预览图像作为待预览图像。
因此,本发明实施例中,作为第一种实施方式,图像处理模块113可以包括目标图像选取子模块和第一图像处理子模块。
目标图像选取子模块用于从摄像模块的图像存储库中选取目标图像。
摄像模块的图像存储库中存储的图像包括应用于该电子设备的所有应用程序(包括被监听的分身应用)调用该摄像模块所拍摄的历史图像。本发明实施例中,从摄像模块的图像存储库中选取的目标图像可以包括,但不限于与第一图像相似的图像,以及与第一图像的图像内容不同的图像等。
基于以上描述,目标图像选取子模块可以包括第一目标图像选取单元。
第一目标图像选取单元用于从摄像模块的图像存储库中选取与初始预览图像的相似度最大的图像,作为目标图像。
为实现上述方案,第一目标图像选取单元又可以包括第一特征集选取子单元、第二特征集选取子单元、相似度计算子单元和第一目标图像确定子单元。
第一特征集选取子单元用于对初始预览图像进行特征识别,以获得初始预览图像的第一特征集。例如,可以对初始预览图像进行边缘检测,根据闭合的边缘确定初始预览图像的至少一个第一特征区域,作为初始预览图像的第一特征集。第二特征集选取子单元用于对摄像模块的图像存储库中的各图像进行特征识别,以获得各图像的第二特征集。同样,针对于图像存储库中的各图像,可以对该图像进行边缘检测,根据闭合的边缘确定该图像的至少一个第二特征区域,作为该图像的第二特征集。相似度计算子单元用于分别计算摄像模块的图像存储库中各图像的第二特征集与第一特征集的相似度。第一目标图像确定子单元用于将与第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
进一步地,当第一特征集中包括一个第一特征区域时,相似度计算子单元可以分别计算图像存储库中各图像的第二特征集中包括的各第二特征区域与第一特征区域的相似度,确定与第一特征区域的相似度最大的第二特征区域,以使第一目标图像确定子单元将与该第二特征区域所属的第二特征集对应的图像作为目标图像。当第一特征集中包括多个第一特征区域时,相似度计算子单元可以针对于摄像模块的图像存储库中的各图像,分别将该图像的第二特征集中包括的各第二特征区域与第一特征集中包括的各第一特征区域进行相似度匹配,以确定该图像的第二特征集中与各第一特征区域匹配的第二特征区域,再针对于第一特征集中包括的各第一特征区域,计算该第一特征区域与匹配的第二特征区域的相似度,此后,根据第一特征集中包括的各第一特征区域与匹配的第二特征区域的相似度获得第一特征集与该图像的第二特征集的相似度,最后,使第一目标图像确定子单元将与第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
为了保证选取的目标图像具有较好的质量,本发明实施例中,第一目标图像选取单元还可以包括第一质量系数评估子单元和第一评估结果判断子单元。
第一质量系数评估子单元用于对与第一特征集的相似度最大的第二特征集对应的图像进行质量系数评估。第一评估结果判断子单元用于在质量系数评估结果达到预设要求时,使第一目标图像确定子单元执行将与第一特征集的相似度最大的第二特征集对应的图像作为目标图像的动作。其中,质量系数评估可以通过边缘强度、噪声率、统一亮度分布等来制定图像评价因子,本发明实施例对此不作具体限制。
目标图像选取子模块还可以包括第二目标图像选取单元。
第二目标图像选取单元用于从摄像模块的图像存储库中选取与初始预览图像的图像内容不同的图像,作为目标图像。
为实现上述方案,第二目标图像选取单元又可以包括待对比图像选取子单元、图像内容对比子单元和第二目标图像确定子单元。
待对比图像选取子单元用于从摄像模块的图像存储库中随机选取一张待对比图像。图像内容对比子单元用于将待对比图象的图像内容与初始预览图像的图像内容进行对比,以判断待对比图像的图像内容是否与初始预览图像的图像内容不同。第二目标图像确定子单元,用于在待对比图像的图像内容与初始预览图像的图像内容不同时,将待对比图像确定为目标图像。
第一图像处理子模块用于利用目标图像对初始预览图像进行替换,并将替换后的图像作为待预览图像。
在实际实施时,第一图像处理子模块可以先对目标图像进行二进制化处理,再利用二进制化处理之后的目标图像对初始预览图像进行替换。
此外,为了满足多样化的应用需求,在实际实施时,第一图像处理子模块利用目标图像对初始预览图像进行替换可以是利用目标图像对初始预览图像进行整体替换,也可以是利用目标图像对初始预览图像进行局部替换。
为实现利用目标图像对初始预览图像进行局部替换的方案,第一图像处理子模块又可以包括第一图像分割单元、第二图像分割单元和图像替换单元。
第一图像分割单元用于对初始预览图像进行分割,获得待替换区域图像和保留区域图像。第二图像分割单元用于对目标图像进行分割,获得目标区域图像。图像替换单元用于利用目标区域图像对待替换区域图像进行替换,获得包括目标区域图像和保留区域图像的待预览图像。如此,当初始预览图像为人物图像时,第一图像处理子模块便可以对初始预览图像进行人像区域替换或背景替换的操作,其中,人像区域替换又可以是人像区域整体替换,或人像区域中人脸图像的单独替换,再或人像区域中躯干部分的单独替换。
本发明实施例中,作为第二种实施方式,图像处理模块113可以包括第二图像处理子模块。
第二图像处理子模块用于对初始预览图像进行美化处理,将经过美化处理的初始预览图像,作为待预览图像。
在实际实施时,不同类型的图像可以采取不同的美化处理方式,以保证较好的美化处理效果。例如,在处理人物图像时,可以对人物图像中包括的人脸图像进行美颜处理,同时,也可以对人物图像中包括的非人像区域进行质量优化处理,又例如,在处理非人物图像时,可以直接对非人物图像进行质量优化处理。
基于以上描述,第二图像处理子模块又可以包括人脸图像定位单元和美颜处理单元。
人脸图像定位单元用于当初始预览图像为人物图像时,确定人物图像中包括的人像区域,并从人像区域中定位人脸图像。美颜处理单元用于对人脸图像进行美颜处理。
人脸的五官结构非常相似,但还是具有明显的个性特征,包括,性别、脸型、眼形、胖瘦程度、肤色和纹理等,具有不同个性特征的人脸,往往需要采取不同的美颜处理逻辑进行处理,以保证较好的美颜处理效果。鉴于此,本发明实施例中,对于人脸图像的每项个性特征都做了具体划分,例如,性别可以划分为男性和女性,脸型可以划分为圆形脸、椭圆脸、长形脸、方形脸、菱形脸、正三角脸和倒三角脸,眼形可以划分为标准眼、丹凤眼、吊眼、柳叶眼、铜铃眼,胖瘦程度可以划分为肥胖、微胖、正常、偏瘦和过瘦,肤色可以按颜色由深到浅依次划分为肤色等级1、肤色等级2、肤色等级3、肤色等级4、肤色等级5和肤色等级6,纹理可以按清晰程度从清晰到模糊依次划分为纹理等级1、纹理等级2、纹理等级3、纹理等级4、纹理等级5和纹理等级6。进一步地,本发明实施例中,对每种类型的人脸特征都制定了对应的美颜处理逻辑,例如,不同的性别和脸型对应不同的眉形,不同的性别和眼形对应不同的眼妆效果,不同的胖瘦程度对应不同的瘦脸级别,不同的肤色对应不同的美白级别,不同的纹理对应不同的磨皮级别。
因此,本发明实施例中,美颜处理单元又可以包括个性特征确定子单元、美颜处理逻辑选取子单元和美颜处理子单元。
个性特征确定子单元用于确定人脸图像的个性特征。美颜处理逻辑选取子单元用于选取与个性特征对应的美颜处理逻辑。美颜处理子单元用于根据选取的美颜处理逻辑对人脸图像进行美颜处理。
进一步地,第二图像处理子模块还包括非人像区域确定子单元和第一图像质量优化子单元。
非人像区域确定子单元用于当初始预览图像为人物图像时,确定人物图像包括的非人像区域。第一图像质量优化子单元用于对非人像区域的图像质量进行优化处理。其中,对非人像区域的图像质量进行优化处理可以包括对非人像区域进行增强边缘强度、降低噪声率、亮度分布校正等操作。
为了提高对初始预览图像的美化处理效率,第二图像处理子模块还可以包括第二质量系数评估子单元和第二评估结果判断子单元。
第二质量系数评估子单元用于对非人像区域的图像质量进行评估。第二评估结果判断子单元用于在质量系数评估结果未达到预设要求时,使第一图像质量优化子单元执行对非人像区域的图像质量进行优化处理的步骤。其中,质量系数评估可以通过边缘强度、噪声率、统一亮度分布等来制定图像评价因子,本发明实施例对此不作具体限制。
进一步地,第二图像处理子模块还可以包括图像质量优化单元。
图像质量优化单元用于当初始预览图像为非人物图像时,对初始预览图像的图像质量进行优化处理。其中,对初始预览图像的图像质量进行优化处理可以包括对初始预览图像进行增强边缘强度、降低噪声率、亮度分布校正等操作。
同样,为了提高对初始预览图像的美化处理效率,第二图像处理子模块,还包括质量系数评估单和评估结果判断单元。
质量系数评估单元用于对初始预览图像进行质量系数进行评估。评估结果判断单元用于在质量系数评估结果未达到预设要求时,使图像质量优化单元执行对初始预览图像的图像质量进行优化处理的步骤。其中,质量系数评估可以通过边缘强度、噪声率、统一亮度分布等来制定图像评价因子,本发明实施例对此不作具体限制。
图像发送模块114用于将待预览图像发送至分身应用,以使分身应用对待预览图像进行展示。
进一步地,本发明实施例中,拍照预览装置110还可以包括图像处理请求发送模块和处理指令接收模块。
图像处理请求发送模块用于向分身应用发送图像处理请求,以使分身应用根据图像处理请求或用户触发的指令生成请求生成处理指令,并返回给沙箱。处理指令接收模块用于使沙箱接收分身应用返回的处理指令,以使图像处理模块113根据处理指令执行对初始预览图像进行处理,获得待预览图像的动作。其中,处理指令可以包括指示是否需要对初始预览图像进行处理,获得待预览图像的命令。当需要对初始预览图像进行处理,获得待预览图像时,处理指令还可以包括指示对初始预览图像进行处理,获得待预览图像的具体处理方式的命令。例如,利用其他图像对始预览图像进行替换,并将替换后的图像作为待预览图像,或直接对初始预览图像进行质量优化处理,并将经过质量优化处理后的初始预览图像作为待预览图像。
综上所述,本发明实施例提供的拍照预览方法、装置及电子设备能够监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览,并在监听到所述分身应用调用所述摄像模块进行画面预览,拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像,对所述初始预览图像进行处理,获得待预览图像,将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。如此,即便是分身应用在调用电子设备中的摄像模块进行画面预览时采集了质量差的图像(例如,初始预览图像),通过本发明实施例提供的拍照预览方法及装置也可以拦截该初始预览图像,不会直接将初始预览图像发送给分身应用展示,而是对其进行处理得到质量较好的图像(例如,待预览图像),然后发送给分身应用展示。故而,本发明实施例提供的拍照预览方法、装置及电子设备能够提高带有拍照功能的应用程序调用电子设备中的摄像模块进行画面预览采集的预览图像的图像质量。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本公开的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本公开各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本公开各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅为本公开的可选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
本发明提供了,A1.一种拍照预览方法,包括:
监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览;
若是监听到所述分身应用调用所述摄像模块进行画面预览,则拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像;
对所述初始预览图像进行处理,获得待预览图像;
将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。
A2.根据A1所述的拍照预览方法,所述对所述初始预览图像进行处理,获得待预览图像,包括:
从所述摄像模块的图像存储库中选取目标图像;
利用所述目标图像对所述初始预览图像进行替换,并将替换后的图像作为所述待预览图像。
A3.根据A2所述的拍照预览方法,所述从所述摄像模块的图像存储库中选取目标图像,包括:
从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像。
A4.根据A3所述的拍照预览方法,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像,包括:
对所述初始预览图像进行特征识别,以获得所述初始预览图像的第一特征集;
对所述摄像模块的图像存储库中的各图像进行特征识别,以获得各图像的第二特征集;
分别计算所述摄像模块的图像存储库中各图像的第二特征集与所述第一特征集的相似度;
将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
A5.根据A4所述的拍照预览方法,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像,还包括:
对与所述第一特征集的相似度最大的第二特征集对应的图像进行质量系数评估;
若质量系数评估结果达到预设要求,则执行将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像的步骤。
A6.根据A2所述的拍照预览方法,所述从所述摄像模块的图像存储库中选取目标图像,包括:
从所述摄像模块的图像存储库中选取与所述初始预览图像的图像内容不同的图像,作为目标图像。
A7.根据A6所述的拍照预览方法,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的图像内容不同的图像,作为目标图像,包括:
从所述摄像模块的图像存储库中随机选取一张待对比图像;
将所述待对比图象的图像内容与所述初始预览图像的图像内容进行对比,以判断所述待对比图像的图像内容是否与所述初始预览图像的图像内容不同;
若所述待对比图像的图像内容与所述初始预览图像的图像内容不同,则将所述待对比图像确定为所述目标图像。
A8.根据A2所述的拍照预览方法,所述利用所述目标图像对所述初始预览图像进行替换,并将替换后的图像作为所述待预览图像,包括:
对所述初始预览图像进行分割,获得待替换区域图像和保留区域图像;
对所述目标图像进行分割,获得目标区域图像;
利用所述目标区域图像对所述待替换区域图像进行替换,获得包括所述目标区域图像和所述保留区域图像的待预览图像。
A9.根据A1所述的拍照预览方法,所述对所述初始预览图像进行处理,获得待预览图像,包括:
对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像。
A10.根据A9所述的拍照预览方法,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,包括:
当所述初始预览图像为人物图像时,确定所述人物图像中包括的人像区域,并从所述人像区域中定位人脸图像;
对所述人脸图像进行美颜处理。
A11.根据A10所述的拍照预览方法,所述对所述人脸图像进行美颜处理,包括:
确定所述人脸图像的个性特征;
选取与所述个性特征对应的美颜处理逻辑;
根据选取的所述美颜处理逻辑对所述人脸图像进行美颜处理。
A12.根据A10或A11所述的拍照预览方法,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,还包括:
当所述初始预览图像为人物图像时,确定所述人物图像包括的非人像区域;
对所述非人像区域的图像质量进行优化处理。
A13.根据A12所述的拍照预览方法,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,还包括:
对所述非人像区域的图像质量进行评估;
若质量系数评估结果未达到预设要求,则执行对所述非人像区域的图像质量进行优化处理的步骤。
A14.根据A9所述的拍照预览方法,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,包括:
当所述初始预览图像为非人物图像时,对所述初始预览图像的图像质量进行优化处理。
A15.根据A14所述的拍照预览方法,所述对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像,还包括:
对所述初始预览图像进行质量系数进行评估;
若质量系数评估结果未达到预设要求,则执行对所述初始预览图像的图像质量进行优化处理的步骤。
A16.根据A1所述的拍照预览方法,所述对所述初始预览图像进行处理,获得待预览图像之前,所述方法还包括:
向所述分身应用发送图像处理请求,以使所述分身应用根据所述图像处理请求或用户触发的指令生成请求生成处理指令,并返回;
接收所述分身应用返回的处理指令,以根据所述处理指令执行对所述初始预览图像进行处理,获得待预览图像的步骤。
A17.根据A1所述的拍照预览方法,所述监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览,包括:
通过钩子函数监听所述分身应用是否利用画面预览指令调用所述摄像模块;
当所述钩子函数监听到所述分身应用利用所述画面预览指令调用所述摄像模块时,表示监听到所述分身应用调用所述摄像模块进行画面预览。
B18.一种拍照预览装置,包括:
分身应用监听模块,用于监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览;
图像拦截模块,用于在所述分身应用监听模块监听到所述分身应用调用所述摄像模块进行画面预览时,拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像;
图像处理模块,用于对所述初始预览图像进行处理,获得待预览图像;
图像发送模块,用于将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。
B19.根据B18所述的拍照预览装置,所述图像处理模块,包括:
目标图像选取子模块,用于从所述摄像模块的图像存储库中选取目标图像;
第一图像处理子模块,用于利用所述目标图像对所述初始预览图像进行替换,并将替换后的图像作为所述待预览图像。
B20.根据B19所述的拍照预览装置,所述目标图像选取子模块,包括:
第一目标图像选取单元,用于从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像。
B21.根据B20所述的拍照预览装置,所述第一目标图像选取单元,包括:
第一特征集选取子单元,用于对所述初始预览图像进行特征识别,以获得所述初始预览图像的第一特征集;
第二特征集选取子单元,用于对所述摄像模块的图像存储库中的各图像进行特征识别,以获得各图像的第二特征集;
相似度计算子单元,用于分别计算所述摄像模块的图像存储库中各图像的第二特征集与所述第一特征集的相似度;
第一目标图像确定子单元,用于将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
B22.根据B21所述的拍照预览装置,所述第一目标图像选取单元,还包括:
第一质量系数评估子单元,用于对与所述第一特征集的相似度最大的第二特征集对应的图像进行质量系数评估;
第一评估结果判断子单元,用于在质量系数评估结果达到预设要求时,使所述第一目标图像确定子单元执行将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像的动作。
B23.根据B19所述的拍照预览装置,所述目标图像选取子模块,包括:
第二目标图像选取单元,用于从所述摄像模块的图像存储库中选取与所述初始预览图像的图像内容不同的图像,作为目标图像。
B24.根据B23所述的拍照预览装置,所述第二目标图像选取单元,包括:
待对比图像选取子单元,用于从所述摄像模块的图像存储库中随机选取一张待对比图像;
图像内容对比子单元,用于将所述待对比图象的图像内容与所述初始预览图像的图像内容进行对比,以判断所述待对比图像的图像内容是否与所述初始预览图像的图像内容不同;
第二目标图像确定子单元,用于在所述待对比图像的图像内容与所述初始预览图像的图像内容不同时,将所述待对比图像确定为所述目标图像。
B25.根据B19所述的拍照预览装置,所述第一图像处理子模块,包括:
第一图像分割单元,用于对所述初始预览图像进行分割,获得待替换区域图像和保留区域图像;
第二图像分割单元,用于对所述目标图像进行分割,获得目标区域图像;
图像替换单元,用于利用所述目标区域图像对所述待替换区域图像进行替换,获得包括所述目标区域图像和所述保留区域图像的待预览图像。
B26.根据B18所述的拍照预览装置,所述图像处理模块,包括:
第二图像处理子模块,用于对所述初始预览图像进行美化处理,将经过美化处理的所述初始预览图像,作为待预览图像。
B27.根据B26所述的拍照预览装置,所述第二图像处理子模块,包括:
人脸图像定位单元,用于当所述初始预览图像为人物图像时,确定所述人物图像中包括的人像区域,并从所述人像区域中定位人脸图像;
美颜处理单元,用于对所述人脸图像进行美颜处理。
B28.根据B27所述的拍照预览装置,所述美颜处理单元,包括:
个性特征确定子单元,用于确定所述人脸图像的个性特征;
美颜处理逻辑选取子单元,用于选取与所述个性特征对应的美颜处理逻辑;
美颜处理子单元,用于根据选取的所述美颜处理逻辑对所述人脸图像进行美颜处理。
B29.根据B27或B28所述的拍照预览装置,所述第二图像处理子模块,还包括:
非人像区域确定子单元,用于当所述初始预览图像为人物图像时,确定所述人物图像包括的非人像区域;
第一图像质量优化子单元,用于对所述非人像区域的图像质量进行优化处理。
B30.根据B29所述的拍照预览装置,所述第二图像处理子模块,还包括:
第二质量系数评估子单元,用于对所述非人像区域的图像质量进行评估;
第二评估结果判断子单元,用于在质量系数评估结果未达到预设要求时,使所述第一图像质量优化子单元执行对所述非人像区域的图像质量进行优化处理的步骤。
B31.根据B26所述的拍照预览装置,所述第二图像处理子模块,包括:
图像质量优化单元,用于当所述初始预览图像为非人物图像时,对所述初始预览图像的图像质量进行优化处理。
B32.根据B31所述的拍照预览装置,所述第二图像处理子模块,还包括:
质量系数评估单元,用于对所述初始预览图像进行质量系数进行评估;
评估结果判断单元,用于在质量系数评估结果未达到预设要求,使所述图像质量优化单元执行对所述初始预览图像的图像质量进行优化处理的步骤。
B33.根据B18所述的拍照预览装置,所述拍照预览装置,还包括:
图像处理请求发送模块,用于向所述分身应用发送图像处理请求,以使所述分身应用根据所述图像处理请求或用户触发的指令生成请求生成处理指令,并返回;
处理指令接收模块,用于接收所述分身应用返回的处理指令,以使所述图像处理模块根据所述处理指令执行对所述初始预览图像进行处理,获得待预览图像的动作。
B34.根据B18所述的拍照预览装置,所述分身应用监听模块,包括:
分身应用监听子模块,用于通过钩子函数监听所述分身应用是否利用画面预览指令调用所述摄像模块;
采集动作确定子模块,用于当所述钩子函数监听到所述分身应用利用所述画面预览指令调用所述摄像模块时,表示监听到所述分身应用调用所述摄像模块进行画面预览。
C35.一种电子设备,包括处理器、存储器和B18-B34中任一项所述的拍照预览装置,所述拍照预览装置包括一个或多个存储于所述存储器并由所述处理器执行的软件功能模块。
D36.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时,可实现A1-A17中任一项所述的拍照预览方法。
Claims (10)
1.一种拍照预览方法,其特征在于,包括:
监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览;
若是监听到所述分身应用调用所述摄像模块进行画面预览,则拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像;
对所述初始预览图像进行处理,获得待预览图像;
将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。
2.根据权利要求1所述的拍照预览方法,其特征在于,所述对所述初始预览图像进行处理,获得待预览图像,包括:
从所述摄像模块的图像存储库中选取目标图像;
利用所述目标图像对所述初始预览图像进行替换,并将替换后的图像作为所述待预览图像。
3.根据权利要求2所述的拍照预览方法,其特征在于,所述从所述摄像模块的图像存储库中选取目标图像,包括:
从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像。
4.根据权利要求3所述的拍照预览方法,其特征在于,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像,包括:
对所述初始预览图像进行特征识别,以获得所述初始预览图像的第一特征集;
对所述摄像模块的图像存储库中的各图像进行特征识别,以获得各图像的第二特征集;
分别计算所述摄像模块的图像存储库中各图像的第二特征集与所述第一特征集的相似度;
将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像。
5.根据权利要求4所述的拍照预览方法,其特征在于,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的相似度最大的图像,作为目标图像,还包括:
对与所述第一特征集的相似度最大的第二特征集对应的图像进行质量系数评估;
若质量系数评估结果达到预设要求,则执行将与所述第一特征集的相似度最大的第二特征集对应的图像作为目标图像的步骤。
6.根据权利要求2所述的拍照预览方法,其特征在于,所述从所述摄像模块的图像存储库中选取目标图像,包括:
从所述摄像模块的图像存储库中选取与所述初始预览图像的图像内容不同的图像,作为目标图像。
7.根据权利要求6所述的拍照预览方法,其特征在于,所述从所述摄像模块的图像存储库中选取与所述初始预览图像的图像内容不同的图像,作为目标图像,包括:
从所述摄像模块的图像存储库中随机选取一张待对比图像;
将所述待对比图象的图像内容与所述初始预览图像的图像内容进行对比,以判断所述待对比图像的图像内容是否与所述初始预览图像的图像内容不同;
若所述待对比图像的图像内容与所述初始预览图像的图像内容不同,则将所述待对比图像确定为所述目标图像。
8.一种拍照预览装置,其特征在于,包括:
分身应用监听模块,用于监听运行在沙箱中的分身应用是否调用电子设备中的摄像模块进行画面预览;
图像拦截模块,用于在所述分身应用监听模块监听到所述分身应用调用所述摄像模块进行画面预览时,拦截所述分身应用调用所述摄像模块进行画面预览所采集的初始预览图像;
图像处理模块,用于对所述初始预览图像进行处理,获得待预览图像;
图像发送模块,用于将所述待预览图像发送至所述分身应用,以使所述分身应用对所述待预览图像进行展示。
9.一种电子设备,其特征在于,包括处理器、存储器和权利要求8所述的拍照预览装置,所述拍照预览装置包括一个或多个存储于所述存储器并由所述处理器执行的软件功能模块。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被执行时,可实现权利要求1-7中任一项所述的拍照预览方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810875962.XA CN108848312A (zh) | 2018-08-02 | 2018-08-02 | 拍照预览方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810875962.XA CN108848312A (zh) | 2018-08-02 | 2018-08-02 | 拍照预览方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108848312A true CN108848312A (zh) | 2018-11-20 |
Family
ID=64195425
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810875962.XA Pending CN108848312A (zh) | 2018-08-02 | 2018-08-02 | 拍照预览方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108848312A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871677A (zh) * | 2019-03-19 | 2019-06-11 | 苏州迈荣祥信息科技有限公司 | 智能开关控制系统及方法 |
CN109903248A (zh) * | 2019-02-20 | 2019-06-18 | 厦门美图之家科技有限公司 | 一种生成自动白平衡模型的方法和图像处理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105979194A (zh) * | 2016-05-26 | 2016-09-28 | 努比亚技术有限公司 | 一种视频图像处理装置和方法 |
CN106775902A (zh) * | 2017-01-25 | 2017-05-31 | 北京奇虎科技有限公司 | 一种图像处理的方法和装置、移动终端 |
CN106897610A (zh) * | 2017-01-19 | 2017-06-27 | 北京奇虎科技有限公司 | 一种定位保护的方法和装置 |
-
2018
- 2018-08-02 CN CN201810875962.XA patent/CN108848312A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105979194A (zh) * | 2016-05-26 | 2016-09-28 | 努比亚技术有限公司 | 一种视频图像处理装置和方法 |
CN106897610A (zh) * | 2017-01-19 | 2017-06-27 | 北京奇虎科技有限公司 | 一种定位保护的方法和装置 |
CN106775902A (zh) * | 2017-01-25 | 2017-05-31 | 北京奇虎科技有限公司 | 一种图像处理的方法和装置、移动终端 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109903248A (zh) * | 2019-02-20 | 2019-06-18 | 厦门美图之家科技有限公司 | 一种生成自动白平衡模型的方法和图像处理方法 |
CN109903248B (zh) * | 2019-02-20 | 2021-04-16 | 厦门美图之家科技有限公司 | 一种生成自动白平衡模型的方法和图像处理方法 |
CN109871677A (zh) * | 2019-03-19 | 2019-06-11 | 苏州迈荣祥信息科技有限公司 | 智能开关控制系统及方法 |
CN109871677B (zh) * | 2019-03-19 | 2022-10-25 | 珠海微褀科技有限公司 | 智能开关控制系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109951627B (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN106971165B (zh) | 一种滤镜的实现方法及装置 | |
CN109584180A (zh) | 人脸图像处理方法、装置、电子设备及计算机存储介质 | |
CN106873863B (zh) | 一种界面切换动画的设置方法及装置 | |
CN108090405A (zh) | 一种人脸识别方法及终端 | |
CN104967784B (zh) | 移动终端调用拍照功能的底层效果模式的方法和移动终端 | |
CN108924440B (zh) | 贴纸显示方法、装置、终端及计算机可读存储介质 | |
CN109614902A (zh) | 人脸图像处理方法、装置、电子设备及计算机存储介质 | |
CN109086742A (zh) | 场景识别方法、场景识别装置及移动终端 | |
WO2017097140A1 (zh) | 一种界面元素属性值的设置方法、装置及智能设备 | |
CN107222790A (zh) | 一种发送弹幕的方法、终端及计算机可读存储介质 | |
CN109120862A (zh) | 高动态范围图像获取方法、装置及移动终端 | |
CN109784252A (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN108848312A (zh) | 拍照预览方法、装置及电子设备 | |
CN107506637A (zh) | 信息展示方法和装置、终端及可读存储介质 | |
CN109309826A (zh) | 一种图像色彩均衡方法及终端 | |
CN107302666A (zh) | 拍照方法、移动终端及计算机可读存储介质 | |
CN110069974A (zh) | 高光图像处理方法、装置和电子设备 | |
CN108494996A (zh) | 图像处理方法、装置、存储介质及移动终端 | |
CN109118448A (zh) | 拍照处理方法、装置及电子设备 | |
CN109859382A (zh) | 产品的无人售卖方法及无人售卖柜 | |
CN108447026A (zh) | 美颜参数特征值的获取方法、终端及计算机可读存储介质 | |
CN107729491A (zh) | 提高题目答案搜索的准确率的方法、装置及设备 | |
CN112184540A (zh) | 图像处理方法、装置、电子设备和存储介质 | |
CN109035191A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181120 |