图像生成方法、装置及设备
文献发布时间:2024-04-18 19:52:40
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像生成方法、装置及设备。
背景技术
景深,是指在摄影机镜头或其他成像器前沿能够取得清晰图像的成像所测定的被摄物体前后距离范围。发明人发现,市面上的景深图像都是基于双摄像实现的,也即摄像头的个数至少需要两个,若加上广角摄像头和微距摄像头,那么至少需要四个后置摄像头,再加上一个前置摄像头,那么,则需要五个摄像头,因此,市面上功能比较齐全的手机,一般会配置五个摄像头,这不仅增加了成本还增加了手机的重量和体积,影响美观。此外,现有美图软件基于一张图像生成景深图像,但是生成的景深图像效果不好且容易出现主体对象(目标对象)误虚和背景漏虚的问题。
发明内容
针对上述技术问题,本申请的目的在于提供一种图像生成方法、装置及设备,旨在解决生成景深图像需要两个摄像头以及基于一张图像生成的景深图像效果不好的技术问题。
第一方面,本发明实施例提供一种图像生成方法,包括:
在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;
获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;
从所述第一图像中提取出所述选取的对象,作为第一目标对象;
在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;
控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;
获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;
基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化。
进一步的,所述方法还包括:
将所述第一图像、所述第二图像以及所述第三图像存储到存储器中;
将所述第三图像的存储路径关联所述第一图像的存储路径和所述第二图像的存储路径。
进一步的,所述方法还包括:
在景深对象切换模式下,基于用户在所述第三图像中点选的对象,重新利用所述第一图像和第二图像生成第四图像,以实现景深对象切换。
进一步的,所述在景深对象切换模式下,基于用户在所述第三图像中点选的对象,重新利用所述第一图像和第二图像生成第四图像,以实现景深对象切换的步骤,包括:
在景深对象切换模式下,若检测到用户点击所述第三图像,则获取点击位置;
判断所述点击位置位于所述第三图像的第一平面上还是位于所述第三图像的第一平面之外;
若所述点击位置位于所述第三图像的第一平面上,则从所述存储器中调出所述第三图像对应的第一图像;
在调出的所述第一图像中提取所述点击位置对应的对象,作为第三目标对象;
从所述存储器中调出所述第三图像对应的第二图像;
基于所述第三目标对象,在调出的所述第二图像中构建第二平面,对所述第二图像中第二平面之外的图像进行虚化,得到第四图像;
若所述点击位置位于所述第三图像的第一平面之外,则从所述存储器中调出所述第三图像对应的第二图像;
在调出的所述第二图像中提取所述点击位置对应的对象,作为第四目标对象;
从所述存储器中调出所述第三图像对应的第一图像;
基于所述第四目标对象,在调出的所述第一图像中构建第三平面,对所述第一图像中第三平面之外的图像进行虚化,得到第四图像。
进一步的,所述控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离,包括:
控制摄像头马达移动到最远的位置,再由最远的位置移动到最近的位置,获得视场内容;
或,
控制摄像头马达移动到最近的位置,再由最近的位置移动到最远的位置,获得视场内容;
根据所述视场内容,基于二分法计算得到令选取的对象最清晰的对焦距离,作为第一对焦距离。
进一步的,在所述接收到拍摄指令的步骤之前,还包括:
对所述选取的对象进行场景检测,得到所述选取的对象对应的场景;
所述从所述第一图像中提取出所述选取的对象,包括:
从预设的数据库中,调用所述场景对应的人工智能模型;
利用所述人工智能模型对所述选取的对象的轮廓边缘进行估算,得到第一轮廓边缘;
根据轮廓边缘的色彩比对,对所述第一轮廓边缘进行调整,得到第二轮廓边缘;
基于所述第二轮廓边缘提取得到所述选取的对象。
进一步的,所述根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像,包括:
判断用户是否移动虚化进度条上的滑块;
若是,则根据所述滑块在所述进度条上的位置确定第一目标虚化程度;
根据所述第一目标虚化程度以及预设的规则对所述第一平面之外的图像进行虚化,得到第三图像;
若否,则根据所述滑块在所述虚化进度条默认出现的位置确定默认虚化程度;
根据所述默认虚化程度以及预设的规则对所述第一平面之外的图像进行虚化,得到第三图像。
进一步的,在所述得到所述第三图像的步骤之后,还包括
当接收到对所述第三图像的编译指令时,显示虚化进度条;
判断用户是否移动虚化进度条上的滑块;
若是,则根据所述滑块在所述虚化进度条上的位置确定第二目标虚化程度;
根据所述第二目标虚化程度调整所述第三图像中所述第一平面之外的图像的虚化程度。
第二方面,本发明实施例提供一种图像生成装置,包括:
第一控制模块,用于在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;
第一图像获取模块,用于获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;
提取模块,用于从所述第一图像中提取出所述选取的对象,作为第一目标对象
选取模块,用于在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;
第二控制模块,用于控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;
第二图像获取模块,用于获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;
图像处理模块,用于基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像。
第三方面,本发明实施例提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现如上述任一项所述的图像生成方法的步骤。
本发明实施例通过在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;从所述第一图像中提取出所述选取的对象,作为第一目标对象;在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像,如此,前后景的边沿更加清晰,景深效果更好。此外,由于本发明上述所述的所有摄像头指的均是同一个摄像头,即,本发明实施例通过一个摄像头就能够生成景深图像,从而解决了生成景深图像需要两个摄像头的技术问题。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的图像生成方法的流程示意图;
图2是本申请实施例提供的第一图像示意图;
图3是本申请实施例提供的根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像的流程示意图;
图4是本申请实施例提供的图像生成装置的结构示意图;
图5是本申请实施例提供的计算机设备的结构示意框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“上述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件、模块、模块和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、模块、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一模块和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
实施例一:
请参阅图1,本申请实施例提供一种图像生成方法,包括步骤S1-S8:
S1、在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离。
本发明方法可应用在手机、平板电脑等具有拍摄功能的电子设备,假设本方法应用在手机上,则本发明图像生成方法提供的是一种景深图像生成功能,通俗地理解为拍摄景深照片功能。当用户将常规拍摄切换成拍摄景深照片功能后,在景深图像拍摄模式下,摄像头视场内的内容会显示在手机界面上,用户通过点击屏幕的方式点击对象,当手机检测到用户点击对象后,会控制摄像头马达移动,采用矩形框等方式自动抓取该对象,将抓取到的对象作为选取的对象。例如,假设有一张照片,照片里有用户小明以及其他风景,假设用户小明点击了自己,则手机会自动抓取小明作为选取的对象。需要说明的是,在用户没有点击对象的情况下,手机还会对图像进行分析,根据对象类型的优先级抓取对象作为选取的对象,例如,人的优先级大于宠物的优先级,宠物的优先级大于风景的优先级。假设一张图片中有一个人和风景,那么,手机会将这个人进行抓取,假设图片中有多个人,那么,则将这几个人作为一个对象进行抓取,或者随机抓取一个人作为对象进行抓取,或者根据对象距离镜头的远近对对象进行抓取。此外,还可以默认将图像中间的对象作为选取的对象。需要说明的是。对象的选取方式多种多样,本发明实施例在此不作限定。
此外,在本发明实施例中,当用户点击拍摄按钮后,手机会控制摄像头马达移动,以获得令所述选取的对象最清晰的对焦距离。应当理解的是,摄像头模组通常采用摄像头马达来驱动镜头,以实现对焦功能。
S2、获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像。
在本发明实施例中,在获得第一对焦距离后,手机会将原来的对焦距离调整为第一对焦距离,然后控制该摄像头进行拍摄,将拍摄得到的图像作为第一图像。
S3、从所述第一图像中提取出所述选取的对象,作为第一目标对象。
通过从第一图像中将选取的对象提取出来,作为第一目标对象,便于后续景深图片的生成。
S4、在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象。
在本发明实施例中,假设第一图像如图2所示,将实线框住的对象作为第一目标对象,该对象是第一图像中最清晰的区域,将虚线框框住的对象作为第二目标对象,该第二目标对象的清晰度小于所述第一目标对象。
S5、控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离。
S6、获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像。
S7、基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像。
在本发明实施例中,第一目标对象在所述第一对焦距离拍摄下,其三维空间中所处的平面位置为第一平面,且该平面位置与镜头的主光轴垂直,也就是第一平面包括提取出来的第一目标对象。应当理解的是,提取出来的第一目标对象是一张图像。在所述第二图像中构建第一平面后,通过高斯滤波可以得到前后景相对比较清晰的边缘。需要说明的是,所述第一平面是所述第三图像中的组成部分。
在本发明实施例中,若将第一图像作为近景图像,将第二图像作为远景图像,那么首先需要根据预设的算法从近景图像中将第一目标对象抠出来,然后在远景图像中勾勒出第一目标对象的轮廓,将轮廓内的图像,即将远景图像中的第一目标对象删除,并将抠出来的第一目标对象堆叠到远景图像中所述轮廓内,并对远景图像中所述轮廓外的图像做虚化,这样就得到了景深图像,即生成的第三图像是景深图像,且生成的景深图像前后景边沿区分的比较清晰,因此,景深效果更好,而现有技术单一平面的美颜软件处理会存在主体误虚和背景漏虚的情况。
本发明实施例通过在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;从所述第一图像中提取出所述选取的对象,作为第一目标对象;在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像,如此,前后景的边沿更加清晰,景深效果更好。此外,由于本发明上述所述的所有摄像头指的均是同一个摄像头,即,本发明实施例通过一个摄像头就能够生成景深图像,从而解决了生成景深图像需要两个摄像头的技术问题。
在一个实施例中,所述第二目标对象可选取多个,即可以获得多个第二图像,利用图片堆叠技术对多幅图片进行堆叠(包括第一图像和多个第二图像)得到景深图像。
在一个实施例中,所述图像生成方法还包括:
将所述第一图像、所述第二图像以及所述第三图像存储到存储器中;
将所述第三图像的存储路径关联所述第一图像的存储路径和所述第二图像的存储路径。
本发明通过将第一图、像二图像以及所述第三图像存储到存储器中,并将所述第三图像的存储路径关联所述第一图像的存储路径和所述第二图像的存储路径,这样,可以调用第一图像和第二图像对第三图像景深对象进行切换。
在一个实施例中,所述图像生成方法还包括:
在景深对象切换模式下,基于用户在所述第三图像中点选的对象,重新利用所述第一图像和第二图像生成第四图像,以实现景深对象切换。
在本发明实施例中,由于第三图像是已经合成的图像,因此,在实现景深对象切换时,需要从存储器中调用第一图像和第二图像,利用一图像和第二图像以实现景深对象切换。在生成第四图像后,将第四图像存储到存储器中,并将第四图像的存储路径关联所述第一图像的存储路径和所述第二图像的存储路径。
在一个实施例中,所述在景深对象切换模式下,基于用户在所述第三图像中点选的对象,重新利用所述第一图像和第二图像生成第四图像,以实现景深对象切换的步骤,包括:
在景深对象切换模式下,若检测到用户点击所述第三图像,则获取点击位置;
判断所述点击位置位于所述第三图像的第一平面上还是位于所述第三图像的第一平面之外;
若所述点击位置位于所述第三图像的第一平面上,则从所述存储器中调出所述第三图像对应的第一图像;
在调出的所述第一图像中提取所述点击位置对应的对象,作为第三目标对象;
从所述存储器中调出所述第三图像对应的第二图像;
基于所述第三目标对象,在调出的所述第二图像中构建第二平面,对所述第二图像中第二平面之外的图像进行虚化,得到第四图像;
若所述点击位置位于所述第三图像的第一平面之外,则从所述存储器中调出所述第三图像对应的第二图像;
在调出的所述第二图像中提取所述点击位置对应的对象,作为第四目标对象;
从所述存储器中调出所述第三图像对应的第一图像;
基于所述第四目标对象,在调出的所述第一图像中构建第三平面,对所述第一图像中第三平面之外的图像进行虚化,得到第四图像。
在本发明实施例中,所述第三图像可以是直接生成的第三图像,也可以是从存储器中调出的第三图像。用户点击的对象为用户希望生成的景深图像中突出的对象,即清晰的对象,因此,当点击的位置位于第三图像的第一平面上时,则需要从所述存储器中调出所述第三图像对应的第一图像(因为第一图像中有用户点击的对象的清晰图像),并在调出的所述第一图像中提取所述点击位置对应的对象,作为第三目标对象,然后从所述存储器中调出所述第三图像对应的第二图像,基于所述第三目标对象,在调出的所述第二图像中构建第二平面,对所述第二图像中第二平面之外的图像进行虚化,得到第四图像。类似于第一平面与第一目标对象的关系,第二平面包括提取得到的第三目标对象,应当理解的是,第三目标对象为一张图像。需要说明的是,所述第二平面是所述第三图像中的组成部分。
当点击的位置位于第三图像的第一平面之外时,则需要从所述存储器中调出所述第三图像对应的第二图像(因为第二图像中有用户点击的对象的清晰图像),并在调出的所述第二图像中提取所述点击位置对应的对象,作为第四目标对象,然后从所述存储器中调出所述第三图像对应的第一图像,基于所述第四目标对象,在调出的所述第一图像中构建第三平面,对所述第一图像中第三平面之外的图像进行虚化,得到第四图像。类似于第一平面与第一目标对象的关系,第三平面也包括提取得到的第四目标对象,应当理解的是,第四目标对象为一张图像。需要说明的是,所述第三平面是所述第四图像中的组成部分。
在一个实施例中,所述控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离,包括:
控制摄像头马达移动,并实时计算所述选取对象的清晰度,将令选取的对象最清晰的对焦距离,作为第一对焦距离。
在一个实施例中,所述控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,作将所述最清晰的对焦距离为第一对焦距离,包括:
控制摄像头马达移动到最远的位置,再由最远的位置移动到最近的位置,获得视场内容;
或,
控制摄像头马达移动到最近的位置,再由最近的位置移动到最远的位置,获得视场内容;
根据所述视场内容,基二分法计算得到令选取的对象最清晰的对焦距离,作为第一对焦距离。
在本发明实施例中,若摄像头马达的初始位置不在最近的位置也不在最远的位置,则将摄像头马达从初始位置移动到最远的位置,再从最远的位置移动到最近的位置,或从初始位置移动到最近的位置,再由最近的位置移动到最远的位置。若摄像头马达的初始位置在最近的位置,则将摄像头马达从最近的位置移动到最远的位置。若摄像头马达的初始位置在最远的位置,则将摄像头马达从最远的位置移动到最近的位置。
此外,应当理解的是,一般来说,从摄像头获取到的图像是一张raw图,raw图是没有色彩的,经过ISP处理器才是我们看到的有色彩的图,所以从摄像头获取到的每一帧的图像都需要做tuning处理,包括色彩还原,降噪、LSC阴影校准以及图像曝光处理。但为便于阐述,本发明所述的从摄像头获取到的图像或控制摄像头拍摄得到的图像,值的均是经过tuning处理的图像。
此外,基于二分法计算得到令所述选取的对象最清晰的对焦距离的具体步骤为:
控制摄像头马达从最近移动到最远或从最远移动到最近;
通过计算摄像头移动到最远时所述选取的对象的清晰度,作为第一清晰度;
计算摄像头移动到最近时所述选取的对象的清晰度,作为第二清晰度;
计算所述摄像头移动到中间时所述选取的对象的清晰度,作为第三清晰度;
将摄像头马达移动到最远时的位置作为第一位置,将摄像头马达移动到最近时的位置作为第二位置,将摄像头马达移动到中间时的位置作为第三位置;
根据所述第一清晰度、所述第二清晰度以及所述第三清晰度判断令所述选取的对象最清晰的对焦距离的位置所处的第一区间;其中,所述第一区间为第一位置到第三位置之间,或第三位置到第二位置之间;
计算所述摄像头马达移动到所述区间的中间位置时所述选取的对象的清晰度,作为第四清晰度;
根据所述第一区间两个端点的所述选取的对象的清晰度以及所述第四清晰度,确认令所述选取的对象最清晰的对焦距离的位置所处的第二区间;
以此类推,得到令所述选取的对象最清晰的对焦距离。
本发明实施例通过二分法确定令所述第一目标对象最清晰的对焦距离。如此,既能够找到令所述第一目标对象最清晰的对焦距离,也能够减少寻找令所述第一目标对象最清晰的对焦距离的时间以及计算量。
在一个实施例中,所述控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离,包括:
控制摄像头马达再次移动,并实时计算所述第二目标对象的清晰度,将令选取的对象最清晰的对焦距离,作为第一对焦距离。
在一个实施例中,所述控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离,包括:
控制摄像头马达移动到最远的位置,再由最远的位置移动到最近的位置,获得视场内容;
或,
控制摄像头马达移动到最近的位置,再由最近的位置移动到最远的位置,获得视场内容;
根据所述视场内容,基于二分法计算得到令所述第二目标对象最清晰的对焦距离,作为第二对焦距离。
本发明实施例基于二分法计算得到令所述第二目标对象最清晰的对焦距离与上述基于二分法计算得到令所述获取的对象最清晰的对焦距离的方式相同,本发明实施例在此不作赘述。
在一个实施例中,在所述接收到拍摄指令的步骤之前,还包括:
对所述选取的对象进行场景检测,得到所述选取的对象对应的场景;
所述从所述第一图像中提取出所述选取的对象,包括:
从预设的数据库中,调用所述场景对应的人工智能模型;
利用所述人工智能模型对所述选取的对象的轮廓边缘进行估算,得到第一轮廓边缘;
根据轮廓边缘的色彩比对,对所述第一轮廓边缘进行调整,得到第二轮廓边缘;
基于所述第二轮廓边缘提取得到所述选取的对象。
在本发明实施例中,所述场景可以是人物、美食、沙滩、建筑、动物、花草、汽车、月亮以及太阳等。每个场景均有自己对应的人工智能模型。对应的人工智能模型通过对应的场景训练得到。假设检测到选取的对象对应的场景为人物,那么,其对应的人工智能模型会将选取的对象作为人物对选取的对象的轮廓边缘进行估算。又由于人所处的背景的色彩一般是多样的,因此,仅通过人工智能模型将选取的对象作为人物进行估算可能会估算不准确,因此,还需要结合轮廓边缘的色彩比对第一轮廓边缘进行调整,以得到较为准确的轮廓边缘。除此之外,为进一步提高提取到的选取的对象的准确性(例如,如果提取一个人,目的是提取出来的一个完整的人,而不是不完整的人)还可以进一步结合传统的贝叶斯抠图算法、Graph Cut、Alpha mat等等以及一些深度学习的抠图算法进行提取。
请参阅图3,在一个实施例中,所述根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像,包括步骤S41-S45:
S41、判断用户是否移动虚化进度条上的滑块;
S42、若是,则根据所述滑块在所述进度条上的位置确定第一目标虚化程度;
S43、根据所述第一目标虚化程度以及预设的规则对所述第一平面之外的图像进行虚化,得到第三图像;
S44、若否,则根据所述滑块在所述虚化进度条默认出现的位置确定默认虚化程度;
S45、根据所述默认虚化程度以及预设的规则对所述第一平面之外的图像进行虚化,得到第三图像。
在本发明实施例中,提供一个虚化进度条,以使得用户能够对第一平面之外的图像的虚化程度进行调整。虚化程度也可以理解为图像的模糊程度。需要说明的是,当虚化进度条显示给用户看时,虚化进度条会出现在默认的位置,该默认的位置可以是经过程序计算认为是最优的虚化程度,也可以是没有经过计算,预先设置好的默认的位置,当用户需要调整第一平面之外的虚化程度时,移动虚化进度条上的滑块即可。优选的,滑块越往右,虚化程度越大。
在一个实施例中,所述预设的规则为距离所述第一平面的中心点越远虚化程度越大;其中,虚化程度与距离为线性或非线性的关系;所述距离表示第一平面之外的一点与第一平面的中心点之间的距离;
或所述预设的规则为所述第一平面之外的图像虚化程度相同。
在本发明实施例中,所述的预设规则分为三种情况:第一种,距离第一平面的中心点越远虚化程度越大,其中,虚化程度与距离呈线性关系;例如,虚化程度与距离的关系为:y=ax+b;其中,y为虚化程度,x为距离,a、b为系数;
第二种,距离第一平面的中心点越远虚化程度越大,其中,虚化程度与距离呈非线性关系;例如,虚化程度与距离的关系为:y=ax
第三种,第一平面之外的图像的虚化程度相同。
需要说明的是,对于第一种情况,由于距离第一平面中心点越远,虚化程度越大,因此,在通过虚化进度条调整第一平面外的图像的虚化程度时,图像虚化程度根据进度条线性变化。同理,对于第二种情况,在通过虚化进度条调整第一平面外的图像的虚化程度时,图像虚化程度根据进度条非线性变化。对于第三种情况,调整虚化程度进度条后,图像虚化程度变了,但是第一平面之外的图像的每一区域的虚化程度依然相同。
在一个实施例中,在所述得到所述第三图像的步骤之后,还包括
当接收到对所述第三图像的编译指令时,显示虚化进度条;
判断用户是否移动虚化进度条上的滑块;
若是,则根据所述滑块在所述虚化进度条上的位置确定第二目标虚化程度;
根据所述第二目标虚化程度调整所述第三图像中所述第一平面之外的图像的虚化程度。
在本发明实施例中,在生成第三图像后,用户还可以点击编译功能,电子设备,例如手机会提供虚化进度条,通过滑动虚化进度条上的滑块,调整第三图像中所述第一平面之外的图像的虚化程度。
在一个实施例中,所述的图像生成方法,还包括:
获取待处理的图像
对所述图像进行场景识别;
根据识别到的场景对所述图像进行优化,得到优化后的图像。
在本发明实施例中,具体地,所述场景包括沙滩、建筑、美食、人物,动物和花等。对所述场景进行识别的方法可以采用AI算法。本发明实施例在手机的相机里,对应场景优化功能。当用户点击该场景优化功能后,预览界面实时检测预览框内的图像,如果监测到相应的物体则会显示相应的标识表示场景识别成功,针对对应的场景也会做相关的场景优化,比如,识别到美食,就会对美食进行处理,处理后的图片让人看上去特别有食欲。
实施例二:
请参阅图4,本发明实施例提供一种图像生成装置,包括:
第一控制模块1,用于在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;
第一图像获取模块2,用于获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;
提取模块3,用于从所述第一图像中提取出所述选取的对象,作为第一目标对象
选取模块4,用于在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;
第二控制模块5,用于控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;
第二图像获取模块6,用于获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;
图像处理模块7,用于基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化。
在一个实施例中,所述第二目标对象可选取多个,即可以获得多个第二图像,利用图片堆叠技术对多幅图片(包括第一图像和多个第二图像进行合成)得到景深图像。
在一个实施例中,所述图像生成装置还包括:
存储模块,用于将所述第一图像、所述第二图像以及所述第三图像存储到存储器中;
关联模块,用于将所述第三图像的存储路径关联所述第一图像的存储路径和所述第二图像的存储路径。
在一个实施例中,所述图像生成装置还包括:
景深切换模块,用于在景深对象切换模式下,基于用户在所述第三图像中点选的对象,重新利用所述第一图像和第二图像生成第四图像,以实现景深对象切换。
在一个实施例中,所述景深切换模块,包括:
点击位置获取单元,用于在景深对象切换模式下,若检测到用户点击所述第三图像,则获取点击位置;
判断单元,用于判断所述点击位置位于所述第三图像的第一平面上还是位于所述第三图像的第一平面之外;
第一图像调出单元,用于若所述点击位置位于所述第三图像的第一平面上,则从所述存储器中调出所述第三图像对应的第一图像;
提取单元,用于在调出的所述第一图像中提取所述点击位置对应的对象,作为第三目标对象;
第二图像调出单元,用于从所述存储器中调出所述第三图像对应的第二图像;
图像处理单元,用于基于所述第三目标对象,在调出的所述第二图像中构建第二平面,对所述第二图像中第二平面之外的图像进行虚化,得到第四图像;
所述第二图像调出单元,还用于若所述点击位置位于所述第三图像的第一平面之外,则从所述存储器中调出所述第三图像对应的第二图像;
所述提取单元,还用于在调出的所述第二图像中提取所述点击位置对应的对象,作为第四目标对象;
所述第一图像调出单元,还用于从所述存储器中调出所述第三图像对应的第一图像;
所述图像处理单元,还用于基于所述第四目标对象,在调出的所述第一图像中构建第三平面,对所述第一图像中第三平面之外的图像进行虚化,得到第四图像。
在一个实施例中,所述控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离,包括:
控制摄像头马达移动,并实时计算所述选取对象的清晰度,将令选取的对象最清晰的对焦距离,作为第一对焦距离。
在一个实施例中,所述控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,作将所述最清晰的对焦距离为第一对焦距离,包括:
控制摄像头马达移动到最远的位置,再由最远的位置移动到最近的位置,获得视场内容;
或,
控制摄像头马达移动到最近的位置,再由最近的位置移动到最远的位置,获得视场内容;
根据所述视场内容,基二分法计算得到令选取的对象最清晰的对焦距离,作为第一对焦距离。
此外,基于二分法计算得到令所述选取的对象最清晰的对焦距离的具体步骤为:
控制摄像头马达从最近移动到最远或从最远移动到最近;
通过计算摄像头移动到最远时所述选取的对象的清晰度,作为第一清晰度;
计算摄像头移动到最近时所述选取的对象的清晰度,作为第二清晰度;
计算所述摄像头移动到中间时所述选取的对象的清晰度,作为第三清晰度;
将摄像头马达移动到最远时的位置作为第一位置,将摄像头马达移动到最近时的位置作为第二位置,将摄像头马达移动到中间时的位置作为第三位置;
根据所述第一清晰度、所述第二清晰度以及所述第三清晰度判断令所述选取的对象最清晰的对焦距离的位置所处的第一区间;其中,所述第一区间为第一位置到第三位置之间,或第三位置到第二位置之间;
计算所述摄像头马达移动到所述区间的中间位置时所述选取的对象的清晰度,作为第四清晰度;
根据所述第一区间两个端点的所述选取的对象的清晰度以及所述第四清晰度,确认令所述选取的对象最清晰的对焦距离的位置所处的第二区间;
以此类推,得到令所述选取的对象最清晰的对焦距离。
在一个实施例中,所述控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离,包括:
控制摄像头马达再次移动,并实时计算所述第二目标对象的清晰度,将令选取的对象最清晰的对焦距离,作为第一对焦距离。
在一个实施例中,所述控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离,包括:
控制摄像头马达移动到最远的位置,再由最远的位置移动到最近的位置,获得视场内容;
或,
控制摄像头马达移动到最近的位置,再由最近的位置移动到最远的位置,获得视场内容;
根据所述视场内容,基于二分法计算得到令所述第二目标对象最清晰的对焦距离,作为第二对焦距离。
在一个实施例中,在所述接收到拍摄指令的步骤之前,还包括:
对所述选取的对象进行场景检测,得到所述选取的对象对应的场景;
所述从所述第一图像中提取出所述选取的对象,包括:
从预设的数据库中,调用所述场景对应的人工智能模型;
利用所述人工智能模型对所述选取的对象的轮廓边缘进行估算,得到第一轮廓边缘;
根据轮廓边缘的色彩比对,对所述第一轮廓边缘进行调整,得到第二轮廓边缘;
基于所述第二轮廓边缘提取得到所述选取的对象。
在一个实施例中,所述根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像,包括:
判断用户是否移动虚化进度条上的滑块;
若是,则根据所述滑块在所述进度条上的位置确定第一目标虚化程度;
根据所述第一目标虚化程度以及预设的规则对所述第一平面之外的图像进行虚化,得到第三图像;
若否,则根据所述滑块在所述虚化进度条默认出现的位置确定默认虚化程度;
根据所述默认虚化程度以及预设的规则对所述第一平面之外的图像进行虚化,得到第三图像。
在一个实施例中,所述预设的规则为距离所述第一平面的中心点越远虚化程度越大;其中,虚化程度与距离为线性或非线性的关系;所述距离表示第一平面之外的一点与第一平面的中心点之间的距离;
或所述预设的规则为所述第一平面之外的图像虚化程度相同。
在本发明实施例中,所述的预设规则分为三种情况:第一种,距离第一平面的中心点越远虚化程度越大,其中,虚化程度与距离呈线性关系;例如,虚化程度与距离的关系为:y=ax+b;其中,y为虚化程度,x为距离,a、b为系数;
第二种,距离第一平面的中心点越远虚化程度越大,其中,虚化程度与距离呈非线性关系;例如,虚化程度与距离的关系为:y=ax
第三种,第一平面之外的图像的虚化程度相同。
需要说明的是,对于第一种情况,由于距离第一平面中心点越远,虚化程度越大,因此,在通过虚化进度条调整第一平面外的图像的虚化程度时,图像虚化程度根据进度条线性变化。同理,对于第二种情况,在通过虚化进度条调整第一平面外的图像的虚化程度时,图像虚化程度根据进度条非线性变化。对于第三种情况,调整虚化程度进度条后,图像虚化程度变了,但是第一平面之外的图像的每一区域的虚化程度依然相同。
在一个实施例中,在所述得到所述第三图像的步骤之后,还包括
当接收到对所述第三图像的编译指令时,显示虚化进度条;
判断用户是否移动虚化进度条上的滑块;
若是,则根据所述滑块在所述虚化进度条上的位置确定第二目标虚化程度;
根据所述第二目标虚化程度调整所述第三图像中所述第一平面之外的图像的虚化程度。
在一个实施例中,所述的图像生成方法,还包括:
获取待处理的图像
对所述图像进行场景识别;
根据识别到的场景对所述图像进行优化,得到优化后的图像。
在本发明实施例中,具体地,所述场景包括沙滩、建筑、美食、人物,动物和花等。对所述场景进行识别的方法可以采用AI算法。本发明实施例在手机的相机里,对应场景优化功能。当用户点击该场景优化功能后,预览界面实时检测预览框内的图像,如果监测到相应的物体则会显示相应的标识表示场景识别成功,针对对应的场景也会做相关的场景优化,比如,识别到美食,就会对美食进行处理,处理后的图片让人看上去特别有食欲。
应当理解的是,本申请实施例提供的图像生成装置与上述图像生成方法构思相同,且具体实现方式相同,本发明实施例不做过多赘述。
实施例三:
参照图5,本发明实施例还提供一种计算机设备,该计算机设备的内部结构可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作装置、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储一种图像生成方法等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。进一步地,上述计算机设备还可以设置有输入装置和显示屏等。上述计算机程序被处理器执行时以实现一种图像生成方法,包括如下步骤:在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;从所述第一图像中提取出所述选取的对象,作为第一目标对象;在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本发明实施例通过在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;从所述第一图像中提取出所述选取的对象,作为第一目标对象;在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化,如此,前后景的边沿更加清晰,景深效果更好。此外,由于本发明上述所述的所有摄像头指的均是同一个摄像头,即,本发明实施例通过一个摄像头就能够生成景深图像,从而解决了生成景深图像需要两个摄像头的技术问题。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种图像生成方法,包括如下步骤:在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;从所述第一图像中提取出所述选取的对象,作为第一目标对象;在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化,得到第三图像。
本发明实施例通过在景深图像拍摄模式下,若接收到拍摄指令,则控制摄像头马达移动,以获得令选取的对象最清晰的对焦距离,将所述最清晰的对焦距离作为第一对焦距离;获取所述摄像头在所述第一对焦距离下拍摄得到的图像,作为第一图像;从所述第一图像中提取出所述选取的对象,作为第一目标对象;在所述第一图像中选取第二目标对象;其中,所述第二目标对象的清晰度小于所述第一目标对象;控制所述摄像头马达再次移动,以获得令所述第二目标对象最清晰的对焦距离,作为第二对焦距离;获取所述摄像头在所述第二对焦距离下拍摄得到的图像,作为第二图像;基于所述第一目标对象,在所述第二图像中构建第一平面,并根据预设的规则对所述第一平面之外的图像进行虚化,如此,前后景的边沿更加清晰,景深效果更好。此外,由于本发明上述所述的所有摄像头指的均是同一个摄像头,即,本发明实施例通过一个摄像头就能够生成景深图像,从而解决了生成景深图像需要两个摄像头的技术问题。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
- 基于遮挡图像生成三维人脸图像方法、装置及电子设备
- 图像处理装置、学习装置、图像处理方法、识别基准的生成方法、学习方法和程序
- 图像生成方法、装置,图像显示方法、装置和存储介质
- 一种图像生成方法、装置、设备和存储介质
- 图像生成方法和装置、计算机设备和计算机存储介质
- 中间图像生成方法、中间图像文件、中间图像生成装置、立体图像生成方法、立体图像生成装置、裸眼立体图像显示装置、立体图像生成系统
- 视差图像生成设备、视差图像生成方法、视差图像生成程序、对象识别设备以及装置控制系统