一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于深度相机人脸自动曝光方法与流程

2022-06-16 06:39:41 来源:中国专利 TAG:


1.本发明涉及一种3d成像技术领域,尤其涉及一种基于深度相机人脸自动曝光方法。


背景技术:

2.3d深度相机相比传统2d相机增加了深度信息,天然具有活体检测优势,识别准确率高,更受到市场的青睐。因此3d深度相机已逐步替代传统的2d相机,应用到生活的各个方面,如人脸支付,智能门禁,高铁机场身份识别等。随着应用推广,对低成本3d深度相机方案的需求也越来越多,尤其在一台主控接多台相机场合。
3.现有3d深度相机自动曝光方案,是对灰度图进行人脸轮廓检测,检测到人脸轮廓之后,选择最优一个轮廓的灰度值给曝光控制单元进行曝光。此种方案利用成熟2d图像识别算法,成熟稳定,但是人脸轮廓识别算法和多轮廓选择算法对系统资源要求高,即硬件成本高。也未发挥3d深度相机深度信息与灰度信息交叉检测优势。
4.例如,一种在中国专利文献上公开的“基于人脸识别的图像曝光调整方法”,其公告号cn111242086a,相机实时拍摄并获取一帧raw图像;调节整个图像达到所需曝光值并传输至主控制器;由所述主控制器执行人脸识别算法;当相机检测到有人脸时,对图像人脸区域和非人脸区域进行亮度统计;获取统计区域亮度,根据人脸亮度调整曝光得到一帧图像framel;同时根据非人脸区域的亮度,调整曝光得到一帧图像frame2;合成两帧图像得到所需图像再次执行人脸识别算法。
5.该方案利用成熟2d图像识别算法,成熟稳定,但对系统资源要求较高,且检测耗时长,不适用高帧率检测场景。


技术实现要素:

6.本发明主要解决现有技术利用成熟2d图像识别算法,对系统资源要求较高且检测耗时长,未发挥3d深度相机深度信息与灰度信息交叉检测优势的问题;提供一种基于深度相机人脸自动曝光方法,根据3d深度相机灰度图,深度信息和图像扫描算法,来确定曝光目标,进行自动曝光方案,不需要庞大图像识别与数据运算,就可以获得理想的曝光结果。
7.本发明的上述技术问题主要是通过下述技术方案得以解决的:一种基于深度相机人脸自动曝光方法,包括以下步骤:s1:根据初始值参数进行曝光并获取图像帧;s2:对图像的灰度值进行直方图统计,根据直方图统计结果对灰度图曝光参数进行调整,再次曝光后获得理想亮度的灰度图和深度图;s3:根据深度图的深度信息和灰度图的灰度值,依次计算各像素点的反射率;s4:根据人体皮肤反射率的经验值,结合计算得到的各像素点的反射率,确定人脸轮廓的范围区域;s5:使用图像扫描算法,依次扫描人脸轮廓的范围区域,确定人脸轮廓坐标和灰度
值;按照最近优先原则,选取最近轮廓的灰度值进行曝光参数计算,并再次曝光;s6:输出基于人脸自动曝光后的图像帧。
8.本方案通过灰度直方图统计自动曝光获得理想亮度的灰度图,然后计算反射率,根据人体皮肤反射率范围,确定脸部轮廓的大致范围,再通过一种灰度结合深度的特征点扫描算法确认脸部位置,并根据脸部的灰度值计算曝光参数进行曝光,不需要庞大图像识别与数据运算,就可以获得理想的曝光结果,充分利用3d深度相机深度信息与灰度信息交叉检测优势。
9.作为优选,根据直方图统计结果对灰度图曝光参数进行调整的过程包括:s201:获取的灰度图按照直方图划定的灰度区间进行像素划分,并统计每个区间的像素个数;s202:过曝点数量统计,若大于设定过曝点阈值,则按照0.3倍比例降低曝光时间;重复过程s202,直至过曝点数量小于等于设定的过曝点阈值;s203:灰度值从低到高依次判断80%像素灰度值分布的最大区间;s204:计算最大灰度区间到目标灰度区间的曝光时间比例系数,并根据曝光时间比例系数预判调节之后过曝点数量是否超过设定的过曝点阈值,若是,则减小曝光时间比例系数;若否,则保持曝光时间比例系数;s205:按照曝光时间比例系数调整曝光时间后曝光取图,得到理想亮度的灰度图。
10.对图像的灰度值进行直方图统计,可以清晰的知道图像灰度分布区间和比重,根据灰度分布区间和比重可以计算达到目标灰度区间的曝光比例系数。
11.作为优选,根据反射率公式计算各像素点的反射率:其中,g为该点灰度值;k为衰减系数,k=k1 k2 k3;k1激光盖板透射率;k2镜头透射率;k3传感器转化率;p为激光发射功率,f为物体反射率;d为目标到镜头的物距。
12.计算各点的反射率,用于与经验值比较判断人脸轮廓。
13.作为优选,所述的人脸轮廓的范围区域确定过程为:a.当扫描检测连续若干个像素点的反射率均在人体皮肤反射率经验值范围内,且深度差异在设定的范围内时,则标记该像素点,进入下一步处理;否则继续扫描检测;b.根据标记的像素点的深度值计算像素在映射到图像上的实际间隔;c.依据计算得到的实际间隔,根据人脸大小经验值的0.5倍来计算人脸轮廓,确认人脸轮廓的范围区域的像素个数;此处大于或等于0.5倍的人脸轮廓的像素个数经验值时,判定可能存在人脸区域;d.根据计算得到的像素个数,进行水平和垂直偏移,并在该范围区域内检测若干
个像素点,统计反射率落在人体皮肤反射率经验值范围内的比例;e.通过统计的比例与设定的比例比较判断该区域范围是否为人脸轮廓的范围区域,若统计的比例大于等于设定的比例,则判断该区域范围为人脸轮廓的范围区域,进行标记,并入步骤s5,否则,返回步骤a开始继续扫描。
14.试不同肤色,不同环境人体皮肤反射率测量,并考虑到测量误差影响,根据人体皮肤反射率的经验值,确定人脸轮廓的大致范围。
15.作为优选,所述实际间隔的计算过程为:为:其中,x为像素在映射到图像上的水平实际间隔;y为像素在映射到图像上的垂直实际间隔;s
x
为相机视场角水平值的1/2;sy为相机视场角垂直值的1/2;d为该点的深度值;p
x
为图像分辨率水平值的1/2;py为图像分辨率垂直值的1/2。
16.根据标记点的深度值计算像素在映射到图像上的实际间隔。
17.作为优选,所述的人脸轮廓计算过程为:作为优选,所述的人脸轮廓计算过程为:其中,x为像素在映射到图像上的水平实际间隔;y为像素在映射到图像上的垂直实际间隔;xn为人脸轮廓的水平像素个数;yn为人脸轮廓的垂直像素个数;xj为人脸大小水平经验值的1/2;yj为人脸大小垂直经验值的1/2。
18.依据计算出的像素间隔系数,根据人脸大小经验值的0.5倍,来计算人脸轮廓确认范围像素个数。
19.作为优选,所述的步骤s5包括以下步骤:s501:使用扫描算法,水平依次扫描灰度图像,寻找具有对称性灰度的疑似人眼位置;s502:根据深度信息和视场角解算具有对称性灰度的疑似人眼位置的水平距离,并判断是否在人眼距离的经验值范围内,若是,则进入下一步检测,若否,则返回步骤s501
继续扫描;s503:根据步骤s502中确定的人眼位置,根据深度值和视场角,以及面部眼睛和鼻子距离的经验值,寻找深度图上的鼻子相比两则脸颊的高度;若满足经验值则表示该区域为人脸区域,记录鼻子处的灰度值与深度值,并作标记。
20.s504:重复步骤s501到步骤s503,直至扫描完成;根据记录的人脸鼻子深度信息,选择深度值最小的一个人脸的鼻子灰度值,输出给曝光时间控制单元。
21.系统根据该灰度值与目标灰度区间(800lsb到1500lsb),按比例扩大或者缩小调整曝光参数。此时不再考虑过曝点的影响。
22.本发明的有益效果是:本方案通过灰度直方图统计自动曝光获得理想亮度的灰度图,然后计算反射率,根据人体皮肤反射率范围,确定脸部轮廓的大致范围,再通过一种灰度结合深度的特征点扫描算法确认脸部位置,并根据脸部的灰度值计算曝光参数进行曝光,不需要庞大图像识别与数据运算,就可以获得理想的曝光结果,充分利用3d深度相机深度信息与灰度信息交叉检测优势。
附图说明
23.图1是本发明的一种基于深度相机人脸自动曝光方法流程图。
具体实施方式
24.下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
25.实施例:本实施例的一种基于深度相机人脸自动曝光方法,如图1所示,包括以下步骤:s1:根据初始值参数进行曝光并获取图像帧。
26.初始曝光参数确定,以某项目为例,深度相机模组安装于轿车b柱位置,用于车主人脸识别解锁开门。主要的测距范围0.2米0.8米,极限测距范围0.1米到1.2米。初始曝光参数以0.5米,正常肤色的测试者,脸颊处的灰度值设定1150lsb左右,测试得到此时的曝光参数的重频次数为300。
27.一张深度图和灰度图由两组快门和激光信号积分后计算得到,本例用到的深度相机一组激光信号包含12小组,每个小组含有若干个激光单脉冲信号即重频次数,初始值测试得到重频次数为300。深度相机根据该曝光参数曝光后获得初始的深度图和灰度图。
28.s2:对图像的灰度值进行直方图统计,根据统计结果对灰度图曝光参数进行调整,再次曝光后获得理想亮度的灰度图和深度图。
29.对图像的灰度值进行直方图统计,能够清晰的知道图像灰度分布区间和比重,根据灰度分布区间和比重可以计算达到目标灰度区间的曝光比例系数。根据人脸识别算法统计,本例最优的人脸灰度区间是800lsb到1500lsb。
30.比重指的是灰度分布的比例,本例取整张灰度图像的80%的灰度值分布区间。
31.直方图统计的间隔划分,一般通过灰度比例或者灰度范围大小划分。本例结合背景噪声,灰度调节比例,线性区范围和过曝范围总分为12个区间,分别是:0到50lsb,51lsb到200lsb,201lsb到400lsb,401lsb到600lsb,601lsb到800lsb,
801lsb到1000lsb,1001lsb到1500lsb,1501lsb到2000lsb,2001lsb到2500lsb,2501lsb到3200lsb,3201lsb到3600lsb,3601lsb到4096lsb。
32.其中0到50lsb主要统计背景噪声,3601lsb到4096lsb统计过曝点。根据经验值本例设定的过曝点阈值为1200。
33.过曝点阈值确定:在测量场景中,存在高反射率物体,比如眼镜,耳环,项链等。这些高反射率物体,产生的过曝点容易与距离近而产生的过曝点混淆。距离近导致测试目标过曝就需要降低曝光时间,而高反物体过曝,由于测量目标并非是这些高反物体。则需要不做处理。算法通过设置过曝点阈值,来消除高反影响。
34.经测试,饰物及眼镜在正常测量场景的最大过曝点不会超过1000个,此正常场景指的是测量目标大于0.35米,若小于该距离,也按近距离过曝处理。预留一定的阈值,我们设定过曝点阈值1200,判断依据是灰度值是否大于3600lsb,若大于即为过曝点。
35.根据直方图灰度统计结果进行自动曝光的步骤如下:a.获取的灰度图按照直方图划定的灰度区间进行像素划分,并统计每个区间的像素个数。
36.b.过曝点数量统计,计算3601lsb到4096lsb区间内的像素个数是否大于设定过曝点阈值1200,若大于该阈值,则按照经验值0.3倍比例降低曝光时间,再次曝光并统计过曝点,若继续大于设定阈值,则继续调节,直至过曝点低于设定阈值。反之若过曝点的数量小于阈值则直接进入下一步骤。
37.c.灰度值从低到高依次判断80%像素灰度值分布的最大区间。
38.灰度图的分辨率是640*480,总公共307200个像素。从低到高依次判断80%像素分布的最大区间,即首先判断50lsb以内的像素个数是否大于80%,若大于则最大区间0到50lsb。若不大于,则判断0到200lsb区间内的像素个数是否大约总像素个数的80%,若大于则最大区间为51lsb到200lsb,若不大于则继续从低到高判断,直至确定80%像素分布的最大区间。
39.d.计算最大灰度区间到目标灰度区间的比例系数,并根据该比例系数预判调节之后过曝点数量是否超过设定阈值,若超过,则减小该系数,反之则不做调整。
40.例若当前灰度图像的灰度范围80%处于400lsb以内,目标灰度范围是800到1500lsb,激光曝光时间调节比例即为1500lsb/400lsb=3.75。当曝光时间提高3.75倍之后,所有未过曝点的灰度值按比例扩大3.75倍。因此需要预判调节之后过曝点数量。计算如下:3600lsb/3.75=960lsb,即需要检查大于960lsb灰度值以上的点个数,过曝点阈值未1200,留一定余量,此处选1000。若大于960lsb灰度值以上的个数小于1000,则可以按照曝光时间扩大3.75方式调节,如大于,则需要降低曝光时间的调节倍数,直到预判曝光修改完之后不会出现过曝为止。
41.e.按照该系数调整曝光时间后曝光取图,得到理想亮度的灰度图。
42.s3:根据深度图的深度信息和灰度图的灰度值,依次计算各像素点的反射率。
43.根据反射率计算公式:其中,g为该点灰度值;单位:nw/mm2/lsb;
k为衰减系数,k=k1 k2 k3;k1激光盖板透射率;k2镜头透射率;k3传感器转化率;p为激光发射功率,单位:w;f为物体反射率;d为目标到镜头的物距,即该点的深度值,单位mm。
44.其中,k1=0.95,k2=0.91,k3=0.13,通过使用光功率计和激光匀光角度可计算得到激光的在距离d处功率p=3.38w/(d*d)。
45.根据以上已知参数可以求解目标物的反射率。
46.分别测试不同肤色人脸反射率,记录如下:测试不同肤色,不同环境人体皮肤反射率测量,并考虑到测量误差影响,本例确定人体反射率范围在0.35到0.50之间。
47.s4:根据人体皮肤反射率的经验值,结合计算得到的各像素点的反射率,确定人脸轮廓的范围。
48.本例测试不同肤色,不同环境人体皮肤反射率测量,并考虑到测量误差影响,本例确定人体皮肤反射率范围在0.35到0.50之间。
49.根据经验统计一般人脸长18.5厘米到22厘米,宽度12厘米到14厘米。因此一般人脸长宽为20*13厘米左右。
50.考虑到角度和头发影响,本例按照0.6倍大小范围内的若干点的反射率进行人脸轮廓初步确认。经确认后,按照1.5倍大小范围标记输出。
51.以某项目为例,脸部轮廓范围确认步骤如下:a.检测连续若干个像素点的反射率都在0.35到0.50之间且深度差异在设定的范围内时,则标记这些点进入下一步处理。反之继续扫描。
52.b.根据标记点的深度值计算像素在映射到图像上的实际间隔。本例相机的视场角为水平70
°
垂直50
°
,设该点的深度值为d,那么根据图像的分辨率640*480和视场角70
°
*50
°
,计算此深度对应的像素间隔映射的实际距离:设水平为x,垂直为y;实际间隔的计算过程为:实际间隔的计算过程为:
其中,x为像素在映射到图像上的水平实际间隔;y为像素在映射到图像上的垂直实际间隔;s
x
为相机视场角水平值的1/2;sy为相机视场角垂直值的1/2;d为该点的深度值;p
x
为图像分辨率水平值的1/2;py为图像分辨率垂直值的1/2。
53.在本实施例中:在本实施例中:c依据上步骤中计算出的像素间隔系数,根据人脸大小经验值的0.5倍即100*65毫米,来计算人脸轮廓确认范围像素个数。此处大于或等于0.5倍的人脸轮廓的像素个数经验值时,判定可能存在人脸区域。
54.设水平个数xn,垂直方向yn;设水平个数xn,垂直方向yn;其中,x为像素在映射到图像上的水平实际间隔;y为像素在映射到图像上的垂直实际间隔;xn为人脸轮廓的水平像素个数;yn为人脸轮廓的垂直像素个数;xj为人脸大小水平经验值的1/2;yj为人脸大小垂直经验值的1/2。
55.在本实施例中:在本实施例中:d根据上步骤计算像素个数,进行水平和垂直偏移,并在此范围内检测若干个点,统计反射率落在皮肤反射率区间的比例。
56.e根据设定的比例判断该区域是否为脸部区域,若是则标记,并入下一步判断,若不是则从步骤a开始继续扫描。
57.s5:使用图像扫描算法,依次扫描人脸轮廓的范围区域,确定人脸轮廓坐标和灰度
值;按照最近优先原则,选取最近轮廓的灰度值进行曝光参数计算,并再次曝光。
58.人脸轮廓检测步骤:根据灰度值和深度值计算反射率,并依据皮肤反射率的经验区间,确定人脸的轮廓范围。
59.以某项目为例,肤色正常的测试者站在据镜头0.58米处,根据反射率计算式g=k*f*p/(d*d),(g为该点灰度值,单位:nw/mm^2/lsb;k为衰减系数,k=k1 k2 k3,k1激光盖板透射率,k2镜头透射率,k3传感器转化率;p为激光发射功率,单位:w;f为物体反射率;d为目标到镜头的物距,即该点的深度值,单位mm),计算得到皮肤反射率0.4,根据步骤s4方法,标记人脸的大致轮廓范围。
60.s501:使用扫描算法,水平依次扫描灰度图像,寻找具有对称性灰度的人眼位置。
61.s502:根据深度信息和视场角解算步骤s501中找到的具有对称性信息疑似人眼的水平距离,并根据人眼距离的经验值进行过滤,若是则进入下一步检测,若不是,则继续扫描。
62.以某项目为例,测试者站在据镜头0.58米处,此时水平像素点之间的间距根据步骤s4中得出0.0022*d,其中d为对应的深度值,代入得到像素实际间隔0.0022*0.58等于0.001276米,即为1.276mm。
63.根据经验值人体两眼间距56mm到70mm之间,考虑到测量偏差,实际使用取50mm到75mm。对应的像素个数最小:50/1.27639≈39,最大:75/1.276≈59。
64.代入上步骤中疑似人眼位置,统计两眼之间像素个数是否在这个范围之内。如果在则进入下一步处理,如不在,则返回步骤s501中继续扫描。
65.s503:根据步骤s502中确定的人眼位置,根据深度值和视场角,以及面部眼睛和鼻子距离的经验值,寻找深度图上的鼻子相比两则脸颊的高度。若满足经验值则表示该区域为人脸区域,记录鼻子处的灰度值深度值,并作标记。
66.根据经验值鼻子长度60到75mm,高为20mm左右,根据实际测试确定合理的鼻高和长度范围。根据上步骤中确定的人眼位置,根据设定的鼻子长度范围,计算鼻尖处的像素坐标,即水平坐标为两眼中心,垂直坐标两眼中心向下偏移65mm,偏移像素个数为距离除以像素间隔,根据s502中得到的像素间隔1.276mm,代入计算偏移像素个数:65/1.276≈51。然后计算该坐标点(鼻尖)及周围8个点的平均深度,与两侧脸颊处深度求差,判断差值是否在设定的鼻子高度范围之内,若是则为面部轮廓,记录鼻子深度值和灰度值并标记存储。两侧脸颊的坐标确定,横坐标为左右眼睛中心坐标,纵坐标均为鼻尖的纵坐标。脸颊深度也是取坐标点及周围8个点的均值。
67.s504:重复步骤s501到步骤s503,直至扫描完成。然后根据记录的人脸鼻子深度信息,选择深度值最小的一个人脸的鼻子灰度值,输出给曝光时间控制单元。
68.系统根据该灰度值与目标灰度区间(800lsb到1500lsb),按比例扩大或者缩小调整曝光参数。此时不再考虑过曝点的影响。
69.s6:输出基于人脸自动曝光后的图像帧。
70.应理解,实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本技术所附权利要求书所限定的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献