Face机制 简单归纳(与君共勉)

本文探讨了影响FaceY计算的多种因素,如人脸框大小、GaussianFilter的应用、Landmark框的使用,以及多人脸处理策略。文章还介绍了Facetype对FaceY的影响以及FaceTarget的计算方法,包括Facelinktarget、FaceLCE和FaceProbweight在不同场景下的参数调整。
摘要由CSDN通过智能技术生成

Face和Touch有一定的相似度,face的Y值主要是计算人脸所占区域的block的平均亮度Y值(FDY);

影响FDY统计的情况有几种:

1.调整人脸框的大小,向上向下向左向右进行调整但是人脸框越大那么统计的FDY越不精准,同时向上的人脸框一般默认回向中间拉一点防止把头发区域拉进去不然会导致FDY统计的值偏小;

2.6873新引入的Gaussian Filter(高斯滤波器),它会看整人脸的平均亮度Y然后再看每一个block的亮度距离平均亮度的差异如果它距离平均亮度的差异越大那么我们给与这个block的weighting就会越小,反之它跟我们的平均亮度比较接近的话我们就会给它一个比较大的weighting,我们根据这样的一个方式会将跟平均亮度差异比较大的block的亮度从统计中剔除掉,让它更精准的统计到我们和人脸平均亮度比较接近的block,通过这样的方式等到我们的一个FDY,同时有一个ROI stabilizer的机制在我们的人脸框在人没动的时候有微微的飘动但是它移动的范围是比较小的那么我们就不会去更新它统计会保持原本框的统计不然的话可能我们的FDY又会有变化,这个没有参数可调只有一个使能开关;

Gaussian Filter的参数

ROI的使能开关

3.就是除了整个人脸的框外里边还有一个针对眼睛和嘴巴下边缘的一个人脸框Landmark框,但是Landmark框统计的数据可能不太稳定尤其的人脸在动的时候有时候会统计到人脸织之外所以在之前的平台这个机制开启的话也不会把它的占比设置到百分之100可能就设置到百分之60左右,但是当前6873的平台新引入了一个Gaussian Filter(高斯滤波器)的一个机制去统计face的Y所以一般都会把Landmark机制关闭;

4.多人脸的时候有参数去调试要不要去参考其他人脸的亮度,目前最多支持九张人脸(使能开关

),目前face detection(人脸检测)送过来的人脸一般都是已经按照人脸从大到小的顺序排序好后在给到的,第一张一般就是主脸人脸最大的那一张人脸,如果我们期望不管管画面中出现几张人脸我们都只统计第一张人脸的亮度,那么我们只要把第一个人脸的weight设置成1就行其他的都设置为0,设置成0的人脸我们就不会去计算它的一个亮度统计,如多张人脸我们只想统计前两张人脸希望他们亮度做平均,那我们把两张人脸的weight设置成一样,那他最后就会去做平均。他们的公式就是每张人脸的亮度乘上他们对应的weight把他们相加起来在除以weight的总和然后就能得到多张人脸之后的FDY的大小

PS:多人不会影响我们face target的计算指挥影响我们Face Y的统计

5.Facetype(当前人脸的类型),如:face是否稳定还是face size在变化亦或者人脸在动亮度变化大等,但是只是偶尔动一下但是face还是会回来,我们就会认为他是一个OT的face是一个在动的,face这样的话我们就是不希望我们的FDY不要去随着框的变化去变不然容易造成AE闪烁,这种情况下我们就不会去更新FDY而是还是使用上一帧的FDY去做计算;

FACE 的分类:

影响faceY的因素是有一个face types

  1. RobustFace:当它是非OT face的时候我们就认为他是RobustFace是可信赖的人脸就可以把我们当下统计的人脸亮度FDY更新进去,以这样的FDY去做一个faceAE的收敛计算
  2. Object Tracking face:当我们的人脸有size的变化(如人脸远近变化),motion的变化(face在移动),Gyro/Acce的变化(手机的在移动,比如被监测到陀螺仪有变化),FDY的变化(人脸框里亮度有比较大幅度的变化),CWV(整张画面统计值的变化),LMCV(人脸可信赖度的大小),LM ROP(Landmark的方向,比如人脸是否在转);会根据这些信息来决定我们当前的人脸是不是一个OT的face,满足那些条件后我们就认为这是一张在动的人脸那我们就会去保持上一帧的FDY不会将当下的FDY更新过来,那么我们的AE就不会去动;那些判定是否是OTface的情况都可以通过BV,DR根据场景的不同去做不同的客制化这些参数都可以去区分去微调
  3. No face:当我们人脸丢失的时候我们就会去把FDY统计信息清掉

Face Target:

  1. Face link target(FLT):通过BV,DRface和背景过曝区的亮度对比),OE ratio来决定face区域我们想要拉到的target,同时还会受Size的影响。
  2. FBT:通过BV,DRface和背景过曝区的亮度对比),OE ratio来决定当前整张画面我们要拉到的target,在face上来说就是后景的一个target。
  3. DR在FBT计算出target后会在去根据face区域的一个EV diff去判定人脸是阴阳脸的概率,如果EV diff越大那么说明是测光的概率越大,就会降低FBT的一个target防止把人脸亮区拉的更加过曝,然后更多的去使用Face LCE去提人脸亮度。
  4. Face LCE:它会限制人脸最亮区的亮度,把它限制到LCE参数所设置的亮度,他不会让人脸的亮度异常的,只会把真正的把人脸亮度提拉。在参数中会去根据不同BV去设置LCE gain的倍数目前建议是两倍因为如果LCE拉的太高的话可能会导致人脸对比度不是很好导致对比度失衡同时还容易和非face时normal的一个LCE参数发生冲突,所以LCE的倍数不适合拉太高。LCE这边参数还会设置一个出发的亮度门限(FD_min_th),就是当AE(FBT)把亮度拉到一定的程度的时候LCE才会入场去做亮度的一个提拉,不然如果整体亮度太低的话LCE去提拉亮度的话那么整个低亮区都会被提亮整个对整个效果而言并不是很好。

Face LCE最大Gain计算公式:LCE Max Gain=log(倍数)*1024(PS:根据BV去区分LCE的Gain

  1. Face Probweight:通过BV和人脸的locationsize来决定Face Prob,location越中心size越大face混合比例越大,face prob=location prob*size prob。
  2. Back scene target:FBT受face DR影响后的targetnormal target最终混合的Target。
  3. Face size:当FLT通过查表得出一个Target后,会在通过size的大小去调整target的大小,当size越来越小的时候我们不希望较小的人脸对face AE又明显的影响所以会降低FLT查表得出的target,当size越来越大的时候我们就可以完整的使用FLT的target;size 的查表得出的target可以通过参数去调整,可以设置的比FLT target高。
  4. FLTFBT target计算出来后会去做一个比较,根据FLT,FBT,LCE最大gain以及期望FBT拉到的最低亮度值(FD_min_th)这些信息来确定Face AE最终的一个TargetLCE最终的gain

 6765face的相关参数:

根据不同的BV场景微调面部BV范围;

调优步骤

1)微调BV表值,分离不同的BV情况。(室外+室内)

微调面部亮度,适合室外室内面部场景;

调优步骤:

  1. 微调亮度目标值(AE_TAG_FACE_LOW_BOUND),确定人脸亮度。(室内)

2)微调亮度目标值(AE_TAG_FACE_HIGH_BOUND),确定人脸亮度。(户外)

微调面亮度夜景:

调优步骤:

  1. 如果AE_TAG_NS_STS_WEIGHT = 1024,我们可以使用100% FACE_NS_IOw_BOUND作为人脸目标。

2)然后微调人脸NS亮度,确定人脸亮度。(NightScene)

  • 31
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值