一种基于图像识别的测光处理方法、系统与设备转让专利

申请号 : CN201710353201.3

文献号 : CN108955518B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 黄伟张文明陈少杰

申请人 : 武汉斗鱼网络科技有限公司

摘要 :

本发明涉及图像处理技术领域,提供一种基于图像识别的测光处理方法、系统与设备。所述方法包括:从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标;对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的光强数据进行图像优化。本发明提供的一种基于图像识别的测光处理方法、系统与设备,通过对相机预览图像中目标物体的识别和坐标转换,能够准确获取目标物体对应的相机测光区域,从而实现对目标物体区域的有效测光,曝光优化针对性更强,优化效果更明显。

权利要求 :

1.一种基于图像识别的测光处理方法,其特征在于,包括:从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;

根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标;

对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的光强数据进行图像优化;

其中,所述物体图像坐标系与相机测光区域坐标系的关系的获取处理流程包括:获取所述相机预览图像中两个特值点图像坐标,以及所述相机测光区域坐标系中所述两个特值点图像坐标分别对应的两个相机测光特值点坐标;

对坐标系各方向轴分别列写包含待定系数的处理函数,并将所述两个特值点图像坐标和所述两个相机测光特值点坐标分别对应带入所述包含待定系数的处理函数,分别获取所述各方向轴对应的两个特值方程;

分别求解所述各方向轴对应的两个特值方程组成的处理函数组,获取所述待定系数的取值,并将所述待定系数的取值带入所述包含待定系数的处理函数,获取所述图像坐标与相机测光坐标换算公式。

2.根据权利要求1所述的方法,其特征在于,所述进行图像优化包括:进行图像区域调整和/或图像曝光及色温调整。

3.根据权利要求1或2所述的方法,其特征在于,所述目标物体包括:人脸;

相应的,所述目标物体图像包括人脸图像。

4.根据权利要求1所述的方法,其特征在于,所述获取所述相机预览图像中两个特值点图像坐标包括:根据相机设置参数,获取所述相机预览图像长宽尺寸;

获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向,并选择所述坐标系中两个不同点作为两个特值点;

根据所述相机预览图像长宽尺寸、所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向,确定所述两个特值点的特值点图像坐标。

5.根据权利要求4所述的方法,其特征在于,所述获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向包括:通过相机传感器获取相机旋转角度,根据所述相机旋转角度获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向。

6.根据权利要求3所述的方法,其特征在于,所述根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标包括:分别将人脸图像关键点坐标代入所述图像坐标与相机测光坐标换算公式,获取对应的所述相机测光关键点坐标。

7.根据权利要求3所述的方法,其特征在于,所述通过所述目标物体图像确定目标物体图像关键点坐标包括:根据人脸图像获取人脸坐标,通过比较各所述人脸坐标值,判断获取人脸图像关键点坐标。

8.一种基于图像识别的测光处理系统,其特征在于,包括:图像识别模块,用于从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;

坐标换算模块,用于根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标为相机测光关键点坐标;

测光处理模块,用于对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的亮度信息进行图像优化;

其中,所述坐标换算模块具体包括坐标获取单元、方程列写单元和换算公式获取单元,其中:所述坐标获取单元用于获取所述相机预览图像中两个特值点图像坐标,以及所述相机测光区域坐标系中所述两个特值点图像坐标分别对应的两个相机测光特值点坐标;

所述方程列写单元用于对坐标系各方向轴分别列写包含待定系数的处理函数,并将所述两个特值点图像坐标和所述两个相机测光特值点坐标分别对应带入所述包含待定系数的处理函数,分别获取所述各方向轴对应的两个特值方程;

所述换算公式获取单元用于分别求解所述各方向轴对应的两个特值方程组成的处理函数组,获取所述待定系数的取值,并将所述待定系数的取值带入所述包含待定系数的处理函数,获取所述图像坐标与相机测光坐标换算公式。

9.一种基于图像识别的测光处理设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;

根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标;

对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的光强数据进行图像优化;

其中,物体图像坐标系与相机测光区域坐标系的关系的获取处理流程包括:获取所述相机预览图像中两个特值点图像坐标,以及所述相机测光区域坐标系中所述两个特值点图像坐标分别对应的两个相机测光特值点坐标;

对坐标系各方向轴分别列写包含待定系数的处理函数,并将所述两个特值点图像坐标和所述两个相机测光特值点坐标分别对应带入所述包含待定系数的处理函数,分别获取所述各方向轴对应的两个特值方程;

分别求解所述各方向轴对应的两个特值方程组成的处理函数组,获取所述待定系数的取值,并将所述待定系数的取值带入所述包含待定系数的处理函数,获取所述图像坐标与相机测光坐标换算公式。

说明书 :

一种基于图像识别的测光处理方法、系统与设备

技术领域

[0001] 本发明涉及图像处理技术领域,更具体地,涉及一种基于图像识别的测光处理方法、系统与设备。

背景技术

[0002] Android相机中影响图像质量的因素主要包括噪点、色温和曝光等。目前大部分拍照应用采用的是自动曝光和自动白平衡调节方法。大部分场景下,Android默认的自动曝光和自动白平衡调节可以获得让人满意的图像。但是,当用户背景过亮、过暗或者色温较为特殊时,自动曝光和自动白平衡无法自适应对应场景,造成曝光过度或者偏色问题。
[0003] 一般基于人脸识别的测光方法,通过对相机预览图像进行人脸识别,获取人脸图像,并以人脸图像所在区域为主体进行测光,最后根据测光数据进行曝光拍摄。这种方法可以解决上述特殊情况下相机自动曝光和自动白平衡造成的曝光过度或偏色问题。
[0004] 但是,实际应用中,有些情况下相机预览图像与相机测光区域不能准确对应,造成人脸测光偏差,从而影响对上述曝光过度或偏色问题的解决效果。因此,有必要寻求一种方法,以有效解决上述问题。

发明内容

[0005] 本发明的目的在于,提供一种基于图像识别的测光处理方法、系统与设备,以解决部分基于人脸识别的测光方法无法准确定位人脸测光区域而造成对人脸的测光偏差,并最终影响图像优化效果的问题。
[0006] 为了克服上述问题或者至少部分地解决上述问题,本发明提供一种基于图像识别的测光处理方法、系统与设备。
[0007] 第一方面,本发明提供一种基于图像识别的测光处理方法,包括:从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标;对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的光强数据进行图像优化。
[0008] 其中,所述进行图像优化包括:进行图像区域调整和/或图像曝光及色温调整。
[0009] 其中,所述目标物体包括:人脸;相应的,所述目标物体图像包括人脸图像。
[0010] 其中,所述人脸图像坐标系与相机测光区域坐标系的关系的获取处理流程包括:获取所述相机预览图像中两个特值点图像坐标,以及所述相机测光区域坐标系中所述两个特值点图像坐标分别对应的两个相机测光特值点坐标;对坐标系各方向轴分别列写包含待定系数的处理函数,并将所述两个特值点图像坐标和所述两个相机测光特值点坐标分别对应带入所述包含待定系数的处理函数,分别获取所述各方向轴对应的两个特值方程;分别求解所述各方向轴对应的两个特值方程组成的处理函数组,获取所述待定系数的取值,并将所述待定系数的取值带入所述包含待定系数的处理函数,获取所述图像坐标与相机测光坐标换算公式。
[0011] 其中,所述获取所述相机预览图像中两个特值点图像坐标包括:根据相机设置参数,获取所述相机预览图像长宽尺寸;获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向,并选择所述坐标系中两个不同点作为两个特值点;根据所述相机预览图像长宽尺寸、所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向,确定所述两个特值点的特值点图像坐标。
[0012] 其中,所述获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向包括:通过相机传感器获取相机旋转角度,根据所述相机旋转角度获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向。
[0013] 其中,所述根据物体图像坐标系与相机测光区域坐标系的关系,将所述人脸图像关键点坐标换算为相机测光关键点坐标包括:分别将所述人脸图像关键点坐标带入所述图像坐标与相机测光坐标换算公式,获取对应的所述相机测光关键点坐标。
[0014] 其中,所述通过所述人脸图像确定人脸图像关键点坐标包括:根据所述人脸图像获取人脸坐标,通过比较各所述人脸坐标值,判断获取所述人脸图像关键点坐标。
[0015] 第二方面,本发明提供一种基于图像识别的测光处理系统,包括:图像识别模块、坐标换算模块和测光处理模块。其中,图像识别模块用于从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;坐标换算模块用于根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标;测光处理模块用于对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的亮度信息进行图像优化。
[0016] 第三方面,本发明提供一种基于图像识别的测光处理设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序。所述处理器执行所述程序时实现以下步骤:从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标;对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的光强数据进行图像优化。
[0017] 本发明提供的一种基于图像识别的测光处理方法、系统与设备,通过对相机预览图像的目标物体识别和坐标转换,能够准确获取目标物体对应的相机测光区域,从而实现更加精确的目标物体光强和色温测量,并在重点为目标物体的图像中,自适应环境变化,获取更好的曝光和色温优化效果。

附图说明

[0018] 图1为本发明实施例一种基于图像识别的测光处理方法流程图;
[0019] 图2为本发明实施例一种人脸识别的测光处理方法流程图;
[0020] 图3为本发明实施例一种人脸坐标标记示意图;
[0021] 图4为本发明实施例一种物体图像坐标系与相机测光区域坐标系关系的获取处理流程图;
[0022] 图5为本发明实施例一种获取相机预览图像中两个特值点图像坐标的处理流程图;
[0023] 图6为本发明实施例一种基于图像识别的测光处理系统结构示意图;
[0024] 图7为本发明实施例一种坐标换算模块结构示意图。

具体实施方式

[0025] 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0026] 作为本发明实施例的第一个方面,本实施例提供一种基于图像识别的测光处理方法,参考图1,为本发明实施例一种基于图像识别的测光处理方法流程图,包括:
[0027] S1,从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标。
[0028] 具体而言,在打开相机将摄像头对准目标物体进行拍照或摄像时,相机预览过程中,摄像头通过接口onPreviewFrame获取YUV数据,并对包含目标物体的场景进行图像采集,获取相机预览图像。之后测光系统的图像识别线程从摄像头获取相机预览图像,并对所述相机预览图像进行目标物体的识别处理,从中获取目标物体图像。
[0029] 最后图像识别线程根据获取的目标物体图像、相机预览图像的坐标信息以及相机预览图像长宽信息确定目标物体坐标,并对目标物体图像中各点坐标进行比较分析,获取目标物体图像的关键点坐标,所述关键点坐标可以为目标物体图像的四个边界点坐标。
[0030] 其中可选的,所述目标物体包括:人脸;相应的,所述目标物体图像包括人脸图像。
[0031] 具体而言,参考图2,为本发明实施例一种人脸识别的测光处理方法流程图,首先在上述摄像头对包含人脸的场景进行图像采集,获取相机预览图像之后,测光系统的人脸识别线程从摄像头获取相机预览图像。
[0032] 然后测光系统使用独立线程,对所述相机预览图像进行人脸的识别处理,从中获取人脸图像,并通过人脸图像获取人脸坐标。最后通过获取到的人脸坐标区域,调整测光区域,设置测光权重,修正图像曝光和色温效果。
[0033] 其中可选的,所述通过所述人脸图像确定人脸图像关键点坐标包括:根据所述人脸图像获取人脸坐标,通过比较各所述人脸坐标,判断获取所述人脸图像关键点坐标。
[0034] 具体而言,在上述获取人脸图像之后,人脸识别线程还根据获取的人脸图像、相机预览图像的坐标信息和相机预览图像长宽信息确定人脸图像的人脸坐标,并对人脸图像中各点的坐标值进行比较,判断获取人脸图像的关键点坐标,所述关键点坐标可以为人脸图像的四个边界点坐标。
[0035] 参考图3,为本发明实施例一种人脸坐标标记示意图,图中0至67共68个标记点对人脸图像的位置、区域及人脸特征等进行标记。在相机预览图像的坐标系确定之后,即可根据相机预览图像的长宽尺寸确定其中的人脸坐标,即确定0至67共68个标记点的坐标。
[0036] 由图3可以看出,标记点0、16、19和8为人脸图像范围的四个关键点,即,0为人脸图像左边界点,16为人脸图像右边界点,19为人脸图像上边界点,8为人脸图像下边界点。根据四个边界点坐标确定人脸坐标范围。
[0037] S2,根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标。
[0038] 具体而言,相机预览图像与相机测光区域的坐标系不同,通过对相机预览图像目标物体识别返回的目标物体坐标值,以及相机预览图像坐标原点位置、坐标轴方向及刻度,均不同于相机测光区域坐标,无法在测光处理中直接使用。因此需要通过特定的处理函数将相机预览图像中目标物体坐标转换到相机测光区域坐标系中对应位置坐标,即获取相机测光坐标。
[0039] 由相机预览图像坐标系到相机测光区域坐标系存在一定的映射关系,该映射关系体现在数学运算中可表示为图像坐标与相机测光坐标换算公式,该换算公式是以相机预览图像坐标和对应的相机测光区域坐标为变量的约束关系表达式。通过特值带入等方法可以获取相应的图像坐标与相机测光坐标换算公式。
[0040] 在获取图像坐标与相机测光坐标换算公式之后,对于上述获取的目标物体图像关键点坐标,通过对图像坐标与相机测光坐标换算公式的计算求解,可以获取这些关键点坐标对应的相机测光点坐标。
[0041] 由于由相机预览图像坐标系到相机测光区域坐标系的转换仅涉及缩放、平移和旋转,则由相机预览图像坐标系到相机测光区域坐标系的映射关系为线性关系。
[0042] 因此,相机预览图像中的关键点坐标换算到相机测光区域坐标系之后,仍为目标物体测光区域中对应的关键点。如相机预览图像中目标物体的四个边界点坐标,转换到相机测光区域之后,仍为相机测光区域对应的目标物体测光区域的边界点坐标。
[0043] 例如,相机预览图像的坐标原点位于相机竖屏时的左下角不变,相机预览图像的坐标取值范围为从0到1。而相机测光区域基于相机坐标系,相机测光区域坐标原点位于相机测光区域中心点,测光区域坐标取值范围为从-1000到1000。
[0044] 上述通过对相机预览图像人脸识别返回的四个边界点0、16、19和8的坐标x轴和y轴的取值都在0和1之间。通过图像坐标与相机测光坐标换算公式的换算,对应到相机测光区域坐标系中四个边界点坐标的x′轴和y′取值变为-1000到1000之间。如相机预览图像中心点坐标(0.5,0.5)换算到相机测光区域坐标系中为(0,0)。
[0045] 其中可选的,所述根据物体图像坐标系与相机测光区域坐标系的关系,将所述人脸图像关键点坐标换算为相机测光关键点坐标包括:分别将所述人脸图像关键点坐标带入所述图像坐标与相机测光坐标换算公式,获取对应的所述相机测光关键点坐标。
[0046] 具体而言,对于上述图像坐标与相机测光坐标换算公式,为以相机预览图像坐标和对应的相机测光区域坐标为变量的约束关系表达式,在获取人脸图像关键点坐标之后,相当于这些人脸图像关键点坐标值为已知量。
[0047] 将上述人脸图像关键点坐标值已知量带入图像坐标与相机测光坐标换算公式,获得的关系式中未知量仅包含相机测光区域坐标,通过对这些关系式进行求解即可获取相应的相机测光区域坐标值。
[0048] S3,对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的光强数据进行图像优化。
[0049] 其中可选的,所述进行图像优化包括:进行图像区域调整和/或图像曝光及色温调整。
[0050] 具体而言,在上述步骤变换获取相机测光关键点坐标之后,以这些相机测光关键点坐标对应的点为边界点,确定这些边界点包围的一个区域。对确定的这个区域设定权重,进行测光处理。
[0051] 测光处理结束会返回一个光强数据,根据该光强数据,可以对拍摄图像区域进行调整,以获取更柔和的对比色,减小环境对曝光和色温的影响。同时可以根据该光强数据设定拍摄曝光参数及色温参数,实现对相机拍摄曝光处理的优化。通过本实施例针对性的图像优化,对于目标物体所在区域,可以获取效果更好、质量更高的拍摄图像。
[0052] 本发明实施例提供的一种基于图像识别的测光处理方法,通过对相机预览图像的人脸识别和坐标转换,能够准确获取人脸对应的相机测光区域,从而实现更加精确的人脸光强和色温测量,并在重点为人物的图像中,自适应环境变化,获取更好的曝光和色温优化效果。
[0053] 其中可选的,所述物体图像坐标系与相机测光区域坐标系的关系的获取处理流程参考图4,为本发明实施例一种物体图像坐标系与相机测光区域坐标系关系的获取处理流程图,包括:
[0054] S21,获取所述相机预览图像中两个特值点图像坐标,以及所述相机测光区域坐标系中所述两个特值点图像坐标分别对应的两个相机测光特值点坐标。
[0055] 具体而言,根据上述实施例,要对相机预览图像中目标物体坐标进行坐标转换,首先需要获取图像坐标与相机测光坐标换算公式。由于由相机预览图像坐标系到相机测光区域坐标系的转换仅涉及缩放、平移和旋转,因此由相机预览图像坐标系到相机测光区域坐标系的变换关系为线性关系,可以将上述处理函数设置为二元一次方程来表述这种线性变换关系。
[0056] 对于形成的平面图像,可以在图像中建立直角坐标系。因此对应建立相机预览图像直角XOY坐标系和相机测光区域直角X′O′Y′坐标系。相机预览图像中X坐标变换之后对应到XOY坐标系的X′坐标,相机预览图像中Y坐标变换之后对应到X′O′Y′的Y′坐标。
[0057] 在确定相机预览图像的XOY坐标系之后,图像中各点相对该坐标系的坐标值也随之确定。同样,对于相机测光区域X′O′Y′坐标系,其中各点对应的测光坐标也可以确定。
[0058] 选择相机预览图像中两个不同的点,根据建立的相机预览图像XOY坐标系,分别获取二者的图像坐标值;同时根据建立的相机测光区域X′O′Y′坐标系,分别确定相机预览图像中这两个点对应到相机测光区域坐标系中的位置及坐标。
[0059] 其中可选的,所述获取所述相机预览图像中两个特值点图像坐标的处理流程参考图5,为本发明实施例一种获取相机预览图像中两个特值点图像坐标的处理流程图,包括:
[0060] S2101,根据相机设置参数,获取所述相机预览图像长宽尺寸。
[0061] 具体而言,在使用相机进行拍摄之前,可以对相机进行设置,包括生成图片的尺寸和尺寸比例等参数的设置。测光系统功能模块根据相机设置,获取图像长宽尺寸和图像的取向(Orientation)信息,以及摄像头信息传递给图像识别线程进行目标物体识别处理。
[0062] S2102,获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向,并选择所述坐标系中两个不同点作为两个特值点。
[0063] 具体而言,一个点的坐标是相对坐标系来说的,对于获取的相机预览图像,通过获取相机预览图像长宽尺寸,按比例确定坐标系,坐标系中每一个点的坐标才能确定。
[0064] 对于已经建立的相机预览图像坐标系,其坐标原点和坐标轴方向便确定了。因此可以根据设定获取该坐标系的坐标原点和坐标轴方向。在获取相机预览图像坐标系坐标原点和坐标轴方向之后,选择其中两个不同点作为特值点。
[0065] 例如,在相机竖屏时,通常将生成的相机预览图像的左下角作为坐标原点,以向右的方向为X轴正方向,以向上的方向为Y轴正方向。为了计算方便,可以选择坐标原点(0,0)和相机预览图像中心点(0.5,0.5)作为特值点。
[0066] 其中可选的,所述获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向包括:通过相机传感器获取相机旋转角度,根据所述相机旋转角度获取所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向。
[0067] 具体而言,相机预览图像坐标系和相机测光区域坐标系,在手机屏幕旋转时,变化是不同的。相机预览图像坐标系会跟随屏幕旋转而旋转,但是相机测光区域坐标系不会随相机旋转而变化。
[0068] 通常将相机竖屏时形成的相机预览图像的左下角作为坐标原点,以向右的方向作为X轴正方向,以向上的方向为Y轴正方向。将相机竖屏时定义为90度旋转,由90度旋转方向逆时针旋转90度为0度旋转,由90度旋转方向顺时针旋转90度为180度旋转,由90度旋转方向顺时针旋转180度为270度旋转。
[0069] 当相机旋转角度发生变化时,相机传感器可以检测相机的旋转角度。通过获取相机传感器检测到相机的旋转角度,获取坐标原点位置和坐标轴方向。
[0070] 当获取相机为0度旋转时,相机预览图像坐标原点为相机右下角,向上的方向为X轴正方向,向左的方向为Y轴正方向;当获取相机为90度旋转时,相机预览图像坐标原点为相机左下角,向右的方向为X轴正方向,向上的方向为Y轴正方向;当获取相机为180度旋转时,相机预览图像坐标原点为相机左上角,向下的方向为X轴正方向,向右的方向为Y轴正方向;当获取相机为270度旋转时,相机预览图像坐标原点为相机右上角,向左的方向为X轴正方向,向下的方向为Y轴正方向。
[0071] S2103,根据所述相机预览图像长宽尺寸、所述相机预览图像坐标系原点和所述相机预览图像坐标轴方向,确定所述两个特值点的特值点图像坐标。
[0072] 具体而言,在上述步骤确定相机预览图像坐标系的坐标原点位置和坐标轴方向之后,根据相机预览图像长宽尺寸及两个特值点在相机预览图像中的位置确定特值点坐标与相机预览图像边界点坐标的比例关系,从而分别确定特值点两个坐标轴方向的坐标值。
[0073] 例如,在相机竖屏时,即相机90度旋转时,相机预览图像中心点坐标为(0.5,0.5),对应到相机测光区域坐标中的测光坐标为(0,0);相机预览图像坐标原点(0,0),对应到相机测光区域坐标中的测光坐标为(-1000,1000)。
[0074] 在相机0度旋转时,相机预览图像中心点坐标为(0.5,0.5),对应到相机测光区域坐标中的测光坐标为(0,0);相机预览图像坐标原点(0,0),对应到相机测光区域坐标中的测光坐标为(1000,1000)。
[0075] 在相机180度旋转时,相机预览图像中心点坐标为(0.5,0.5),对应到相机测光区域坐标中的测光坐标为(0,0);相机预览图像坐标原点(0,0),对应到相机测光区域坐标中的测光坐标为(-1000,-1000)。
[0076] 在相机270度旋转时,相机预览图像中心点坐标为(0.5,0.5),对应到相机测光区域坐标中的测光坐标为(0,0);相机预览图像坐标原点(0,0),对应到相机测光区域坐标中的测光坐标为(1000,-1000)。
[0077] S22,对坐标系各方向轴分别列写包含待定系数的处理函数,并将所述两个特值点图像坐标和所述两个相机测光特值点坐标分别对应带入所述包含待定系数的处理函数,分别获取所述各方向轴对应的两个特值方程。
[0078] 具体而言,根据上述实施例,处理函数可以设置为二元一次方程。因此首先在上述步骤分别建立的相机预览图像XOY坐标系和相机测光区域直角X′O′Y′坐标系中,对应X坐标至X′坐标的变换,列写包含待定系数的X轴二元一次方程,对应Y坐标至Y′坐标的变换,列写包含待定系数的Y轴二元一次方程。
[0079] 然后,将上述步骤获取的两个特值点坐标值分别带入两个坐标轴方向的二元一次方程。即,将XOY坐标系第一特值点X坐标值和该特值点对应到X′O′Y′坐标系的X′坐标值带入包含待定系数的X轴二元一次方程,获取第一X轴特值方程;将XOY坐标系第二特值点X坐标值和该特值点对应到X′O′Y′坐标系的X′坐标值带入包含待定系数的X轴二元一次方程,获取第二X轴特值方程;将XOY坐标系第一特值点Y坐标值和该特值点对应到X′O′Y′坐标系的Y′坐标值带入包含待定系数的Y轴二元一次方程,获取第一Y轴特值方程;将XOY坐标系第二特值点Y坐标值和该特值点对应到X′O′Y′坐标系的Y′坐标值带入包含待定系数的Y轴二元一次方程,获取第二Y轴特值方程。
[0080] 例如,对于X轴方向,列写包含待定系数的X轴二元一次方程为:x′=ax+b;对于Y轴方向,列写包含待定系数的Y轴二元一次方程为:y′=cy+d。其中,x和y分别为XOY坐标系中X轴方向和Y轴方向坐标,x′和y′分别为X′O′Y′坐标系中X′轴方向和Y′轴方向坐标,a、b、c和d均为待定系数。
[0081] 对于上述步骤获取的相机竖屏,即90度旋转相机预览图像坐标系,两个特值点坐标(0.5,0.5)和(0,0),以及该两个特值点分别对应到相机测光区域坐标系的坐标(0,0)和(-1000,1000),X轴方向坐标值和Y轴方向坐标值分别带入对应坐标轴方向的二元一次方程,获取特值方程如下:
[0082] 第一X轴特值方程:0=0.5·a+b;
[0083] 第二X轴特值方程:-1000=0·a+b;
[0084] 第一Y轴特值方程:0=0.5·c+d;
[0085] 第二Y轴特值方程:1000=0·c+d。
[0086] 其中a、b、c和d均为待定系数。
[0087] 对于上述步骤获取的0度旋转相机预览图像坐标系,两个特值点坐标(0.5,0.5)和(0,0),以及该两个特值点分别对应到相机测光区域坐标系的坐标(0,0)和(1000,1000),X轴方向坐标值和Y轴方向坐标值分别带入对应坐标轴方向的二元一次方程,获取特值方程如下:
[0088] 第一X轴特值方程:0=0.5·a+b;
[0089] 第二X轴特值方程:1000=0·a+b;
[0090] 第一Y轴特值方程:0=0.5·c+d;
[0091] 第二Y轴特值方程:1000=0·c+d。
[0092] 其中a、b、c和d均为待定系数。
[0093] 对于上述步骤获取的180度旋转相机预览图像坐标系,两个特值点坐标(0.5,0.5)和(0,0),以及该两个特值点分别对应到相机测光区域坐标系的坐标(0,0)和(-1000,-1000),X轴方向坐标值和Y轴方向坐标值分别带入对应坐标轴方向的二元一次方程,获取特值方程如下:
[0094] 第一X轴特值方程:0=0.5·a+b;
[0095] 第二X轴特值方程:-1000=0·a+b;
[0096] 第一Y轴特值方程:0=0.5·c+d;
[0097] 第二Y轴特值方程:-1000=0·c+d。
[0098] 其中a、b、c和d均为待定系数。
[0099] 对于上述步骤获取的270度旋转相机预览图像坐标系,两个特值点坐标(0.5,0.5)和(0,0),以及该两个特值点分别对应到相机测光区域坐标系的坐标(0,0)和(1000,-1000),X轴方向坐标值和Y轴方向坐标值分别带入对应坐标轴方向的二元一次方程,获取特值方程如下:
[0100] 第一X轴特值方程:0=0.5·a+b;
[0101] 第二X轴特值方程:1000=0·a+b;
[0102] 第一Y轴特值方程:0=0.5·c+d;
[0103] 第二Y轴特值方程:-1000=0·c+d。
[0104] 其中a、b、c和d均为待定系数。
[0105] S23,分别求解所述各方向轴对应的两个特值方程组成的处理函数组,获取所述待定系数的取值,并将所述待定系数的取值带入所述包含待定系数的处理函数,获取所述图像坐标与相机测光坐标换算公式。
[0106] 具体而言,对于上述步骤获取的第一X轴特值方程和第二X轴特值方程,将二者进行组合,形成对应X轴的二元一次方程组;对于第一Y轴特值方程和第二Y轴特值方程,将二者进行组合,形成对应Y轴的二元一次方程组。
[0107] 分别对X轴的二元一次方程组和Y轴的二元一次方程组进行计算求解,并分别获取对应X轴换算公式的待定系数取值和对应Y轴换算公式的待定系数取值。
[0108] 最后,将对应X轴换算公式的待定系数取值带入包含待定系数的X轴二元一次方程,获取图像坐标与相机测光坐标的X轴换算公式;将对应Y轴换算公式的待定系数取值带入包含待定系数的Y轴二元一次方程,获取图像坐标与相机测光坐标的Y轴换算公式。
[0109] 例如,首先,对于上述步骤获取的90度旋转各特值方程,对X轴两个特值方程进行组合,获取对应X轴的二元一次方程组如下:
[0110]
[0111] 其中,a和b为待定系数。
[0112] 同时,对Y轴两个特值方程进行组合,获取对应Y轴的二元一次方程组如下:
[0113]
[0114] 其中,c和d为待定系数。
[0115] 对于上述步骤获取的0度旋转各特值方程,对X轴两个特值方程进行组合,获取对应X轴的二元一次方程组如下:
[0116]
[0117] 其中,a和b为待定系数。
[0118] 同时,对Y轴两个特值方程进行组合,获取对应Y轴的二元一次方程组如下:
[0119]
[0120] 其中,c和d为待定系数。
[0121] 对于上述步骤获取的180度旋转各特值方程,对X轴两个特值方程进行组合,获取对应X轴的二元一次方程组如下:
[0122]
[0123] 其中,a和b为待定系数。
[0124] 同时,对Y轴两个特值方程进行组合,获取对应Y轴的二元一次方程组如下:
[0125]
[0126] 其中,c和d为待定系数。
[0127] 对于上述步骤获取的270度旋转各特值方程,对X轴两个特值方程进行组合,获取对应X轴的二元一次方程组如下:
[0128]
[0129] 其中,a和b为待定系数。
[0130] 同时,对Y轴两个特值方程进行组合,获取对应Y轴的二元一次方程组如下:
[0131]
[0132] 其中,c和d为待定系数。
[0133] 其次,分别对获取的对应X轴的二元一次方程组和对应Y轴的二元一次方程组进行计算求解,可获取待定系数取值。经计算可得90度旋转时各待定系数取值为:a=2000,b=-1000;c=-2000,d=1000;0度旋转时各待定系数取值为:a=-2000,b=1000;c=-2000,d=
1000;180度旋转时各待定系数取值为:a=2000,b=-1000;c=2000,d=-1000;270度旋转时各待定系数取值为:a=-2000,b=1000;c=2000,d=-1000。
[0134] 最后,将待定系数a和b的取值带入包含待定系数的X轴二元一次方程x′=ax+b,获取图像坐标与相机测光坐标的X轴换算公式。90度旋转和180度旋转时图像坐标与相机测光坐标X轴换算公式为:
[0135] x′=2000x-1000;
[0136] 式中,x为相机预览图像XOY坐标系X轴坐标,x′为相机测光区域X′O′Y′坐标系X′轴方向坐标。
[0137] 0度旋转和270度旋转时图像坐标与相机测光坐标X轴换算公式为:
[0138] x′=-2000x+1000;
[0139] 式中,x为相机预览图像XOY坐标系X轴坐标,x′为相机测光区域X′O′Y′坐标系X′轴方向坐标。
[0140] 同时,将待定系数c和d的取值带入包含待定系数的Y轴二元一次方程y′=cy+d,获取图像坐标与相机测光坐标的Y轴换算公式。90度旋转和0度旋转时图像坐标与相机测光坐标的Y轴换算公式为:
[0141] y′=-2000y+1000;
[0142] 式中,y为相机预览图像XOY坐标系Y轴坐标,y′为相机测光区域X′O′Y′坐标系Y′轴方向坐标。
[0143] 180度旋转和270度旋转时图像坐标与相机测光坐标的Y轴换算公式为:
[0144] y′=2000y-1000;
[0145] 式中,y为相机预览图像XOY坐标系Y轴坐标,y′为相机测光区域X′O′Y′坐标系Y′轴方向坐标。
[0146] 本发明实施例提供的一种基于图像识别的测光处理方法,通过特值点坐标带入,获取各坐标轴方向上的图像坐标与相机测光坐标换算公式,能够实现相机预览图像坐标到相机测光区域坐标的准确转换,从而进一步实现对相机预览图像中目标物体区域的针对性测光。
[0147] 计算人脸边界坐标
[0148] 根据上述实施例,在通过对相机预览图像进行人脸识别,获取人脸图像并确定人脸坐标之后,需要确定人脸图像关键点,即人脸图像边界点坐标以确定人脸坐标区域。根据人脸图像边界点坐标设置测光区域为矩形区域,因此人脸图像左边界选取为0点坐标x值,右边界选取16点坐标x值,上边界选取为19点y值,下边界选取为8点y值,因此可得如下换算代码。
[0149] 相机90度旋转时,坐标换算代码为:
[0150] lface_left=(int)(2000*data[0].x-1000);
[0151] lface_top=(int)(-2000*data[19].y+1000);
[0152] lface_right=(int)(2000*data[16].x-1000);
[0153] lface_bottom=(int)(-2000*data[8].y+1000)。
[0154] 同理,相机0度旋转时,坐标换算代码为:
[0155] lface_left=(int)(-2000*data[0].y+1000);
[0156] lface_top=(int)(-2000*data[19].x+1000);
[0157] lface_right=(int)(-2000*data[16].y+1000);
[0158] lface_bottom=(int)(-2000*data[8].x+1000)。
[0159] 相机180度旋转时,坐标换算代码为:
[0160] lface_left=(int)(2000*data[0].y-1000);
[0161] lface_top=(int)(2000*data[19].x-1000);
[0162] lface_right=(int)(2000*data[16].y-1000);
[0163] lface_bottom=(int)(2000*data[8].x-1000)。
[0164] 相机270度旋转时,坐标换算代码为:
[0165] lface_left=(int)(-2000*data[0].x+1000);
[0166] lface_top=(int)(2000*data[19].y-1000);
[0167] lface_right=(int)(-2000*data[16].x+1000);
[0168] lface_bottom=(int)(2000*data[8].y)-1000)。
[0169] 在根据上述坐标换算获取相机测光区域人脸坐标后,将相机测光区域人脸坐标传递给相机的硬件接口,相机硬件接口将人脸所在区域设置为测光区域,并根据测光结果进行曝光。
[0170] 作为本发明实施例的第二个方面,本实施例提供一种基于图像识别的测光处理系统,参考图6,为本发明实施例一种基于图像识别的测光处理系统结构示意图,包括:图像识别模块1、坐标换算模块2和测光处理模块3。
[0171] 其中,图像识别模块1用于从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;坐标换算模块2用于根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标;测光处理模块3用于对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的亮度信息进行图像优化。
[0172] 具体而言,在打开相机将摄像头对准目标物体进行拍照或摄像时,相机预览过程中,摄像头通过接口onPreviewFrame获取YUV数据,并对包含目标物体的场景进行图像采集,获取相机预览图像。之后测光系统的图像识别线程从摄像头获取相机预览图像,并由图像识别模块1对所述相机预览图像进行目标物体的识别处理,从中获取目标物体图像。
[0173] 然后图像识别模块1根据获取的目标物体图像、相机预览图像的坐标信息以及相机预览图像长宽信息确定目标物体坐标,并对目标物体图像中各点坐标进行比较分析,获取目标物体图像的关键点坐标,所述关键点坐标可以为目标物体图像的四个边界点坐标。
[0174] 其中可选的,图像识别模块1具体用于:对获取的相机预览图像进行人脸识别,获取人脸图像,并通过所述人脸图像确定人脸图像关键点坐标。
[0175] 具体而言,首先在上述摄像头对包含人脸的场景进行图像采集,获取相机预览图像之后,测光系统的人脸识别线程从摄像头获取相机预览图像。
[0176] 然后图像识别模块1使用独立线程,对所述相机预览图像进行人脸的识别处理,从中获取人脸图像,并通过人脸图像获取人脸坐标。最后通过获取到的人脸坐标区域,调整测光区域,设置测光权重,修正图像曝光和色温效果。
[0177] 其中人脸识别的具体举例与上述方法类实施例相同,可以参考上述方法类实施例,此处不再赘述。
[0178] 同时,由于相机预览图像与相机测光区域的坐标系不同,通过对相机预览图像目标物体识别返回的目标物体坐标值,以及相机预览图像坐标原点位置、坐标轴方向及刻度,均不同于相机测光区域坐标,无法在测光处理中直接使用。因此需要将相机预览图像中目标物体坐标转换到相机测光区域坐标系中对应位置坐标,即获取相机测光坐标。
[0179] 在测光处理系统获取图像坐标与相机测光坐标换算公式之后,对于上述图像识别模块1获取的目标物体图像关键点坐标,通过坐标换算模块2对图像坐标与相机测光坐标换算公式的计算求解,可以获取这些关键点坐标对应的相机测光点坐标。
[0180] 对于上述图像坐标与相机测光坐标换算公式,为以相机预览图像坐标和对应的相机测光区域坐标为变量的约束关系表达式,在获取人脸图像关键点坐标之后,相当于这些人脸图像关键点坐标值为已知量。
[0181] 坐标换算模块2将上述人脸图像关键点坐标值已知量带入图像坐标与相机测光坐标换算公式,获得的关系式中未知量仅包含相机测光区域坐标,通过对这些关系式进行求解即可获取相应的相机测光区域坐标值。
[0182] 此外,在上述坐标换算模块2获取相机测光关键点坐标之后,测光处理模块3以这些相机测光关键点坐标对应的点为边界点,确定这些边界点包围的一个区域。对确定的这个区域设定权重,进行测光处理。
[0183] 测光处理结束会返回一个光强数据,测光处理模块3根据该光强数据设定拍摄曝光参数及色温参数,同时可以设置调整图像区域,实现对相机拍摄图像的优化。通过本实施例的曝光优化,对于目标物体所在区域,可以获取效果更好、质量更高的拍摄图像。
[0184] 本发明实施例提供的一种基于图像识别的测光处理系统,产生的有益效果与上述方法类实施例相同,可以参考上述方法类实施例,此处不再赘述。
[0185] 其中可选的,坐标换算模块2的进一步结构参考图7,为本发明实施例一种坐标换算模块结构示意图,包括:坐标获取单元201、方程列写单元202和换算公式获取单元203,其中:
[0186] 坐标获取单元201用于获取所述相机预览图像中两个特值点图像坐标,以及所述相机测光区域坐标系中所述两个特值点图像坐标分别对应的两个相机测光特值点坐标。
[0187] 方程列写单元202用于对坐标系各方向轴分别列写包含待定系数的二元一次方程,并将所述两个特值点图像坐标和所述两个相机测光特值点坐标分别对应带入所述包含待定系数的二元一次方程,分别获取所述各方向轴对应的两个特值方程。
[0188] 换算公式获取单元203用于分别求解所述各方向轴对应的两个特值方程组成的二元一次方程组,获取所述待定系数的取值,并将所述待定系数的取值带入所述包含待定系数的二元一次方程,获取所述图像坐标与相机测光坐标换算公式。
[0189] 具体而言,对于形成的平面图像,可以在图像中建立直角坐标系。因此由坐标获取单元201对应建立相机预览图像直角XOY坐标系和相机测光区域直角X′O′Y′坐标系。由相机预览图像中X坐标变换之后对应到XOY坐标系的X′坐标,相机预览图像中Y坐标变换之后对应到X′O′Y′的Y′坐标。
[0190] 在选择相机预览图像中两个不同的点之后,坐标获取单元201根据建立的相机预览图像XOY坐标系,分别获取二者的图像坐标值;同时根据建立的相机测光区域X′O′Y′坐标系,分别确定相机预览图像中这两个点对应到相机测光区域坐标系中的位置及坐标。
[0191] 方程列写单元202在上述坐标获取单元201分别建立的相机预览图像XOY坐标系和相机测光区域直角X′O′Y′坐标系中,对应X坐标至X′坐标的变换,列写包含待定系数的X轴二元一次方程,对应Y坐标至Y′坐标的变换,列写包含待定系数的Y轴二元一次方程。
[0192] 然后,方程列写单元202将上述步骤获取的两个特值点坐标值分别带入两个坐标轴方向的二元一次方程。即,将XOY坐标系第一特值点X坐标值和该特值点对应到X′O′Y′坐标系的X′坐标值带入包含待定系数的X轴二元一次方程,获取第一X轴特值方程;将XOY坐标系第二特值点X坐标值和该特值点对应到X′O′Y′坐标系的X′坐标值带入包含待定系数的X轴二元一次方程,获取第二X轴特值方程;将XOY坐标系第一特值点Y坐标值和该特值点对应到X′O′Y′坐标系的Y′坐标值带入包含待定系数的Y轴二元一次方程,获取第一Y轴特值方程;将XOY坐标系第二特值点Y坐标值和该特值点对应到X′O′Y′坐标系的Y′坐标值带入包含待定系数的Y轴二元一次方程,获取第二Y轴特值方程。
[0193] 其中列写的特值方程的具体举例与上述方法类实施例相同,可以参考上述方法类实施例,此处不再赘述。
[0194] 对于上述步骤获取的第一X轴特值方程和第二X轴特值方程,换算公式获取单元203将二者进行组合,形成对应X轴的二元一次方程组;对于第一Y轴特值方程和第二Y轴特值方程,将二者进行组合,形成对应Y轴的二元一次方程组。
[0195] 然后换算公式获取单元203分别对X轴的二元一次方程组和Y轴的二元一次方程组进行计算求解,并分别获取对应X轴换算公式的待定系数取值和对应Y轴换算公式的待定系数取值。
[0196] 最后,换算公式获取单元203将对应X轴换算公式的待定系数取值带入包含待定系数的X轴二元一次方程,获取图像坐标与相机测光坐标的X轴换算公式;将对应Y轴换算公式的待定系数取值带入包含待定系数的Y轴二元一次方程,获取图像坐标与相机测光坐标的Y轴换算公式。
[0197] 其中获取的图像坐标与相机测光坐标换算公式的具体举例与上述方法类实施例相同,可以参考上述方法类实施例,此处不再赘述。
[0198] 本发明实施例提供的一种基于图像识别的测光处理系统,产生的有益效果与上述方法类实施例相同,可以参考上述方法类实施例,此处不再赘述。
[0199] 作为本发明实施例的第三个方面,本实施例提供一种基于图像识别的测光处理设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序。所述处理器执行所述程序时实现以下步骤:
[0200] 从相机预览图像中获取目标物体图像,并通过所述目标物体图像确定目标物体图像关键点坐标;根据物体图像坐标系与相机测光区域坐标系的关系,将所述目标物体图像关键点坐标换算为相机测光关键点坐标;对所述相机测光关键点坐标包围的区域进行测光,并根据所述测光获取的光强数据进行图像优化。
[0201] 本发明另一个实施例中,提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如上述实施例所述的基于图像识别的测光处理方法。
[0202] 具体而言,可以理解为,实现上述方法实施例的全部或部分步骤可以通过程序指示相关的硬件来完成,上述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而上述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0203] 通过上述具体实施方式的描述,本领域的技术人员可以清楚地了解,上述各实施方式可借助软件加必需的通用硬件平台来实现,当然也可以通过硬件来实现。基于这种理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0204] 本发明实施例提供的一种基于图像识别的测光处理设备和一种非暂态计算机可读存储介质,通过对测光处理程序的存储和执行,实现目标物体的识别及对目标物体区域的测光,并根据测光结果进行图像优化,能够获取效果更好,质量更高的拍摄图像。
[0205] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。