图像处理方法及装置
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像处理方法及装置。
背景技术
通过对随机生成的噪声图像进行编码处理,可得到噪声图像在隐空间中的噪声向量,再基于隐空间中的向量与生成图像向量之间的映射关系,可获得与噪声向量对应的生成图像向量,最后通过对生成图像向量进行解码处理,可获得生成图像。
生成图像中包含多个属性,如:是否戴眼镜、性别等等,而每一个属性都包括多个类别,如:是否戴眼镜包括戴眼镜和不戴眼镜两个类别,性别包括男和女两个类别等等。若在输入的噪声图像相同的情况下时,更改生成图像中的属性的类别,如:将图像中戴眼镜的人物改为不戴眼镜的人物,将生成图像中的男人变为女人等等,则需要更改隐空间中的向量与生成图像向量之间的映射关系,导致更改生成图像的属性的类别的效率低。
发明内容
本申请提供一种图像处理方法及装置,以提高更改图像内容的效率。
第一方面,提供了一种图像处理方法,所述方法包括:获取图像生成网络的隐空间中的待编辑向量和第一目标属性在所述隐空间中的第一目标决策边界,所述第一目标属性包括第一类别和第二类别,所述隐空间被所述第一目标决策边界分为第一子空间和第二子空间,位于所述第一子空间的待编辑向量的所述第一目标属性为所述第一类别,位于所述第二子空间的待编辑向量的所述第一目标属性为所述第二类别;将所述第一子空间中的待编辑向量移动至所述第二子空间,得到编辑后的向量;将所述编辑后的向量输入至所述图像生成网络,得到目标图像。
在第一方面中,第一目标属性在图像生成网络的隐空间中的第一目标决策边界将图像生成网络的隐空间分为多个子空间,且位于不同子空间内的向量的第一目标属性的类别不同。通过将隐空间中的待编辑向量从一个子空间移动至另一个子空间,可更改待编辑向量的第一目标属性的类别,后续再将移动后的待编辑向量(即编辑后的向量)输入至图像生成网络进行解码处理,可得到更改第一目标属性的类别后的目标图像。这样,可在不对图像生成网络再次进行训练的情况下,快速、高效的更改图像生成网络生成的任意一张图像的第一目标属性的类别。
在一种可能实现的方式中,所述第一目标决策边界包括第一目标超平面,所述将所述第一子空间中的待编辑向量移动至所述第二子空间,得到编辑后的向量,包括:获取所述第一目标超平面的第一法向量,作为目标法向量;将所述第一子空间中的待编辑向量沿所述目标法向量移动,以使所述第一子空间中的待编辑向量移动至所述第二子空间,得到所述编辑后的向量。
在该种可能实现的方式中,通过将待编辑向量沿第一目标属性在目标GAN的隐空间中的决策边界(第一目标超平面)的第一法向量移动,可使待编辑向量的移动距离最短,且可使待编辑向量从第一目标超平面的一侧移动至另一侧,实现快速更改待编辑向量的第一目标属性的类别。
在另一种可能实现的方式中,在所述获取所述第一目标超平面的第一法向量之后,所述作为目标法向量之前,所述方法还包括:获取第二目标属性在所述隐空间中的第二目标决策边界,所述第二目标属性包括第三类别和第四类别,所述隐空间被所述第二目标决策边界分为第三子空间和第四子空间,位于所述第三子空间的待编辑向量的所述第二目标属性为所述第三类别,位于所述第四子空间的待编辑向量的所述第二目标属性为所述第四类别,所述第二目标决策边界包括第二目标超平面;获取所述第二目标超平面的第二法向量;获取所述第一法向量在垂直于所述第二法向量的方向上的投影向量。
在该种可能实现的方式中,将第一法向量在垂直于第二法向量的方向上的投影向量作为待编辑向量的移动方向,可减小在通过移动待编辑向量更改待编辑向量中的第一目标属性的类别时,更改待编辑向量中的第二目标属性的类别的概率。
在又一种可能实现的方式中,所述将所述第一子空间中的待编辑向量沿所述目标法向量移动,以使所述第一子空间中的待编辑向量移动至所述第二子空间,得到所述编辑后的向量,包括:将所述第一子空间中的待编辑向量沿所述目标法向量移动,以使所述第一子空间中的待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在该种可能实现的方式中,当第一目标属性为程度属性(如老或年轻这个属性,“老的程度”和“年轻的程度”分别对应不同的年龄)时,通过调整待编辑向量到第一目标超平面的距离,可调整待编辑向量的第一目标属性的“程度”,进而更改目标图像中第一目标属性的“程度”。
在又一种可能实现的方式中,所述将所述第一子空间中的待编辑向量沿所述目标法向量移动,以使所述第一子空间中的待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量,包括:在所述待编辑向量位于所述目标法向量所指向的子空间内的情况下,将所述待编辑向量沿所述目标法向量的负方向移动,以使所述第一子空间中的待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在该种可能实现的方式中,若待编辑向量与目标法向量的内积大于阈值,表征待编辑向量在第一目标超平面的正侧(即目标法向量的正方向所指的一侧),因此通过将待编辑向量沿目标法向量的负方向移动,可使待编辑向量从第一子空间移动至第二子空间,以实现更改待编辑向量的第一目标属性的类别。
在又一种可能实现的方式中,所述方法还包括:在所述待编辑向量位于所述目标法向量的负方向所指向的子空间内的情况下,将所述待编辑向量沿所述目标法向量的正方向移动,以使所述第一子空间中的待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在该种可能实现的方式中,若待编辑向量与目标法向量的内积小于阈值,表征待编辑向量在第一目标超平面的负侧(即目标法向量的负方向所指的一侧),因此通过将待编辑向量沿目标法向量的正方向移动,可使待编辑向量从第一子空间移动至第二子空间,以实现更改待编辑向量的第一目标属性的类别。
在又一种可能实现的方式中,在所述将所述第一子空间中的待编辑向量移动至所述第二子空间之后,所述得到编辑后的向量之前,所述方法还包括:获取预定属性在所述隐空间中的第三目标决策边界,所述预定属性包括第五类别和第六类别,所述隐空间被所述第三目标决策边界分为第五子空间和第六子空间,位于所述第五子空间的待编辑向量的所述预定属性为所述第五类别,位于所述第六子空间的待编辑向量的所述预定属性为所述第六类别;所述预定属性包括:质量属性;确定所述第三目标决策边界的第三法向量;将所述第五子空间中的移动后的待编辑向量沿所述第三法向量移动至所述第六子空间,所述移动后的待编辑向量通过将所述第一子空间中的待编辑向量移动至所述第二子空间获得。
在该种可能实现的方式中,将生成的图像的质量视为一个属性(即预定属性),通过使待编辑向量沿预定属性在隐空间中的决策边界(第三目标超平面)的法向量移动,以使待编辑向量从第三目标超平面的一侧移动至第三目标超平面的另一侧(即从第五子空间移动至第六子空间),可提高获得的目标图像的真实度。
在又一种可能实现的方式中,所述获取目标生成对抗网络的隐空间中的待编辑图像向量,包括:获取待编辑图像;对所述待编辑图像进行编码处理,得到所述待编辑向量。
在该种可能实现的方式中,通过对待编辑图像进行编码处理可得到待编辑向量,再将该种可能实现的方式与第一方面及前面任意一种可能实现的方式结合,可实现更改待编辑图像中第一目标属性的类别。
在又一种可能实现的方式中,所述第一目标决策边界通过按所述第一类别和所述第二类别对所述目标生成对抗网络生成的图像进行标注得到标注后的图像,并将所述标注后的图像输入至分类器获得。
在该种可能实现的方式中,根据可确定任意一个属性在目标生成对抗网络的隐空间中的决策边界,以便基于属性在目标生成对抗网络的隐空间中的决策边界更改目标生成对抗网络生成的图像中的属性的类别。
第二方面,提供了一种图像处理装置,所述装置包括:第一获取单元,用于获取图像生成网络的隐空间中的待编辑向量和第一目标属性在所述隐空间中的第一目标决策边界,所述第一目标属性包括第一类别和第二类别,所述隐空间被所述第一目标决策边界分为第一子空间和第二子空间,位于所述第一子空间的待编辑向量的所述第一目标属性为所述第一类别,位于所述第二子空间的待编辑向量的所述第一目标属性为所述第二类别;第一处理单元,用于将所述第一子空间中的待编辑向量移动至所述第二子空间,得到编辑后的向量;第二处理单元,用于将所述编辑后的向量输入至所述图像生成网络,得到目标图像。
在一种可能实现的方式中,所述第一目标决策边界包括第一目标超平面,所述第一处理单元用于:获取所述第一目标超平面的第一法向量,作为目标法向量;将所述第一子空间中的待编辑向量沿所述目标法向量移动,以使所述第一子空间中的所述待编辑向量移动至所述第二子空间,得到所述编辑后的向量。
在另一种可能实现的方式中,所述图像处理装置还包括:所述第一获取单元,用于在所述获取所述第一目标超平面的第一法向量之后,所述作为目标法向量之前,获取第二目标属性在所述隐空间中的第二目标决策边界,所述第二目标属性包括第三类别和第四类别,所述隐空间被所述第二目标决策边界分为第三子空间和第四子空间,位于所述第三子空间的待编辑向量的所述第二目标属性为所述第三类别,位于所述第四子空间的待编辑向量的所述第二目标属性为所述第四类别,所述第二目标决策边界包括第二目标超平面;第二获取单元,用于获取所述第二目标超平面的第二法向量;第三获取单元,用于获取所述第一法向量在垂直于所述第二法向量的方向上的投影向量。
在又一种可能实现的方式中,所述第一处理单元用于:将所述第一子空间中的待编辑向量沿所述目标法向量移动,以使所述第一子空间中的所述待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在又一种可能实现的方式中,所述第一处理单元用于:在所述待编辑向量位于所述目标法向量所指向的子空间内的情况下,将所述待编辑向量沿所述目标法向量的负方向移动,以使所述第一子空间中的所述待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在又一种可能实现的方式中,所述第一处理单元还用于:在所述待编辑向量位于所述目标法向量的负方向所指向的子空间内的情况下,将所述待编辑向量沿所述目标法向量的正方向移动,以使所述第一子空间中的所述待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在又一种可能实现的方式中,所述图像处理装置还包括:所述第一获取单元,用于在所述将所述第一子空间中的待编辑向量移动至所述第二子空间之后,所述得到编辑后的向量之前,获取预定属性在所述隐空间中的第三目标决策边界,所述预定属性包括第五类别和第六类别,所述隐空间被所述第三目标决策边界分为第五子空间和第六子空间,位于所述第五子空间的待编辑向量的所述预定属性为所述第五类别,位于所述第六子空间的待编辑向量的所述预定属性为所述第六类别;所述预定属性包括:质量属性;所述第三处理单元,用于确定所述第三目标决策边界的第三法向量;所述第一处理单元,用于将所述第五子空间中的移动后的待编辑向量沿所述第三法向量移动至所述第六子空间,所述移动后的待编辑向量通过将所述第一子空间中的待编辑向量移动至所述第二子空间获得。
在又一种可能实现的方式中,所述第一获取单元用于:获取待编辑图像;对所述待编辑图像进行编码处理,得到所述待编辑图像向量。
在又一种可能实现的方式中,所述第一目标决策边界通过按所述第一类别和所述第二类别对所述目标生成对抗网络生成的图像进行标注得到标注后的图像,并将所述标注后的图像输入至分类器获得。
第三方面,提供了一种处理器,所述处理器用于执行如上述第一方面及其任意一种可能实现的方式的方法。
第四方面,提供了一种电子设备,包括:处理器、发送装置、输入装置、输出装置和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器执行所述计算机指令时,所述电子设备执行如上述第一方面及其任意一种可能实现的方式的方法。
第五方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被电子设备的处理器执行时,使所述处理器执行如上述第一方面及其任意一种可能实现的方式的方法。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。
附图说明
为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1为本申请实施例提供的一种图像处理方法的流程示意图;
图2为本申请实施例提供的另一种图像处理方法的流程示意图;
图3为本申请实施例提供的一种决策边界的正侧和负侧的示意图;
图4为本申请实施例提供的另一种图像处理方法的流程示意图;
图5为本申请实施例提供的一种第一法向量向第二法向量投影的示意图;
图6为本申请实施例提供的另一种图像处理方法的流程示意图;
图7为本申请实施例提供的一种获取第一目标决策边界的方法的流程示意图;
图8为本申请实施例提供的一种图像处理装置的结构示意图;
图9为本申请实施例提供的一种图像处理装置的硬件结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面结合本申请实施例中的附图对本申请实施例进行描述。
请参阅图1,图1是本申请实施例(一)提供的一种图像处理方法的流程示意图。
101、获取图像生成网络的隐空间中的待编辑向量和第一目标属性在隐空间中的第一目标决策边界,第一目标属性包括第一类别和第二类别,隐空间被第一目标决策边界分为第一子空间和第二子空间,位于第一子空间的待编辑向量的第一目标属性为第一类别,位于第二子空间的待编辑向量的第一目标属性为第二类别。
本实施例中,图像生成网络可以是任意已训练好的生成对抗网络(generativeadversarial networks,GAN)中的生成网络。通过将随机向量输入至图像生成网络,可生成一幅逼近真实相机拍摄得到的图像(下文将称为生成图像)。
在训练过程中,图像生成网络将通过训练学习获得从隐空间中的向量到语义空间中的语义向量之间的映射关系。而在上述通过图像生成网络得到生成图像的过程中,图像生成网络根据训练过程中获得的映射关系将隐空间中的随机向量转化成语义空间中的语义向量,再通过对语义向量进行编码处理,得到生成图像。
本申请实施例中,待编辑向量为图像生成网络的隐空间中的任意向量。
本申请实施例中,第一目标属性可以包括多个类别,即第一目标属性的多个不同类别包括第一类别和第二类别,例如:是否戴眼镜这个属性包括戴眼镜和不戴眼镜、性别这个属性包括男和女等等。
在图像生成网络的隐空间中,每一个属性均可视为对图像生成网络的隐空间进行空间划分,而用于空间划分的决策边界可将隐空间分为多个子空间。
本实施例中,第一目标决策边界为第一目标属性在图像生成网络的隐空间中的决策边界,则图像生成网络的隐空间被第一目标决策边界分为第一子空间和第二子空间,且位于不同子空间中的向量所表征的属性类别不同。即位于第一子空间的向量的第一目标属性为第一类别,位于第二子空间的向量的第一目标属性为第二类别。
需要理解的是,上述第一类别和第二类别并不表示仅仅只有两个类别,而是泛指可以有多个类别,同理第一子空间和第二子空间并不表示仅仅只有两个子空间,而是泛指可以有多个子空间。
举例来说(例1),假定在1号图像生成网络的隐空间中,性别这个二元属性的决策边界是超平面A,超平面A将1号图像生成网络的隐空间分成两个子空间,分别为1号子空间和2号子空间,其中,1号子空间和2号子空间分别位于A的两侧,1号子空间内的向量所表征的属性类别为男,2号子空间内的向量所表征的属性类别则为女。
上述“向量所表征的属性类别”指GAN基于该向量生成的图像所表现的属性类别。接着例1继续举例(例2),假定向量a位于1号子空间,向量b位于2号子空间,则1号图像生成网络基于向量a生成的图像中的人物的性别为男,1号图像生成网络基于向量b生成的图像中的人物的性别为女。
如上所述,每一个属性均可视为对图像生成网络的隐空间进行分类,而隐空间中任意一个向量都对应一个属性类别,因此,待编辑向量位于隐空间在第一目标决策边界下的任意一个子空间中。
同一个图像生成网络中,不同属性的决策边界不同。此外,由于属性在图像生成网络的隐空间中的决策边界是由图像生成网络的训练过程决定的,因此同一属性在不同的图像生成网络的隐空间中的决策边界可以不同。
接着例2继续举例(例3),对于1号图像生成网络,是否戴眼镜这个属性在隐空间中的决策边界是超平面A,但性别这个属性在隐空间中的决策边界是超平面B。对于2号图像生成网络,是否戴眼镜这个属性在隐空间中的决策边界是超平面C,但性别这个属性在隐空间中的决策边界是超平面D。其中,A和C可以相同,也可以不同,B和D可以相同,也可以不同。
获取图像生成网络的隐空间中的待编辑向量可以由接收用户通过输入组件向图像生成网络的隐空间中输入待编辑向量实现,其中,输入组件包括:键盘、鼠标、触控屏、触控板和音频输入器等。也可以是接收终端发送的待编辑向量,并将该待编辑向量输入至图像生成网络的隐空间中获得,其中,终端包括手机、计算机、平板电脑、服务器等。还可接收用户通过输入组件输入的待编辑图像或接收终端发送的待编辑图像,并通过对待编辑图像进行编码处理,再将编码处理后得到的向量输入至图像生成网络的隐空间中得到待编辑向量。本申请对获取待编辑向量的方式不做限定。
获取第一目标属性在隐空间中的第一目标决策边界可以是接收用户通过输入组件输入的第一目标决策边界,其中,输入组件包括:键盘、鼠标、触控屏、触控板和音频输入器等。也可以是接收终端发送的第一目标决策边界,其中,终端包括手机、计算机、平板电脑、服务器等。
102、将第一子空间中的待编辑向量移动至第二子空间,得到编辑后的向量。
如101所述,待编辑向量位于隐空间在第一目标决策边界下的任意一个子空间中,而第一目标决策边界将图像生成网络的隐空间分为多个子空间,且向量在不同的子空间中所表征的属性类别不同。因此,可通过将待编辑向量从一个子空间移动至另一个子空间,以更改向量所表征的属性类别。
接着例2继续举例(例4),若将向量a从1号子空间移动至2号子空间得到向量c,则向量c所表征的属性类别为女,1号图像生成网络基于向量c生成的图像中的人物的性别为女。
若第一目标属性为二元属性,则第一目标决策边界为图像生成网络的隐空间中的超平面,在一种可能实现的方式中,可将待编辑向量沿第一目标决策边界的法向量进行移动,以使待编辑向量从一个子空间移动至另一个子空间,得到编辑后的向量。
在另一种可能实现的方式中,可将待编辑向量沿任意方向进行移动,以使任意一个子空间中的待编辑向量移动至另一个子空间。
103、将编辑后的向量输入至图像生成网络,得到目标图像。
本申请实施例中,图像生成网络可由任意数量的卷积层堆叠获得,通过图像生成网络中的卷积层对编辑后的向量进行卷积处理,实现对编辑后的向量的解码,得到目标图像。
在一种可能实现的方式中,将编辑后的向量输入至图像生成网络中,图像生成网络根据训练获得的从隐空间中的向量到语义空间中的语义向量之间的映射关系,将编辑后的图像向量转化成编辑后的语义向量,并通过对编辑后的语义向量进行卷积处理,得到目标图像。
本实施中,第一目标属性在图像生成网络的隐空间中的第一目标决策边界将图像生成网络的隐空间分为多个子空间,且位于不同子空间内的向量的第一目标属性的类别不同。通过将图像生成网络的隐空间中的待编辑向量从一个子空间移动至另一个子空间,可更改待编辑向量的第一目标属性的类别,后续再通过图像生成网络对移动后的待编辑向量(即编辑后的向量)进行解码处理,得到更改第一目标属性的类别后的目标图像。这样,可在不对图像生成网络再次进行训练的情况下,快速、高效的更改图像生成网络生成的任意一张图像的第一目标属性的类别。
请参阅图2,图2是本申请实施例(二)提供的实施例(一)中102的一种可能实现的方式的流程示意图。
201、获取第一目标超平面的第一法向量,作为目标法向量。
本实施例中,第一目标属性为二元属性,第一目标决策边界为第一目标超平面,第一目标超平面将隐空间分成两个子空间,这两个子空间分别对应第一目标属性的不同类别(可参见例1中是否戴眼镜的类别、性别的类别)。且待编辑向量位于隐空间在第一目标超平面下的任意一个子空间中,接着例1接续举例(例5),假定获取的是待编辑向量d,第一目标属性为性别,若待编辑向量表征的属性类别为男,则待编辑向量d位于1号空间,若待编辑向量表征的类别为女,则待编辑向量d位于2号空间。也就是说,待编辑向量表征的第一目标属性的类别决定了待编辑向量在隐空间中的位置。
如102所述,通过将待编辑向量从隐空间在第一目标超平面下的一个子空间移动至另一个子空间即可更改待编辑向量表征的第一目标属性的类别(当第一目标属性为二元属性是,即从第一目标超平面的一侧移动至第一目标超平面的另一侧)。但该移动的方向不同,移动的效果也不一样。其中,移动的效果包括是否能从第一目标超平面的一侧移动至第一目标超平面的另一侧、从第一目标超平面的一侧移动至第一目标超平面的另一侧的移动距离等等。
因此,本实施例首先确定第一目标超平面的法向量(即第一法向量),通过使待编辑向量沿第一法向量移动,可使待编辑向量从第一目标超平面的一侧移动至第一目标超平面的另一侧,且在移动后的待编辑向量的位置相同的情况下,沿第一法向量移动的移动距离最短。
本申请实施例中,目标法向量的正方向或负方向即为待编辑向量从第一目标超平面的一侧移动至第一目标超平面的另一侧的移动方向,而在本实施例中,目标法向量即为第一法向量。
可选的,获取到的第一目标超平面可以是第一目标超平面在图像生成网络的隐空间中的表达式,再根据该表达式可计算得到第一法向量。
202、将第一子空间中的待编辑向量沿目标法向量移动,以使第一子空间中的待编辑向量移动至第二子空间,得到编辑后的向量。
本实施例中,目标法向量的方向包括目标法向量的正方向和目标法向量的负方向。为使待编辑向量沿目标方向量移动,可从第一目标超平面的一侧移动至第一目标超平面的另一侧,在移动待编辑向量之前,需要先判断待编辑向量所指向的子空间与目标向量指向的子空间是否相同,以进一步确定使待编辑向量沿目标法向量的正方向移动还是沿目标法向量的负方向移动。
在一种可能实现的方式中,如图3所示,定义决策边界的法向量的正方向所指向的子空间所在的一侧为正侧,决策边界的法向量的负方向所指向的子空间所在的一侧为负侧。将待编辑图像向量与目标法向量的内积与阈值进行比较,在待编辑图像向量与目标法向量的内积大于阈值的情况下,表征待编辑图像向量在第一目标超平面的正侧(即待编辑向量位于目标法向量所指向的子空间内),需要将待编辑向量沿目标法向量的负方向移动,以使待编辑向量从第一目标超平面的一侧移动至另一侧。在待编辑向量与目标法向量的内积小于阈值的情况下,表征待编辑图像向量在第一目标超平面的负侧(即待编辑向量位于目标法向量的负方向所指向的子空间内),需要将待编辑向量沿目标法向量的正方向移动,以使待编辑向量从第一目标超平面的一侧移动至另一侧。可选的,上述阈值的取值为0。
本实施例虽然将所有属性视为二元属性(即包括两个类别),但实际情况中,有些属性并不是严格意义上的二元属性,该类属性不仅包含两个类别,且该类属性在不同图像上存在表现程度的差异(下文将称为程度属性)。
举例来说(例5):老或年轻这个属性虽然只包括老和年轻这两个类别,但在图像中不同的人物“老的程度”和“年轻的程度”不同,其中,“老的程度”和“年轻的程度”可理解为年龄,“老的程度”越大,年龄越大,“年轻的程度”越大,年龄越小。而老和年轻这个属性的决策边界则是将所有年龄段的人物分为老和年轻两个类别,例如:图像中的人物年龄段为0~90岁,老和年轻这个属性的决策边界将年龄大于或等于40岁的人物归为老,将年龄小于40岁的人物归为年轻。
对于程度属性,通过调整待编辑向量到决策边界(即超平面)的距离,可调整该属性最终在图像中所表现的“程度”。
接着例5继续举例(例6),定义待编辑向量在超平面的正侧的情况下到超平面的距离为正距离,待编辑向量在超平面的负侧的情况下到超平面的距离为负距离。假定老或年轻这个属性在3号图像生成网络的隐空间中的超平面为E,且E的正侧表征的属性类别为老,E的负侧表征的属性类别为年轻,将待编辑图像向量e输入至3号图像生成网络的隐空间,且e位于E的正侧。通过移动e使e到E的正距离变大可使e所表征的“老的程度”变大(即年龄变大),通过移动e使e到E的负距离变大可使e所表征的“年轻的程度”变大(即年龄变小)。
在一种可能实现的方式中,将待编辑向量沿目标法向量移动,以使第一子空间中的待编辑向量移动至第二子空间,且使待编辑向量到第一目标超平面的距离为预设值,以使得到的编辑后的向量在第一目标属性的类别上表征特定程度。接着例6继续举例(例7),假定e到E的负距离为5至7时,所表征的年龄为25岁,若用户需要使目标图像中的人物的年龄为25岁时,可通过移动e使e到E的负距离为5至7中的任意一个数值。
本实施中,第一目标属性为二元属性,通过将待编辑向量沿第一目标属性在图像生成网络的隐空间中的决策边界(第一目标超平面)的第一法向量移动,可使待编辑向量的移动距离最短,且可保证使待编辑向量从第一目标超平面的一侧移动至另一侧,实现快速更改待编辑向量的第一目标属性的类别。当第一目标属性为程度属性时,通过调整待编辑向量到第一目标超平面的距离,可调整待编辑向量的第一目标属性的“程度”,进而更改目标图像中第一目标属性的“程度”。
实施例(一)和实施例(二)中所阐述的第一目标属性为非耦合属性,即通过将待编辑向量从第一子空间移动至第二子空间,可更改第一目标属性所表征的类别,且不会改变待编辑向量中所包含的其他属性的所表征的类别。但在图像生成网络的隐空间中,还存在耦合的属性,即通过将待编辑向量从第一子空间移动至第二子空间更改第一目标属性所表征的类别的同时,也就改变与第一目标属性耦合的属性所表征的类别。
举例来说(例7),“是否戴眼镜”、“老或年轻”这两个属性为耦合属性,那么在通过移动待编辑向量以使待编辑向量表征的是否戴眼镜的属性类别从戴眼镜变为不戴眼镜时,待编辑图像向量表征的老或年轻的属性类别可能也从老变成了年轻。
因此,在第一目标属性存在耦合属性的情况下,需要一种解耦合的方法以使在通过移动待编辑向量更改第一目标属性的类别时,不更改与第一目标属性耦合的属性的类别。
请参阅图4,图4为本申请实施例(三)提供另一种图像处理方法的流程图。
401、获取图像生成网络的隐空间中的待编辑向量和第一目标属性在隐空间中的第一目标决策边界。
请参见101,此处将不再赘述。
402、获取第一目标超平面的第一法向量。
请参见201,此处将不再赘述。
403、获取第二目标属性在隐空间中的第二目标决策边界。
本实施例中,第二目标属性与第一目标属性之间可以存在耦合关系,第二目标属性包括第三类别和第四类别。第二目标决策边界可以是第二目标超平面,第二目标超平面将图像生成网络的隐空间分为第三子空间和第四子空间。且位于第三子空间的向量的第二目标属性为第三类别,位于第四子空间的向量的第二目标属性为第四类别。
获取第二决策边界的方式可参见101中获取第一决策边界的方式,此处将不再赘述。
可选的,可在获取第一目标决策边界的同时获取第二目标决策边界,本申请对获取第一决策边界和获取第二决策边界的顺序不做限定。
404、获取第二目标超平面的第二法向量。
请参见201获取第一目标超平面的第一法向量,此处将不再赘述。
405、获取第一法向量在垂直于第二法向量的方向上的投影向量。
本实施例中的属性均为二元属性,因此每个属性在图像生成网络的隐空间中的决策边界均为超平面,在不同属性之间存在耦合关系时,不同属性的超平面不是平行关系,而是相交关系。因此,若需要在更改任意一个属性的类别的情况下,不更与该属性耦合的属性的类别,可使待编辑图像向量从任意一个属性的超平面的一侧移动至该超平面的另一侧,且保证该待编辑图像向量不从与该属性耦合的属性的超平面的一侧移动至该超平面的另一侧。
为此,本实施例通过将第一法向量在垂直于所述第二法向量的方向上的投影向量作为待编辑向量的移动方向,即将投影向量作为目标法向量。请参见图5,其中n1为第一法向量,n2为第二法向量,将n1向n2的方向进行投影,该投影方向为(即为投影向量)。由于垂直于n2,平行于第二目标超平面,因此,沿的方向移动待编辑向量,可保证待编辑向量不会从第二目标超平面的一侧移动至第二目标超平面的另一侧,但可使待编辑向量从第一目标超平面的一侧移动至第一目标超平面的另一侧。
需要理解的是,在本实施例中,若第一目标属性与第二目标属性之间不存在耦合关系,通过401~405的处理得到的目标法向量是第一法向量或第二法向量。
406、将待编辑向量沿目标法向量移动,以使第一子空间中的待编辑向量移动至第二子空间,得到编辑后的向量。
在确定目标法向量之后,将待编辑向量沿目标法向量移动,即可使第一子空间中的待编辑向量移动至第二子空间,并得到编辑后的向量。
接着例7继续举例(例8),是否戴眼镜、老和年轻这两个属性为耦合属性,是否戴眼镜这个属性在图像生成网络的隐空间中的决策边界为超平面F,老和年轻这个属性在图像生成网络的隐空间中的决策边界为超平面G,且F的法向量为n3,G的法向量为n4。若需要改变图像生成网络的隐空间中的待编辑向量f在是否戴眼镜这个属性上所表征的类别,且不改变待编辑向量f在老和年轻这个属性上所表征的类别,可将f沿移动。若需要改变图像生成网络的隐空间中的待编辑向量f在老和年轻这个属性上所表征的类别,且不改变待编辑向量f在是否戴眼镜这个属性上所表征的类别,可将f沿移动。
本实施例通过将相互耦合的属性在图像生成网络的隐空间中的决策边界的法向量之间的投影方向作为待编辑向量的移动方向,可减小在通过移动待编辑向量更改待编辑向量中的任意一个属性的类别时,更改待编辑向量中与该属性耦合的属性的类别的概率。基于本实施例提供的方法,可实现在更改图像生成网络生成的图像中的任意一个属性类别的同时,不更改除该属性(被更改的属性)类别之外的所有内容。
图像生成网络可用于得到生成图像,但若生成图像的质量低则生成图像的真实度低,其中,生成图像的质量由生成图像的清晰度、细节信息的丰富度、纹理信息的丰富度等因素决定,具体的,生成图像的清晰度越高,生成图像的质量就越高,生成图像的细节信息的丰富度越高,生成图像的质量越高,生成图像的纹理信息的丰富度越高,生成图像的质量越高。本申请实施例将生成图像的质量也视为一种二元属性(下文将称为质量属性),与实施例(一)~实施例(三)中的图像内容属性(如:是否戴眼镜、性别等等,下文将称为内容属性)相同,通过在图像生成网络的隐空间中移动待编辑向量可提升待编辑向量所表征的图像质量。
请参阅图6,图6为本申请实施例(四)提供的另一种图像处理方法的流程图。
601、获取图像生成网络的隐空间中的待编辑向量和第一目标属性在隐空间中的第一目标决策边界,第一目标属性包括第一类别和第二类别,隐空间被第一目标决策边界分为第一子空间和第二子空间,位于第一子空间的待编辑向量的第一目标属性为第一类别,位于第二子空间的待编辑向量的第一目标属性为第二类别。
请参见101,此处将不再赘述。
602、将第一子空间中的待编辑向量移动至第二子空间。
将第一子空间中的待编辑向量移动至第二子空间的过程请参见102,此处将不再赘述。需要指出的是,本实施例中,将第一子空间中的待编辑向量移动至第二子空间得到不是编辑后的向量,而是移动后的待编辑向量。
603、获取预定属性在隐空间中的第三目标决策边界,预定属性包括第五类别和第六类别,隐空间被第三目标决策边界分为第五子空间和第六子空间,位于第五子空间的待编辑向量的预定属性为第五类别,位于第六子空间的待编辑向量的预定属性为第六类别。
本实施例中,预定属性包括质量属性,第五类别和第六类别分别是高质量和低质量(即可以是第五类别是高质量,第六类别是低质量,也可以是第六类别是高质量,第五类别是低质量),其中,高质量表征的图像质量高,低质量表征的图像质量低。第三决策边界可以是超平面(下文将称为第三目标超平面),即第三目标超平面将图像生成网络的隐空间分为第五子空间和第六子空间,其中,位于第五子空间的向量的预定属性为第五类别,位于第六子空间的预定属性为第六类别,且602得到的移动后的向量位于第五子空间。
需要理解的是,移动后的待编辑向量位于第五子空间可以指移动后的待编辑向量表征的预定属性是高质量,也可以是低质量。
604、根据第三目标决策边界,得到第三目标决策边界的第三法向量。
请参见201获取第一目标超平面的第一法向量,此处将不再赘述。
605、将第五子空间中的移动后的待编辑向量沿第三向量移动至第六子空间,得到编辑后的向量。
本实施例中,图像质量属性与任意一个内容属性均不存在耦合关系,因此通过将待编辑向量从第一子空间移动至第二子空间并不会改变图像质量属性的类别。在得到移动后的图像向量后,可将移动后的向量沿第三法向量从第五子空间移动至第六子空间,以更改待编辑向量的图像质量属性的类别。
606、对编辑后的向量进行解码处理,得到目标图像。
请参见103,此处将不再赘述。
本实施例中,将图像生成网络生成的图像的质量视为一个属性,通过使待编辑向量沿图像质量属性在图像生成网络的隐空间中的决策边界(第三目标超平面)的法向量移动,以使待编辑向量从第三目标超平面的一侧移动至第三目标超平面的另一侧,可提高获得的目标图像的真实度。
请参阅图7,图7为本申请实施例(五)提供一种获取第一目标决策边界的方法的流程图。
701、获取按第一类别和第二类别对图像生成网络生成的图像进行标注得到的标注后的图像。
本实施例中,第一类别、第二类别以及图像生成网络的含义可参见101。图像生成网络生成的图像指向图像生成网络输入随机向量获得的图像。需要指出的是,图像生成网络生成的图像中包含上述第一目标属性。
举例来说(例9),第一目标属性为是否戴眼镜,则图像生成网络生成的图像中需要包含戴眼镜的图像和不戴眼镜的图像。
本实施例中,按第一类别和第二类别对图像生成网络生成的图像进行标注指按第一类别和第二类别对图像生成网络生成的图像的内容进行区分,并给图像生成网络生成的图像添加标签。
接着例9继续举例(例10),假定不戴眼镜对应的标签为0,戴眼镜对应的标签为1,图像生成网络生成的图像包括图像a、图像b、图像c、图像d,图像a和图像c中的人物戴眼镜,图像b和图像d中的人物不戴眼镜,则可将图像a和图像c标注为1,图像b和图像d标注为0,得到标注后的图像a、标注后的图像b、标注后的图像c、标注后的图像d。
702、将标注后的图像输入至分类器,得到第一目标决策边界。
本实施例中,线性分类器可对输入的标注后的图像进行编码处理,得到标注后的图像的向量,再根据标注后的图像的标签对所有标注后的图像的向量进行分类,得到第一目标决策边界。
接着例10继续举例,将标注后的图像a、标注后的图像b、标注后的图像c、标注后的图像d一起输入至线性分类器,经线性分类器的处理得到标注后的图像a的向量、标注后的图像b的向量、标注后的图像c的向量、标注后的图像d的向量。再根据图像a、图像b、图像c、图像d的标签(图像a和图像c的标签是1,图像b和图像d的标签是0)确定一个超平面,将标注后的图像a的向量、标注后的图像b的向量、标注后的图像c的向量、标注后的图像d的向量分为两类,其中标注后的图像a的向量和标注后的图像c的向量在超平面的同一侧,标注后的图像b的向量和标注后的图像d的向量在超平面的同一侧,且标注后的图像a的向量和标注后的图像b的向量在超平面的不同侧。
需要理解的是,实施例(五)的执行主体和实施例(一)至实施例(四)的执行主体可以不同,也可以相同。
例如,将按戴眼镜和不戴眼镜对1号图像生成网络生成的图像进行标注得到的图像输入至1号终端,1号终端可根据实施例(五)提供的方法确定是否戴眼镜这个属性在1号图像生成网络的隐空间中的决策边界。再将待编辑图像和该决策边界输入至2号终端,2号终端可根据该决策边界和实施例(一)至实施例(四)提供的方法将待编辑图像的眼镜去除,得到目标图像。
再例如,将按戴眼镜和不戴眼镜对1号图像生成网络生成的图像进行标注得到的图像和待编辑图像输入至3号终端。3号终端首先可根据实施例(五)提供的方法确定是否戴眼镜这个属性在1号图像生成网络的隐空间中的决策边界,再根据该决策边界和实施例(一)至实施例(四)提供的方法将待编辑图像的眼镜去除,得到目标图像。
基于本实施例,可确定任意一个属性在图像生成网络的隐空间中的决策边界,以便后续基于属性在图像生成网络的隐空间中的决策边界更改图像生成网络生成的图像中的属性的类别。
基于实施例(一)至实施例(五)所提供的方法,本申请实施例(六)还提供了一些可能实现的应用场景。
在一种可能实现的方式中,终端(如手机、电脑、平板电脑等)在接收到用户输入的待编辑图像和目标编辑属性的情况下,首先可对待编辑图像进行编码处理,得到待编辑向量。再根据实施例(一)至实施例(五)所提供的方法对待编辑向量进行处理,以更改待编辑向量中的目标编辑属性的类别,得到编辑后的向量,再对编辑后的向量进行解码处理,得到目标图像。
举例来说,用户向电脑输入一张戴眼镜的自拍照,同时向电脑发送去除自拍照中的眼镜的指令,电脑在接收到该指令后,可根据实施例(一)至实施例(五)所提供的方法对该自拍照进行处理,在不影响自拍照中其他图像内容的情况下,去除自拍照中的眼睛,得到未戴眼镜的自拍照。
在另一种可能实现的方式中,用户可在通过终端拍摄视频时,向终端(如手机、电脑、平板电脑等)输入目标编辑属性,并向终端发送更改终端拍摄得到的视频流中的目标编辑属性的类别,终端在接收到该指令后,可分别对通过摄像头获取到的视频流中的每一帧图像进行编码处理,得到多个待编辑向量。再根据实施例(一)至实施例(五)所提供的方法分别对多个待编辑向量进行处理,以更改每个待编辑向量中的目标编辑属性的类别,得到多个编辑后的向量,再对多个编辑后的向量进行解码处理,得到多帧目标图像,即目标视频流。
举例来说,用户向手机发送将视频中的人物的年龄调整至18岁,并通过手机与好友进行视频通话,此时手机可根据实施例(一)至实施例(四)对摄像头获取到的视频流中的每一帧图像分别进行处理,得到处理后的视频流,这样处理后的视频流中的人物即为18岁。
本实施例中,将本实施例(一)至实施例(五)提供的方法应用于终端,可实现更改用户输入至终端的图像中的属性的类别,而基于本申请实施例提供的方法可快速更改图像中的属性的类别,将本实施例(一)至实施例(五)提供的方法应用于终端可更改终端实时获取的视频中的属性的类别。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。
请参阅图8,图8为本申请实施例提供一种图像处理装置的结构示意图,该装置1包括:第一获取单元11、第一处理单元12、第二处理单元13、第二获取单元14以及第二处理单元15。其中:
第一获取单元11,用于获取图像生成网络的隐空间中的待编辑向量和第一目标属性在所述隐空间中的第一目标决策边界,所述第一目标属性包括第一类别和第二类别,所述隐空间被所述第一目标决策边界分为第一子空间和第二子空间,位于所述第一子空间的待编辑向量的所述第一目标属性为所述第一类别,位于所述第二子空间的待编辑向量的所述第一目标属性为所述第二类别;
第一处理单元12,用于将所述第一子空间中的待编辑向量移动至所述第二子空间,得到编辑后的向量;
第二处理单元13,用于将所述编辑后的向量输入至所述图像生成网络,得到目标图像。
在一种可能实现的方式中,所述第一目标决策边界包括第一目标超平面,所述第一处理单元11用于:获取所述第一目标超平面的第一法向量,作为目标法向量;将所述第一子空间中的待编辑向量沿所述目标法向量移动,以使所述第一子空间中的所述待编辑向量移动至所述第二子空间,得到所述编辑后的向量。
在另一种可能实现的方式中,所述图像处理装置1还包括:所述第一获取单元11,用于在所述获取所述第一目标超平面的第一法向量之后,所述作为目标法向量之前,获取第二目标属性在所述隐空间中的第二目标决策边界,所述第二目标属性包括第三类别和第四类别,所述隐空间被所述第二目标决策边界分为第三子空间和第四子空间,位于所述第三子空间的待编辑向量的所述第二目标属性为所述第三类别,位于所述第四子空间的待编辑向量的所述第二目标属性为所述第四类别,所述第二目标决策边界包括第二目标超平面;第二获取单元14,用于获取所述第二目标超平面的第二法向量;第三获取单元15,用于获取所述第一法向量在垂直于所述第二法向量的方向上的投影向量。
在又一种可能实现的方式中,所述第一处理单元12用于:将所述第一子空间中的待编辑向量沿所述目标法向量移动,以使所述第一子空间中的所述待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在又一种可能实现的方式中,所述第一处理单元12用于:在所述待编辑向量位于所述目标法向量所指向的子空间内的情况下,将所述待编辑向量沿所述目标法向量的负方向移动,以使所述第一子空间中的所述待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在又一种可能实现的方式中,所述第一处理单元12还用于:在所述待编辑向量位于所述目标法向量的负方向所指向的子空间内的情况下,将所述待编辑向量沿所述目标法向量的正方向移动,以使所述第一子空间中的所述待编辑向量移动至所述第二子空间,且使所述待编辑向量到所述第一目标超平面的距离为预设值,得到所述编辑后的向量。
在又一种可能实现的方式中,所述图像处理装置1还包括:所述第一获取单元11,用于在所述将所述第一子空间中的待编辑向量移动至所述第二子空间之后,所述得到编辑后的向量之前,获取预定属性在所述隐空间中的第三目标决策边界,所述预定属性包括第五类别和第六类别,所述隐空间被所述第三目标决策边界分为第五子空间和第六子空间,位于所述第五子空间的待编辑向量的所述预定属性为所述第五类别,位于所述第六子空间的待编辑向量的所述预定属性为所述第六类别;所述预定属性包括:质量属性;所述第二处理单元15,用于确定所述第三目标决策边界的第三法向量;所述第一处理单元12,用于将所述第五子空间中的移动后的待编辑向量沿所述第三法向量移动至所述第六子空间,所述移动后的待编辑向量通过将所述第一子空间中的待编辑向量移动至所述第二子空间获得。
在又一种可能实现的方式中,所述第一获取单元11用于:获取待编辑图像;对所述待编辑图像进行编码处理,得到所述待编辑图像向量。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
图9为本申请实施例提供的一种图像处理装置的硬件结构示意图。该图像处理装置2包括处理器21,存储器22,输入装置23,输出装置24。该处理器21、存储器22、输入装置23和输出装置24通过连接器相耦合,该连接器包括各类接口、传输线或总线等等,本申请实施例对此不作限定。应当理解,本申请的各个实施例中,耦合是指通过特定方式的相互联系,包括直接相连或者通过其他设备间接相连,例如可以通过各类接口、传输线、总线等相连。
处理器21可以是一个或多个图形处理器(graphics processing unit,GPU),在处理器21是一个GPU的情况下,该GPU可以是单核GPU,也可以是多核GPU。可选的,处理器21可以是多个GPU构成的处理器组,多个处理器之间通过一个或多个总线彼此耦合。可选的,该处理器还可以为其他类型的处理器等等,本申请实施例不作限定。
存储器22可用于存储计算机程序指令,以及用于执行本申请方案的程序代码在内的各类计算机程序代码。可选地,存储器包括但不限于是随机存储记忆体(random accessmemory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasableprogrammable read only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM),该存储器用于相关指令及数据。
输入装置23用于输入数据和/或信号,以及输出装置24用于输出数据和/或信号。输出装置23和输入装置24可以是独立的器件,也可以是一个整体的器件。
可理解,本申请实施例中,存储器22不仅可用于存储相关指令,还可用于存储相关图像,如该存储器22可用于存储通过输入装置23获取的待搜索神经网络,又或者该存储器22还可用于存储通过处理器21搜索获得的目标神经网络等等,本申请实施例对于该存储器中具体所存储的数据不作限定。
可以理解的是,图9仅仅示出了一种图像处理装置的简化设计。在实际应用中,图像处理装置还可以分别包含必要的其他元件,包含但不限于任意数量的输入/输出装置、处理器、存储器等,而所有可以实现本申请实施例的图像处理装置都在本申请的保护范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。所属领域的技术人员还可以清楚地了解到,本申请各个实施例描述各有侧重,为描述的方便和简洁,相同或类似的部分在不同实施例中可能没有赘述,因此,在某一实施例未描述或未详细描述的部分可以参见其他实施例的记载。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriberline,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(digital versatiledisc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:只读存储器(read-only memory,ROM)或随机存储存储器(random access memory,RAM)、磁碟或者光盘等各种可存储程序代码的介质。