脸部影像自动检测与拍摄方法与流程

文档序号:22321292发布日期:2020-09-23 01:55阅读:189来源:国知局
脸部影像自动检测与拍摄方法与流程

本发明涉及一种检测与拍摄方法,尤其涉及一种脸部影像的检测与拍摄方法。



背景技术:

随着时代的进步,越来越多的科技可以被用来协助使用者进行日常行为中的各项动作。

近年来,市场上出现一种设置有反射镜、显示模块及影像撷取模块的智能镜设备。所述智能镜设备可通过反射镜来反射使用者的脸,同时通过影像撷取模块来撷取使用者的脸部影像,并且在对脸部影像进行了分析后,再于显示模块上显示分析结果以及相关的化妆资讯。藉此,使用者可以随着智能镜设备给出的建议与导引来完全上妆的动作,相当便利。

如图1所示,为相关技术的智能镜设备的示意图的第一具体实施例。如图1所示,所述智能镜设备1主要具备了显示模块11、影像撷取模块12及按键模块13,其中显示模块11与反射镜整合为一体,使得显示模块11可以反射使用者的脸,并且同时显示相关资讯(例如显示影像撷取模块12所拍摄的照片,或是显示分析结果)。

一般来说,智能镜设备1是通过影像撷取模块12来拍摄使用者的照片,并且对照片中的脸部影像进行分析。使用者与影像撷取模块12间的距离将会影响所拍摄的照片的分辨率,而分辨率的高低又会影响分析结果的准确性。因此,如何令使用者可以遵从智能镜设备1的指示来拍摄符合分析需求的照片,进而令不同使用者在不同时间点所拍摄的多张照片都可具有相近的分辨率,实具有一定的难度。

另外,照片中的脸部影像的角度也会对智能镜设备1的分析结果造成很大的影响(例如左、右比例不一致),或是容易在照片上形成阴影而影响分析结果。因此,要如何预防影像撷取模块12拍到歪斜严重的照片而导致分析结果异常,也是本领域的技术人员所需努力的方向。



技术实现要素:

本发明的主要目的,在于提供一种脸部影像自动检测与拍摄方法,可以在确认脸部影像与影像撷取模块间的距离适当、轮廓没有超出预设边界并且没有倾斜时,自动控制影像撷取模块拍摄脸部影像的照片,以于后续程序中对照片进行处理与分析。

为了达成上述的目的,所述脸部影像自动检测与拍摄方法主要运用于具有一处理单元、一显示模块及一影像撷取模块的一智能镜设备,并且包括下列步骤:

a)通过该影像撷取模块即时检测一使用者的一脸部影像;

b)该处理单元判断该脸部影像与该智能镜设备间的距离是否落在一门槛范围内;

c)于该脸部影像与该智能镜设备间的距离没有落在该门槛范围内时,由该显示模块显示往前移动或往后移动的一第一指示;

d)该处理单元判断该脸部影像的一轮廓是否超出该智能镜设备的一预设边界;

e)于该脸部影像的该轮廓超出该预设边界时,由该显示模块显示往上移动、往下移动、往左移动或往右移动的一第二指示;

f)该处理单元判断该脸部影像的角度相对于该智能镜设备是否倾斜;

g)于该脸部影像倾斜时,由该显示模块显示调整角度的一第三指示;及

h)于该脸部影像与该智能镜设备间的距离落在该门槛范围内、该轮廓未超出该预设边界并且该脸部影像没有倾斜时,自动控制该影像撷取模块拍摄该脸部影像的一照片。

如上所述,其中更包括下列步骤:

i)该步骤h后,判断是否使用该照片执行该智能镜设备的一肌肤分析程序;及

j)于不使用该照片执行该肌肤分析程序时,舍弃该照片并且再次执行该步骤a)至该步骤h)。

如上所述,其中该步骤b)包括下列步骤:

b1)通过一定位演算法对该脸部影像进行分析以于该脸部影像上取得多个定位点;

b2)依据该多个定位点计算该脸部影像的脸部宽度的总像素值;

b3)将该总像素值与一第一门槛值及一第二门槛值进行比对;

b4)于该总像素值小于该第一门槛值时判断该脸部影像与该智能镜设备间的距离太远;

b5)于该总像素值大于该第二门槛值时判断该脸部影像与该智能镜设备间的距离太近;及

b6)于该总像素值大于该第一门槛值并且小于该第二门槛值时判断该脸部影像与该智能镜设备间的距离落在该门槛范围内。

如上所述,其中该定位演算法为dlibfacelandmark系统演算法,该多个定位点的数量为119点,并且该步骤c)是于该总像素值小于该第一门槛值时显示往前移动的该第一指示,并于该总像素值大于该第二门槛值时显示往后移动的该第一指示。

如上所述,其中该第一门槛值为该显示模块的预览分辨率的一半与一容忍值的差,该第二门槛值为该显示模块的预览分辨率的一半与该容忍值的和。

如上所述,其中该步骤d)包括下列步骤:

d1)通过一定位演算法对该脸部影像进行分析以于该脸部影像上取得多个定位点;

d2)由该多个定位点中撷取该脸部影像上的一最左边定位点、一最右边定位点、一最上方定位点及一最下方定位点;

d3)将该最左边定位点、该最右边定位点、该最上方定位点及该最下方定位点分别与该智能镜设备的一左边界值、一右边界值、一上边界值及一下边界值进行比对;

d4)于该最左边定位点小于该左边界值时判断该脸部影像太偏左边;

d5)于该最右边定位点大于该右边界值时判断该脸部影像太偏右边;

d6)于该最上方定位点小于该上边界值时判断该脸部影像太偏上方;

d7)于该最下方定位点大于该下边界值时判断该脸部影像太偏下方;及

d8)于该最左边定位点未小于该左边界值、该最右边定位点未大于该右边界值、该最上方定位点未小于该上边界值并且该最下方定位点未大于该下边界值时,判断该脸部影像未超出该预设边界。

如上所述,其中该定位演算法为dlibfacelandmark系统演算法,该多个定位点的数量为119点,并且该步骤e)是于该最左边定位点小于该左边界值时显示往右移动的该第二指示、于该最右边定位点大于该右边界值时显示往左移动的该第二指示、于该最上方定位点小于该上边界值时显示往下移动的该第二指示、于该最下方定位点大于该下边界值时显示往上移动的该第二指示。

如上所述,其中该处理单元依据该左边界值、该右边界值、该上边界值及该下边界值生成一对焦框,并且于该显示模块上该对焦框。

如上所述,其中该右边界值为该显示模块的预览分辨率与该左边界值的差,该下边界值为该显示模块的预览分辨率与该上边界值的差。

如上所述,其中该步骤f)包括下列步骤:

f1)通过一定位演算法对该脸部影像进行分析以于该脸部影像上取得多个定位点;

f2)于该多个定位点中撷取该脸部影像的一鼻梁线上的一最高点及一最低点;

f3)依据该最高点及该最低点判断该鼻梁线是否呈现垂直;

f4)于该鼻梁线未呈现垂直时判断该脸部影像为侧脸或斜脸;

f5)于该多个定位点中撷取该脸部影像的一眼角线上的一最右点及一最左点;

f6)依据该最右点及该最左点判断该眼角线是否呈现水平;

f7)于该眼角线未呈现水平时判断该脸部影像为侧脸;及

f8)于该鼻梁线呈现垂直且该眼角线呈现水平时,判断该脸部影像没有倾斜。

如上所述,其中该步骤f4)更包括下列步骤:

f41)于该鼻梁线未呈现垂直时,判断该鼻梁线的垂直角度与90度角间的一角度差异;

f42)于该角度差异小于一垂直角度门槛值时判断该鼻梁线呈现垂直;及

f43)于该角度差异大于该垂直角度门槛值时判断该脸部影像为侧脸或斜脸。

如上所述,其中该步骤f7)更包括下列步骤:

f71)于该眼角线未呈现水平时,判断该眼角线的水平角度与0度角间的一角度差异;

f72)于该角度差异小于一水平角度门槛值时判断该眼角线呈现水平;及

f73)于该角度差异大于该水平角度门槛值时判断该脸部影像为侧脸。

如上所述,其中该垂直角度门槛值与该水平角度门槛值为正负五度。

如上所述,其中该步骤f3)是取得该最高点的x轴座标以及该最低点的x轴座标,并且于该最高点的x轴座标与该最低点的x轴座标相等时判断该鼻梁线呈现垂直。

如上所述,其中该步骤f7)是取得该最右点的y轴座标以及该最左点的y轴座标,并且于该最右点的y轴座标与该最左点的y轴座标相等时判断该眼角线呈现水平。

本发明相较于相关技术所能达到的技术功效在于,在确认使用者的脸部影像的距离、位置及角度都符合所需条件的情况下再拍摄脸部影像的照片,藉此可令智能镜设备每次拍摄的照片中的脸部影像都具有相近的大小与分辨率,进而可提高智能镜设备基于这些照片执行肌肤分析程序所得到的结果的准确率。

以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。

附图说明

图1为相关技术的智能镜设备的示意图的第一具体实施例;

图2为本发明的智能镜设备的方框图的第一具体实施例;

图3为本发明的对焦框的示意图的第一具体实施例;

图4为本发明的拍照示意图的第一具体实施例;

图5为本发明的拍摄流程图的第一具体实施例;

图6为本发明的距离判断流程图的第一具体实施例;

图7为本发明的边界判断流程图的第一具体实施例;

图8为本发明的倾斜判断流程图的第一具体实施例;

图9为本发明的检测行为的示意图的第一具体实施例;

图10为本发明的检测行为的示意图的第二具体实施例;

图11为本发明的检测行为的示意图的第三具体实施例;

图12为本发明的检测行为的示意图的第四具体实施例;

图13为本发明的检测行为的示意图的第五具体实施例。

其中,附图标记:

1、2…智能镜设备;

11、21…显示模块;

12、22…影像撷取模块;

13、23…输入模块;

20…处理单元;

24…无线传输模块;

25…储存模块;

3…对焦框;

4…使用者;

s10~s30…拍摄步骤;

s40~s50、s60~s70、s80~s100…判断步骤。

具体实施方式

兹就本发明之一较佳实施例,配合附图,详细说明如后。

本发明揭露的是一种脸部影像自动检测与拍摄方法(下面于说明书中简称为拍摄方法),所述拍摄方法主要应用于如图2所示的智能镜设备,以令智能镜设备自动拍摄符合分析需求的照片,藉此可依据照片对使用者进行肌肤分析。

参阅图2,为本发明的智能镜设备的方框图的第一具体实施例。如图2所示,本发明的智能镜设备2主要包括处理单元20、显示模块21、影像撷取模块22、输入模块23、无线传输模块24及储存模块25,其中处理单元20、显示模块21、影像撷取模块22、输入模块23、无线传输模块24及储存模块25分别通过汇流排彼此电性连接。

本发明中,智能镜设备2于通电启动后,即持续通过影像撷取模块22检测外部影像。处理单元20对外部影像进行影像辨识,以判断外部影像中是否出现使用者的脸部影像。于一实施例中,处理单元20可对外部影像进行人脸辨识,以判断外部影像中是否出现特定使用者的脸部影像;于另一实施例中,处理单元20可对外部影像进行单纯的脸部辨识,以判断外部影像中是否出现了与人脸相近的影像。

当处理单元20判断外部影像中确实出现了脸部影像后,进一步判断这个脸部影像是否符合预先设定的拍照条件。当脸部影像符合了所述拍照条件时,处理单元20即自动控制影像撷取单元22进行照片的拍摄动作,以令所拍摄的照片中具有符合拍照条件的脸部影像。

具体地,智能镜设备2可通过显示模块21来显示所述照片,并通过输入模块23接受使用者的外部操作,以令使用者确认是否要利用所述照片来执行智能镜设备2的肌肤分析程序。于一实施例中,所述肌肤分析程序可储存于储存模块25中,不加以限定。

另,智能镜设备2还可通过无线传输模块24连接外部的移动装置,以将所拍摄的照片以及所述肌肤分析程序的分析结果传送至远端的移动装置,以利使用者观看。

于一实施例中,所述拍照条件可例如为脸部影像与智能镜设备2间的距离、脸部影像与智能镜设备2间的相对位置、以及脸部影像相对于智能镜设备2的角度等,但不以此为限。

具体地,脸部影像与影像撷取单元22间的距离将会影响所拍摄的照片的分辨率,而分辨率的高低将会大幅影响肌肤分析程序的准确性。因此,为了每次拍摄的照片都可具有相近的分辨率,本发明的智能镜设备2将脸部影像与智能镜设备2间的距离做为其中一项拍照条件,当脸部影像与智能镜设备2间的距离太近或太远时,智能镜设备2不对使用者进行拍照的动作。

另,若照片中的脸部影像为侧脸或是角度歪斜,则所述肌肤分析程序也将无法对所拍摄的照片进行准确的分析。因此,为了预防拍摄角度不良或歪斜严重的照片,本发明的智能镜设备2还将脸部影像与智能镜设备2的相对位置、角度做为其中一项拍照条件。当脸部影像的位置不恰当或歪斜严重时时,智能镜设备2同样不对使用者进行拍照的动作。

续请同时参阅图3及图4,图3为本发明的对焦框的示意图的第一具体实施例,图4为本发明的拍照示意图的第一具体实施例。

如图3所示,于本实施例中,处理单元20可依据预先设定的拍照条件(包含距离、位置及角度)来生成一个对焦框3,并且将对焦框3显示于显示模块21上。

如图4所示,当使用者4位于智能镜设备2前方并且使用者4的脸部影像与对焦框3大致重叠时,代表脸部影像与智能镜设备2间的距离适当、位置落在智能镜设备2的预设边界内并且角度相对于智能镜设备2没有歪斜。因此,当使用者4的脸部影像与对焦框3大致重叠时,智能镜设备2会自动通过影像撷取单元22拍摄使用者4的脸部影像的照片,藉此可基于所拍摄的照片来执行所述肌肤分析程序,并且得到分析结果。

值得一提的是,智能镜设备2的制造商可基于肌肤分析程序所需的照片条件设定智能镜设备2的预设边界(包括左边界值、右边界值、上边界值及下边界值),并且智能镜设备2的处理单元20可依据这些预设边界来自动生成所述对焦框3。换句话说,只要使用者4的脸部影像与对焦框3大致重叠,就表示脸部影像与智能镜设备2间的相对距离、相对位置及相对角度皆符合肌肤分析程序的需求。

续请参阅图5,为本发明的拍摄流程图的第一具体实施例。如图5所示,要运用本发明的拍摄方法,首先需开启本发明的智能镜设备2(步骤s10)。智能镜设备2启动后,即可控制影像撷取模块22即时检测使用者的脸部影像(步骤s12)。具体地,于步骤s12中,智能镜设备2是由影像撷取模块22持续检测外部影像,并且由处理单元20持续判断外部影像中是否存在使用者的脸部影像。

接着,处理单元20对脸部影像进行分析,以判断脸部影像与智能镜设备2间的距离(或是影像撷取模块22间的距离)是否落在一个门槛范围内(步骤s14),即,判断使用者是否距离智能镜设备2太远(将导致所拍摄的照片中的脸部影像的分辨率过低)或太近(将导致所拍摄的照片中的脸部影像的占据照片的比例过高)。

若于步骤s14中判断脸部影像与智能镜设备2间的距离没有落在门槛范围内,则处理单元20通过显示模块21显示提醒使用者往前移动或往后移动的第一指示(步骤s16)。具体地,处理单元20是在判断使用者距离智能镜设备2太近时于显示模块21上显示提醒使用者往后移动的第一指示,并且在判断使用者距离智能镜设备2太远时于显示模块21上显示提醒使用者往前移动的第一指示。

于步骤s16后,处理单元20返回步骤s12,以持续检测使用者的脸部影像。

于一实施例中,处理单元20主要是在使用者的脸部影像的宽度与显示模块21的宽度的比例为1:2时,判断脸部影像与智能镜设备2间的距离落在门槛范围(即,距离适当),但不加以限定。

若于步骤s14中判断脸部影像与智能镜设备2间的距离落在门槛范围,则处理单元20进一步判断脸部影像的输廓是否超出智能镜设备2的预设边界(步骤s18),即,判断使用者相对于智能镜设备2的位置是否太偏向左边、右边、上方或下方。

若于步骤s18中判断使用者的脸部影像超出了智能镜设备2的预设边界,则处理单元20通过显示模块21显示提醒使用者往左、往右、往上或往下移动的第二指示(步骤s20)。

具体地,本实施例中,处理单元20是在判断脸部影像超出了智能镜设备2的左边界时于显示模块21上显示提醒使用者往右移动的第二指示;在判断脸部影像超出了智能镜设备2的右边界时于显示模块21上显示提醒使用者往左移动的第二指示;在判断脸部影像超出了智能镜设备2的上边界时于显示模块21上显示提醒使用者往下移动的第二指示;在判断脸部影像超出了智能镜设备2的下边界时于显示模块21上显示提醒使用者往上移动的第二指示。

于步骤s20后,处理单元20返回步骤s12,以持续检测使用者的脸部影像。

若于步骤s18中判断脸部影像的轮廓没有超出智能镜设备2的预设边界,则处理单元20进一步判断脸部影像的角度相对于智能镜设备2是否倾斜(步骤s22),即,判断脸部影像是否为侧脸(即,沿着第一方向倾斜),或脸部影像是否歪斜(即,沿着第二方向倾斜)。

若于步骤s22中判断脸部影像倾斜,则处理单元20通过显示模块21显示提醒使用者调整角度的第三指示(步骤s24)。具体地,处理单元20是在判断脸部影像倾斜时,通过显示模块21显示提醒使用者直视前方、保持头部正向不倾斜、或是将脸对准对焦框3的第三指示。

于步骤s24后,处理单元20返回步骤s12,以持续检测使用者的脸部影像。

若于步骤s22中判断脸部影像没有倾斜,则处理单元20自动控制影像撷取单元22拍摄脸部影像的照片(步骤s26)。

步骤s26后,处理单元20判断是否要使用所拍摄的照片来执行所述肌肤分析程序(步骤s28)。于一实施例中,处理单元20可将所拍摄的照片显示于显示模块21上,并且藉由人机界面(userinterface,ui)询问使用者是否要使用这张照片来进行肌肤分析。于此实施例中,处理单元20可通过输入模块23接收使用者的回复,并且依据使用者的回复决定是否要使用所拍摄的照片来执行肌肤分析程序。

若处理单元20判断不使用所述照片来执行肌肤分析程序,则处理单元20舍弃在步骤s26中拍摄的照片,并且返回步骤s12,藉由重新执行步骤s12至步骤s26以控制影像撷取模块22重新拍摄符合需求的照片。若判断要使用所述照片来执行肌肤分析程序,则处理单元20进一步储存所拍摄的照片(步骤s30),并且结束本次的拍照流程。

于图5所示的实施例中,处理单元20是于判断脸部影像与智能镜设备2间的距离适当(即,落在门槛范围内)后,再接着判断脸部影像的轮廓是否超出智能镜设备2的预设边界;并且,在判断脸部影像的轮廓未超出预设边界时,再接着判断脸部影像是否倾斜。然而,上述执行顺序仅为本发明的其中一种实施方式,本发明的处理单元20不以上述执行顺序为必要限定条件。

于一实施例中,处理单元20可从储存单元25中载入并执行下列程序码,以实现上述的判断程序。

下面将配合附图具体对上述程序码进行对应说明。

参阅图6,为本发明的距离判断流程图的第一具体实施例。图6用以说明本发明的处理单元20如何对使用者的脸部影像进行分析以判断脸部影像与智能镜设备2间的距离是否适当。

首先,处理单元20通过影像撷取模块22检测使用者的脸部影像(步骤s40),并且通过定位演算法来对脸部影像进行分析,以于脸部影像上取得多个定位点(步骤s42)。于一实施例中,所述定位演算法可为dlibfacelandmark系统演算法并且储存于储存单元25中(图未标示)。处理单元20可通过dlibfacelandmark系统演算法对脸部影像进行分析,并于脸部影像上取得至少119个定位点。

所述dlibfacelandmark系统演算法为影像分析领域的常用技术手段,于此不再赘述。

本实施例中,处理单元20主要可依据多个定位点来计算脸部影像的脸部宽度(face_width)的总像素值(步骤s44),并且再将总像素值与预先设定的门槛范围(包含第一门槛值(face_width_limit_far)及第二门槛值(face_width_limit_close))进行比较,以判断总像素值是否小于第一门槛值或大于第二门槛值(步骤s46)。

具体地,于步骤s44中,处理单元20主要可依据多个定位点来判断脸部影像的脸型(例如为椭圆形脸、圆形脸、方形脸、长形脸、倒三角形脸及菱形脸等)。接着,依据脸型取得多个定位点在脸部影像上的最左点(即,具有最小的x轴座标)及最右点(即,具有最大的x轴座标),并且再依据所述最左点及最右点来计算脸部宽度的总像素值。

若于步骤s46中判断脸部宽度的总像素值小于第一门槛值或大于第一门槛值,则处理单元20判断脸部影像与智能镜设备2间的距离太远或太近(步骤s48)。反之,若于步骤s46中判断脸部宽度的总像素值大于第一门槛值并且小于第二门槛值,则处理单元20判断脸部影像与智能镜设备2间的距离落在门槛范围内(即,距离适当)(步骤s50)。

具体地,于步骤s48中,处理单元20主要是在脸部宽度的总像素值小于第一门槛值时,判断脸部影像与智能镜设备2间的距离太远,并且于前述图5的步骤s16中显示提醒使用者往前移动的第一指示。并且,处理单元20在脸部宽度的总像素值大于第二门槛值时,判断脸部影像与智能镜设备2间的距离太近,并且于前述图5的步骤s16中显示提醒使用者往后移动的第一指示。

本发明判断脸部影像与智能镜设备2间的距离的目的,在于令所拍摄的照片的分辨率能够符合所述肌肤分析程序的需求。于一实施例中,储存模块25还可记录有一个容忍值(例如为10、20个像素值)。于本实施例中,所述第一门槛值可设定为显示模块21的预览分辨率的一半与所述容忍值的差,所述第二门槛值可设定为显示模块21的预览分辨率的一半与所述容忍值的和。

举例来说,若显示模块21的预览分辨率为1020p,且所述容忍值为10个像素值,则所述第一门槛值为500,而所述第二门槛值为520。也就是说,只要使用者控制自己与智能镜设备2之间的距离,使得影像撷取模块22所检测的脸部影像的宽度约莫为显示模块21的宽度的一半,即可被处理单元20认定为距离适当(即,落在门槛范围)。惟,上述仅为本发明的一个具体实施范例,但不以此为限。

续请参阅图7,为本发明的边界判断流程图的第一具体实施例。图7用以说明本发明的处理单元20如何对使用者的脸部影像进行分析以判断脸部影像的轮廓是否超出智能镜设备2的预设边界。

相同于图6,处理单元20先通过影像撷取模块22检测使用者的脸部影像(步骤s60),并且通过dlibfacelandmark系统演算法来对脸部影像进行分析,以于脸部影像上取得多个定位点(步骤s62)。

接着,处理单元20由多个定位点中撷取脸部影像上的最左边定位点(face_outline_left)、最右边定位点(face_outline_right)、最上方定位点(face_outline_top)以及最下方定位点(face_outline_bottom)(步骤s64)。并且,处理单元20将所述最左边定位点、最右边定位点、最上方定位点及最下方定位点分别与智能镜设备2的预设边界(至少包括左边界值(face_limit_left)、右边界值(face_limit_right)、上边界值(face_limit_top)及下边界值(face_limit_botto))进行比对,判断最左边定位点是否小于左边界值、最右边定位点是否大于右边界值、最上方定位点是否小于上边界值、最下方定位点是否大于下边界值(步骤s66)。

于一实施例中,处理单元20可接受使用者操作而于储存模块25中预先储存所述左边界值、右边界值、上边界值及下边界值,以于上述步骤s66中比对使用。于另一实施例中,储存模块25亦可仅储存所述左边界值及上边界值,并且于执行上述步骤s66时,由处理单元20计算显示模块21的预览分辨率(例如1080p)与左边界值的差以得到所述右边界值(preview_1080_w–face_limit_left),并且计算显示模块21的预览分辨率(例如1080p)与上边界值的差以得到所述下边界值(preview_1080_h–face_limit_top)。惟,上述仅为本发明的其中一个具体实施范例,但不以此为限。

若于步骤s66中判断脸部影像其中一个定位点超出了智能镜设备2的预设边界,则处理单元20判断使用者与智能镜设备2间的相对位置太偏左边、太偏右边、太偏上方或太偏下方(步骤s68)。具体地,于步骤s68中,处理单元20是在脸部影像上的最左边定位点小于预设边界中的左边界值时,判断脸部影像太偏左边;在脸部影像上的最右边定位点大于预设边界中的右边界值时,判断脸部影像太偏右边;在脸部影像上的最上方定位点小于预设边界中的上边界值时,判断脸部影像太偏上方;在脸部影像上的最下方定位点大于预设边界中的下边界值时,判断脸部影像太偏下方。

值得一提的是,于前述图5的步骤s20中,处理单元20主要是在所述最左边定位点小于左边界值时显示提醒使用者往右移动的第二指示、于所述最右边定位点大于右边界值时显示提醒使用者往左移动的第二指示、于所述最上方定位点小于上边界值时显示提醒使用者往下移动的第二指示、于所述最下方定位点大于下边界值时显示提醒使用者往上移动的该第二指示。

若于步骤s66中判断脸部影像上的最左边定位点未小于左边界值、最右边定位点未大于右边界值、最上方定位点未小于上边界值并且最下方定位点未大于下边界值,则处理单元20判断使用者的脸部影像未超出智能镜设备2的预设边界(步骤s70)。

值得一提的是,于一实施例中,处理单元20还可依据所述预设边界(至少包括左边界值、右边界值、上边界值及下边界值)生成所述对焦框3并显示于显示模块21上,藉此协助使用者调整自己的位置,以令影像撷取模块22检测到的脸部影像可落于智能镜设备2的预设边界内。如此一来,可以有效避免影像撷取模块22拍摄到位置不佳的照片而影响到分析结果。

续请参阅图8,为本发明的倾斜判断流程图的第一具体实施例。图8用以说明本发明的处理单元20如何对使用者的脸部影像进行分析以判断脸部影像的角度相对于智能镜设备2是否倾斜。

相同于图6及图7,处理单元20先通过影像撷取模块22检测使用者的脸部影像(步骤s80),并且通过dlibfacelandmark系统演算法来对脸部影像进行分析,以于脸部影像上取得多个定位点(步骤s82)。

本实施例中,处理单元20是先依据多个定位点来辨识脸部影像的垂直角度(face_anglev)以及水平角度(face_angleh),判断垂直角度与90度角间的角度差异是否大于垂直角度门槛值(face_angle_v_limit),并且判断水平角度与0度角间的角度差异是否大于水平角度门槛值(face_angle_h_limit)。并且,处理单元20于垂直角度与90度角间的角度差异大于垂直角度门槛值,或是水平角度与0度角间的角度差异大于水平角度门槛值时,判断脸部影像倾斜。

值得一提的是,于一实施例中,处理单元20可从储存模块25中取得并执行下列程序码,以计算脸部影像的垂直角度与水平角度。

回到图8。于步骤s82后,处理单元20主要可依据多个定位点在脸部影像上生成一条虚拟的鼻梁线,并且取得鼻梁线上的最高点(fp_nose_eyes)及最低点(fp_nose_bottom)(步骤s84)。接着,处理单元20依据所述最高点及最低点判断鼻梁线是否呈现垂直(步骤s86),即,判断垂直角度(anglev)是否为90度。并且,于所述鼻梁线未呈现垂直时判断所述脸部影像为侧脸或斜脸(步骤s90)。

具体地,若于步骤s86中判断鼻梁线未呈现垂直,处理单元20进一步计算所述鼻梁线的角度(即,垂直角度)与90度角间的角度差异(math.abs(90–math.abs(face_anglev))),并且判断这个角度差异是否超过预设的垂直角度门槛值(face_angle_v_limit)(步骤s88)。

本实施例中,处理单元20于所述角度差异超过垂直角度门槛值时判断脸部影像的角度相对于智能镜设备2倾斜,即,所检测到的脸部影像为侧脸或斜脸(步骤s90)。并且,处理单元20于所述角度差异未超过垂直角度门槛值时判断所述鼻梁线呈现垂直(即,脸部影像的角度相对于智能镜设备2没有倾斜),并且接着执行步骤s92。

若判断所述鼻梁线呈现垂直,则处理单元20依据多个定位点在脸部影像上生成一条虚拟的眼角线,并且取得眼角线上的最右点(fp_right_eye_outer_corner)及最左点(fp_left_eye_outer_corner)(步骤s92)。接着,处理单元20依据所述最右点及最左点判断眼角线是否呈现水平(步骤s94),即,判断水平角度(angleh)是否为0度(或180度)。并且,于所述眼角线未呈现水平时判断所述脸部影像为侧脸(步骤s100)。

具体地,若于步骤s94中判断眼角线未呈现水平,处理单元20进一步计算所述眼角线的角度(即,水平角度)与0度角间的角度差异,并且判断这个角度差异是否超过预设的水平角度门槛值(face_angle_h_limit)(步骤s96)。本实施例中,处理单元20于所述角度差异超过水平角度门槛值时判断脸部影像的角度相对于智能镜设备2为倾斜,即,所检测到的脸部影像为侧脸(步骤s98)。

并且,于本实施例中,处理单元20于脸部影像上的鼻梁线呈现垂直、鼻梁线的角度与90度角间的角度差异未超过垂直角度门槛值、脸部影像上的眼角线呈现水平以及眼角线的角度与0度角间的角度差异未超过水平角度门槛值时,判断使用者的脸部影像与智能镜设备2间的相对角度适当(即,没有倾斜)(步骤s100)。

于一实施例中,所述垂直角度门槛值与水平角度门槛值为正负五度。换句话说,若脸部影像的垂直角度在85度至95度间,而水平角度在-5度至5度间,处理单元20都会认定脸部影像相对于智能镜设备2没有倾斜。

值得一提的是,于步骤s86中,处理单元20主要是取得鼻梁线上的最高点的x轴座标(facepointlist.get(csdk.fp_nose_eyes).x)以及最低点的x轴座标(facepointlist.get(csdk.fp_nose_bottom).x),并且于最高点的x轴座标与最低点的x轴座标相等时,判断所述鼻梁线呈现垂直(即,两者相减为零)。

另,于步骤s94中,处理单元20主要是取得眼角线上的最右点的y轴座标(facepointlist.get(csdk.fp_right_eye_outer_corner).y)以及最左点的y轴座标(facepointlist.get(csdk.fp_left_eye_outer_corner).y),并于最右点的y轴座标与最左点的y轴座标相等时,判断所述眼角线呈现水平(即,两者相减为零)。

如上所述,通过判断使用者的脸部影像与智能镜设备2间的相对角度,可以有效避免影像撷取模块22拍摄到角度歪斜的照片而影响到分析结果。

续请参阅图9至图13,分别为本发明的检测行为的示意图的第一具体实施例至第五具体实施例。

本发明中,智能镜设备2除了可在显示模块21上显示所述对焦框3外,还可通过使用者界面来显示所述第一指示、第二指示及第三指示。

如图9所示,当影像撷取模块22检测了使用者的脸部影像,而处理单元20判断脸部影像与智能镜设备2间的距离太远时,即通过使用者界面于显示模块21上显示所述第一指示,以提醒使用者往前移动。

如图10所示,当影像撷取模块22检测了使用者的脸部影像,而处理单元20判断脸部影像与智能镜设备2间的距离太近时,即通过使用者界面于显示模块21上显示所述第一指示,以提醒使用者往后移动。

如图11所示,当影像撷取模块22检测了使用者的脸部影像,而处理单元20判断脸部影像的角度倾斜时,即通过使用者界面于显示模块21上显示所述第三指示,以提醒使用者直视前方且保持头部正向不倾斜。

如图12所示,当影像撷取模块22检测了使用者的脸部影像,而处理单元20判断脸部影像与智能镜设备2间的距离落在门槛范围、脸部影像的轮廓未超出智能镜设备2的预设边界且脸部影像没有倾斜时,即可自动控制影像撷取模块22拍摄脸部影像的照片。

并且,如图13所示,当影像撷取模块22拍摄了脸部影像的照片后,处理单元20可进一步将照片显示于显示模块21上,以令使用者藉由输入模块23来确认是否要采用这张照片来执行所述肌肤分析程序。

通过本发明的拍摄方法,可以有效避免拍摄不符合肌肤分析程序的需求的照片,进而提高肌肤分析程序的分析结果的准确率。

当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1