精华内容
下载资源
问答
  • 人脸活体检测12个方法
  • Zeusee配合型人脸活体检测 在移动端进行人脸识别应用开发的时候,经常存在用户会使用翻拍照片录制录像等来欺骗人脸识别系统,因此活体检测是人脸识别和人脸验证中非常重要的一个部分,同时目前开源活体检测代码的...
  • 针对这一问题,提出一种基于深度学习人脸活体检测算法,分析了真实人脸和欺诈人脸之间的区别,将真实人脸和照片进行数据去中心化、zca白化去噪声、随机旋转等处理;同时,利用卷积神经网络对照片的面部特征进行提取...
  • 人脸活体检测是为了提高人脸识别系统安全性而需要重点研究的问题.本文首先从人脸活体检测的问题出发, 分个体、类内、类间三个层面对人脸活体检测存在的困难与挑战进行了阐述分析.接下来, 本文以算法使用的分类线索为...
  • 人脸活体检测数据

    2019-11-14 15:26:38
    人脸活体检测丨丰巢“刷脸取件”被小学生破解背后的秘密 前些日,#小学生发现刷脸取件bug#的话题引发关注! 浙江嘉兴上外秀洲外国语学校402班科学小队向媒体爆料:他们在一次课外科学实验中发现,只要用一张打印照片...

    人脸活体检测数据


    目前,主流的活体检测技术基于摄像头类型可分为:基于2D人脸活体检测和基于3D人脸活体检测。两种算法目前都有实际的案例。

    从识别精度出发,3D人脸活体检测远胜于2D人脸活体检测,因为3D图像的深度通道可以获取2D图像中没有的距离信息,对照片欺骗等欺骗方式具有更好的鉴别能力。目前,支付宝及部分银行已经开始商用基于3D结构光的人脸活体检测技术,但是3D设备成本较高,目前除了少数高端手机机型及专用3D设备,大多数电子设备的摄像头都没有配备3D模组。因此,2D人脸活体检测技术精度仍有巨大的实用价值。

    基于2D人脸的活体检测算法精度虽然不及3D,但是可以通过多种人脸行为组合的方式来提高识别精度。例如某银行的远程身份认证系统要求人连续做出眨眼、转头、抬头低头等动作来确认真人身份,这种动作组合的方式可以识别照片欺骗等欺骗行为(因为照片不会做动作)。从精度评估来看,假设算法对人脸动作的误识别率是5%,那么连续做两个动作都被误识别的概率就会降为5%*5%=0.0025,连续三个动作都被误识别精度会降为0.000125。通过动作次数的增加,误识别率会指数级降低(不过会影响用户体验),同样可以达到商用级精度。

    【1066人活体检测数据】是面向目前的2D人脸活体检测算法的。该数据集采集了黄种人、黑人和白人共1066人的活体检测数据,涵盖了活体检测算法中要求的绝大多数数据形式,包括原始人脸动作(真实人脸),手机、pad翻拍人脸动作(人脸动作对抗样本),人脸照片欺骗及面具欺骗(照片对抗样本)以及唇语等。每个被采集者总共采集435段原始视频+63张图像数据。
    数据规模:1,066人
    人员分布:黄种人644人、白种人221人、黑种人201人,男544人,女522人,1018岁88人,1945岁808人,46~60岁 137人,60岁以上33人
    采集环境:室内785人,室外281人
    采集多样性:不同姿态、不同表情、不同光照、不同场景、不同时段、不同距离
    采集设备:苹果手机、安卓手机、iPad
    采集时间:白天988人、夜晚78人(室外)
    图像参数:视频格式为.mov,图像格式为.JPG
    准确率:按照采集动作准确度为准,精度超过97%;动作命名准确率、唇语命名准确率97%以上
    数据获取:https://www.datatang.com/dataset/info/image/971

    展开全文
  • 人脸活体检测 一、简介 ​ 随着人脸识别、人脸解锁等技术在金融、门禁、移动设备等日常生活中的广泛应用,人脸防伪/活体检测(Face Anti-Spoofing)技术在近年来得到了越来越多的关注。设想一下,假设你的Face ...

    人脸活体检测

    一、简介

    ​ 随着人脸识别、人脸解锁等技术在金融、门禁、移动设备等日常生活中的广泛应用,人脸防伪/活体检测(Face Anti-Spoofing)技术在近年来得到了越来越多的关注。设想一下,假设你的Face Verification算法做的再漂亮,而Face Anti-Spoofing做的很烂,如果这个时候恰恰有某位同学拿着马云脸的视频去刷了支付宝,那…

    	Fig 1. 马云演示支付宝刷脸支付

    人脸验证(Face Verification):意思就是说,给定两张图,算法要判断出这两张图是不是同一个人,这是近年来一个非常热门的研究方向,也产生了一大批模型和 Loss Function。

    人脸防伪(Face Anti-Spoofing):意思就是说,你刷脸的时候,算法要判别这张脸是不是真人活体脸,而对于合成的、或者他人照片来攻击算法的,应该予以拒绝。

    PA(Presentation Attacks)是常用的攻击方式,主要包含print attack(即打印出人脸照片)、replay attack(播放视频)、mask attack(带人脸假体面具等)。

    活体检测的目的就是要识别出这些假的人脸,让不法分子无法得逞。接下来,我们就为大家介绍一下,人脸识别系统面临哪些攻击手段,活体检测又有哪些应对之策。

    二、活体检测方式

    • 照片攻击与动作活体

    最简单的攻击方式相信大家都能想到,用照片呗。现在大家都喜欢玩社交媒体,经常往朋友圈和微博上传照片,搞到一张别人的照片简直轻而易举。所以,照片自然是活体检测首要的防范对象咯。对付照片的方式,大家也很容易想到。照片总是死的,不能做出眨眼张嘴转头这些动作。那好,在活体检测这一关,我就给你下达几个动作的指令,让你做动作给我看,这就是交互式动作活体检测。

    • 升级版照片攻击

    有了动作活体这个东西,用静止照片来攻击就不行了。于是攻击者一拍脑袋,就想出了经过“改进”的攻击方式。他先是把另外一个人的照片打印出来,跟真人一般大小,还挺清晰的,反正花不了几个钱。你不是要让我眨眼张嘴吗?照片本身不会眨眼张嘴,可是我本人会啊。于是他就把照片在眼睛和嘴巴那块抠个洞,然后把照片贴在脸上,他自己的眼睛和嘴巴就露出来了。你让他眨眼,他就眨眼,让他张嘴,他就张嘴。对此,我们只能说,too naive too simple,因为抠眼和抠嘴后的造作痕迹实在太明显了,对我们的抠眼抠嘴检测算法形成不了太大的威胁。最后说下转头,攻击者往往把照片贴在自己脸上,或者在那揉来揉去,想模拟出真实的转头效果。可是,他们不知道,这种伪造的转头动作,人脸上各部位的运动情况实在与真人相去甚远,很容易被我们的转头检测算法识别出来。

    • 视频回放攻击

    到这里,攻击者还是不肯作罢,又心生一计:不就是几个动作吗?我把那人的动作录成视频,再拿来播放不就得了。其实啊,到这里我们可以明显看到,攻击难度已经上升一个级别了。为什么呢?你要搞到另外一个人的视频,还得包含很规矩的这几个动作,本身就不那么容易。可是我们不能存有侥幸心理啊。没关系,办法总是有的。你把视频搞来了,总得找个有屏幕的东西播放啊。这样一来,就漏马脚了。你只要仔细看看用屏幕播放视频,然后再经过摄像头成像的画面,再看看真人在摄像头面前成像的画面,就会发现,二者其实很不一样啊。用普通PC屏幕播放的效果就不说了,一堆纹路,我们称之为摩尔纹。用pad或者手机的高清屏播放的效果好一些,可是也有很多不一样,比如反光、倒影,最关键是画面质量总是模糊一些,失真度明显高一些。所以呢,我们根据这些线索搞了对应的算法,把视频攻击也能防得很好。回过头来说说央视315晚会上演示的合成人脸,要靠这种方式攻击人脸识别系统,也只能用屏幕来播放,只是把合成的视频拿出来展示一下,就说容易攻破,实在有违实事求是的精神。

    • 立体面具攻击

    照片和视频回放攻击都是把人脸图像投射到一个平面上,还一种攻击方式就是做一个和真人比较相似的立体面具。到这里,攻击难度又上升了一个级别。面具有很多种,最普通的是塑料或者硬纸做成的面具,这种面具虽然成本低廉,但材质相似度极低,用普通纹理特征就可以识别出来。另外,还有用硅胶、乳胶以及3D打印的的立体面具,这类面具的表观和皮肤更加接近,但它们的材料表面反射率和真实人脸还是不同的,因此在成像上仍然有差别,这种差别是可以用最先进的机器学习算法学习到,很难达到以假乱真的程度。

    • 静默活体

    动作活体检测的方式具有很高的安全性,但另一方面,对用户来说,由于要配合着做几个动作,因此体验不是非常好。为此,我们又发明了一种新的活体检测方式,不需要用户做任何动作,只需要自然正对摄像头三四秒钟,就可以完成检测了。也许你会问,如果不做动作,岂不是拿张普通照片就可以攻破了?非也。虽然没有刻意做动作,但真实的人脸并不是绝对静止的,总有一些微表情存在,比如眼皮和眼球的律动、眨眼、嘴唇及其周边面颊的伸缩等,利用这些特征,我们完全可以防住照片攻击。至于视频回放攻击和立体面具攻击,防范的原理和之前介绍的一样。

    • 红外活体

    其实啊,上面这些还不是最厉害的。在有些应用场景,比如ATM机上,我们可以安装红外摄像头,利用红外图片,我们可以实现更好的防攻效果。我们知道,不管是可见光还是红外光,其本本质都是电磁波。我们最终看到的图像长什么样,与材质表面的反射特性有关。真实的人脸和纸片、屏幕、立体面具等攻击媒介的反射特性都是不同的,所以成像也不同,而这种差异在红外波反射方面会更加明显,比如说,一块屏幕在红外成像的画面里,就只有白花花的一片,连人脸都没了,攻击完全不可能得逞。

    到这里,人脸识别系统常见的攻击手段以及活体检测方式就介绍得差不多了,相信你已经对人脸识别系统的攻防有了一个比较全面的了解。事实上,研究人员对各种人脸识别的攻击方式都有预防,攻击者绝不可能轻易攻破我们的系统。最后,我们要警告那些居心不良、妄图钻技术漏洞的人,我们不但有完备的防攻击系统,也会对攻击行为存照留证,法网恢恢,疏而不漏,天道昭昭,多行不义必自毙,请君自重!

    参考:
    https://zhuanlan.zhihu.com/p/26112838
    https://zhuanlan.zhihu.com/p/38183691

    更多信息请关注公众号:
    img

    展开全文
  • 基于Gabor小波和动态LBP的人脸活体检测.pdf
  • 人脸活体检测、人脸识别 Demo 可快速高效实现人脸识别、活体检测 支持张嘴 摇头 检测, 自动拍摄照片.
  • 用Python快速实现实时人脸活体检测

    千次阅读 2020-06-27 16:23:51
    丰巢智能快递柜是目前中国市场上占有...常规的人脸识别算法在检测和识别人脸方面是非常有效,但是它们无法区分真实的人脸和照片的人脸。为解决类似问题,类似于苹果的FaceID的3D检测器应运而生,如果我们没有3D探测器该

    丰巢智能快递柜是目前中国市场上占有率最高的快递柜,在各城市居民小区中被广泛安装使用。还记得丰巢推出的“刷脸”取件功能却被一群小学生简单破解的事情吧,几位小学生在一次课外科学实验中发现:只要用一张打印照片就能代替真人刷脸,骗过小区里的丰巢智能柜,取出父母的包裹!

    在现实场景中大多数人脸识别算法都会受到类似上述例子的攻击,找到算法的漏洞。常规的人脸识别算法在检测和识别人脸方面是非常有效,但是它们无法区分真实的人脸和照片的人脸。为解决类似问题,类似于苹果的FaceID的3D检测器应运而生,如果我们没有3D探测器该怎么办呢?

    为解决上述问题,小编实现一种基于眨眼检测的人脸活体检测算法,该算法可以通过摄像头实时工作,来区分是正常人脸还是照片。

    算法原理具体步骤如下:

    • 在网络摄像头生成的每个帧中检测人脸。
    • 对于每个检测到的脸,检测眼睛。
    • 对于每个检测到的眼睛,检测眼睛是否睁开或关闭。
    • 如果在某个时候检测到眼睛是睁开的,然后是闭着的,然后是睁开的,我们就断定此人已经眨了眼睛,并且程序显示他的名字。

    在人脸的检测方面,需要安装face_recognition库。人脸定位方法可以用两种方法来检测人脸:方向梯度直方图(HoG)和卷积神经网络(CNN),我们选择选择了HoG方法。

    face_encodings函数是一个预先训练的卷积神经网络,compare_faces计算两个嵌入向量之间的距离。它将允许算法识别从摄像头帧中提取的人脸,并将其嵌入向量与我们编码的人脸进行比较,距离最近的向量对应于同一个人。

    1. 已知人脸数据集编码

    我为每个人挑选了大约10张照片。下面是处理和编码已知人脸数据库的代码。

    def process_and_encode(images):
        known_encodings = []
        known_names = []
        print("[LOG] Encoding dataset ...")
        for image_path in tqdm(images):
            # 加载图片
            image = cv2.imread(image_path)
            # 将其从BGR转换为RGB
            image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
            # 检测图像中的脸并获取其位置(方框坐标)
            boxes = face_recognition.face_locations(image, model='hog')
            # 将人脸编码为128维嵌入向量
            encoding = face_recognition.face_encodings(image, boxes)
            # 人物名称是图像来源文件夹的名称
            name = image_path.split(os.path.sep)[-2]
            if len(encoding) > 0 : 
                known_encodings.append(encoding[0])
                known_names.append(name)
        return {"encodings": known_encodings, "names": known_names}
    

    现在我们知道了每个想识别的人的编码,下面我们需要区分一张人脸照片和一张活人的脸。

    2.人脸活体检测

    我们的目标是在某个点上检测出一个睁闭的睁眼模式。我训练了一个卷积神经网络来分类眼睛是闭着的还是睁着的,所选择的模型是LeNet-5,它已经在Closed Eyes In The Wild (CEW)数据集上进行了训练,它由大约4800张24x24大小的眼睛图像组成。
    Closed Eyes In The Wild (CEW)数据集地址:

    http://parnec.nuaa.edu.cn/xtan/data/ClosedEyeDatabases.html

    from keras.models import Sequential
    from keras.layers import Conv2D
    from keras.layers import AveragePooling2D
    from keras.layers import Flatten
    from keras.layers import Dense
    from keras.preprocessing.image import ImageDataGenerator
    IMG_SIZE = 24
    def train(train_generator, val_generator):
    STEP_SIZE_TRAIN=train_generator.n//train_generator.batch_size
    STEP_SIZE_VALID=val_generator.n//val_generator.batch_size
    model = Sequential()
    model.add(Conv2D(filters=6, kernel_size=(3, 3), activation='relu', input_shape=(IMG_SIZE,IMG_SIZE,1)))
    model.add(AveragePooling2D())
    model.add(Conv2D(filters=16, kernel_size=(3, 3), activation='relu'))
    model.add(AveragePooling2D())
    model.add(Flatten())
    model.add(Dense(units=120, activation='relu'))
    model.add(Dense(units=84, activation='relu'))
    model.add(Dense(units=1, activation = 'sigmoid'))
    
    model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
      print('[LOG] Training CNN')
    model.fit_generator(generator=train_generator,
                        steps_per_epoch=STEP_SIZE_TRAIN,
                        validation_data=val_generator,
                        validation_steps=STEP_SIZE_VALID,
                        epochs=20
    )
      return model
    

    每次我们检测到一只眼睛,我们就用我们的模型来预测它的状态,并跟踪每个人的眼睛状态,因此,检测眨眼变得非常容易,它试图在眼睛状态历史中找到一个闭眼-睁眼-闭眼的过程。

    def isBlinking(history, maxFrames):
        for i in range(maxFrames):
            pattern = '1' + '0'*(i+1) + '1'
            if pattern in history:
                return True
        return False
    
    3.活体的人脸识别

    我们几乎拥有了建立“真实”人脸识别算法的所有要素,我们只需要一种实时检测人脸和眼睛的方法。建议你阅读openCV的这篇强大的文章。

    https://docs.opencv.org/3.4.3/d7/d8b/tutorial_py_face_detection.html

    def detect_and_display(model, video_capture, face_detector, open_eyes_detector, left_eye_detector, right_eye_detector, data, eyes_detected):
            frame = video_capture.read()
            # 调整框架大小
            frame = cv2.resize(frame, (0, 0), fx=0.6, fy=0.6)
    
            gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
            rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
    
            # 检测人脸
            faces = face_detector.detectMultiScale(
                gray,
                scaleFactor=1.2,
                minNeighbors=5,
                minSize=(50, 50),
                flags=cv2.CASCADE_SCALE_IMAGE
            )
    
            # 对于每个检测到的脸
            for (x,y,w,h) in faces:
                # 将人脸编码为128维嵌入向量
                encoding = face_recognition.face_encodings(rgb, [(y, x+w, y+h, x)])[0]
    
                # 将向量与所有已知的人脸编码进行比较
                matches = face_recognition.compare_faces(data["encodings"], encoding)
    
                # 目前我们不知道该人的名字
                name = "Unknown"
    
                # 如果至少有一次匹配:
                if True in matches:
                    matchedIdxs = [i for (i, b) in enumerate(matches) if b]
                    counts = {}
                    for i in matchedIdxs:
                        name = data["names"][i]
                        counts[name] = counts.get(name, 0) + 1
    
                    # 匹配次数最多的已知编码对应于检测到的人脸名称
                    name = max(counts, key=counts.get)
    
                face = frame[y:y+h,x:x+w]
                gray_face = gray[y:y+h,x:x+w]
    
                eyes = []
    
                # 眼睛检测
                # 首先检查眼睛是否睁开(考虑到眼镜)
                open_eyes_glasses = open_eyes_detector.detectMultiScale(
                    gray_face,
                    scaleFactor=1.1,
                    minNeighbors=5,
                    minSize=(30, 30),
                    flags = cv2.CASCADE_SCALE_IMAGE
                )
                # 如果open_eyes_glasses检测到眼睛,则眼睛睁开 
                if len(open_eyes_glasses) == 2:
                    eyes_detected[name]+='1'
                    for (ex,ey,ew,eh) in open_eyes_glasses:
                        cv2.rectangle(face,(ex,ey),(ex+ew,ey+eh),(0,255,0),2)
    
                # 否则尝试使用left和right_eye_detector检测眼睛
                # 以检测到睁开和闭合的眼睛                
                else:
                    # 将脸分成左右两边
                    left_face = frame[y:y+h, x+int(w/2):x+w]
                    left_face_gray = gray[y:y+h, x+int(w/2):x+w]
    
                    right_face = frame[y:y+h, x:x+int(w/2)]
                    right_face_gray = gray[y:y+h, x:x+int(w/2)]
    
                    # 检测左眼
                    left_eye = left_eye_detector.detectMultiScale(
                        left_face_gray,
                        scaleFactor=1.1,
                        minNeighbors=5,
                        minSize=(30, 30),
                        flags = cv2.CASCADE_SCALE_IMAGE
                    )
    
                    # 检测右眼
                    right_eye = right_eye_detector.detectMultiScale(
                        right_face_gray,
                        scaleFactor=1.1,
                        minNeighbors=5,
                        minSize=(30, 30),
                        flags = cv2.CASCADE_SCALE_IMAGE
                    )
    
                    eye_status = '1' # we suppose the eyes are open
    
                    # 检查每只眼睛是否闭合。
                    # 如果有人闭着眼睛,我们得出结论是闭着眼睛
                    for (ex,ey,ew,eh) in right_eye:
                        color = (0,255,0)
                        pred = predict(right_face[ey:ey+eh,ex:ex+ew],model)
                        if pred == 'closed':
                            eye_status='0'
                            color = (0,0,255)
                        cv2.rectangle(right_face,(ex,ey),(ex+ew,ey+eh),color,2)
                    for (ex,ey,ew,eh) in left_eye:
                        color = (0,255,0)
                        pred = predict(left_face[ey:ey+eh,ex:ex+ew],model)
                        if pred == 'closed':
                            eye_status='0'
                            color = (0,0,255)
                        cv2.rectangle(left_face,(ex,ey),(ex+ew,ey+eh),color,2)
                    eyes_detected[name] += eye_status
    
                # 每次,我们都会检查该人是否眨眼
                # 如果是,我们显示其名字
                if isBlinking(eyes_detected[name],3):
                    cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
                    # 显示名字
                    y = y - 15 if y - 15 > 15 else y + 15
                    cv2.putText(frame, name, (x, y), cv2.FONT_HERSHEY_SIMPLEX,0.75, (0, 255, 0), 2)
    
            return frame
    

    上面的功能是用于检测和识别真实人脸的代码,参数说明如下:

    • model:我们的睁眼/闭眼分类器
    • video_capture:流视频
    • face_detector:Haar级联的人脸分类器。我使用了haarcascade_frontalface_alt.xml
    • open_eyes_detector:Haar级联睁眼分类器。我使用了haarcascade_eye_tree_eyeglasses.xml
    • left_eye_detector:Haar级联的左眼分类器。我使用了haarcascade_lefteye_2splits.xml,它可以检测睁眼或闭眼。
    • right_eye_detector:Haar级联的右眼分类器。我使用了haarcascade_righteye_2splits.xml,它可以检测睁眼或闭眼。
    • data:已知编码和已知名称的字典
    • eyes_detected:包含每个名称的眼睛状态历史记录的字典。
    参考文献

    https://docs.opencv.org/3.4.3/d7/d8b/tutorial_py_face_detection.html
    https://www.pyimagesearch.com/2018/06/18/face-recognition-with-opencv-python-and-deep-learning

    技术交流

    欢迎转载、收藏本文,码字不易,有所收获点赞支持一下!

    为方便进行学习交流,本号开通了技术交流群,添加方式如下:

    直接添加小助手微信号:pythoner666,备注:CSDN+python,或者按照如下方式添加均可!
    在这里插入图片描述

    展开全文
  • 现有人脸活体检测方法多为在同一数据集内进行训练和测试,当应用在跨数据集场景中时效果并不理想。针对这一问题,提出了利用HOG等算法对上下文环境中的线索信息进行提取,提取出来的特征送入单类支持向量机进行训练...
  • 人脸活体检测:活体检测数据集

    千次阅读 热门讨论 2019-02-17 15:33:33
    此篇博客主要整理人脸活体检测的数据集。 目前人脸活体攻击的方式主要有:照片打印、视频回放攻击、3D人脸面具等。因此数据集也是根据这些攻击方式制作的。 一共整理了11个活体检测的数据集。此外还整理了6个红外...

    此篇博客主要整理人脸活体检测的数据集。

    目前人脸活体攻击的方式主要有:照片打印、视频回放攻击、3D人脸面具等。因此数据集也是根据这些攻击方式制作的。

    一共整理了11个活体检测的数据集。此外还整理了6个红外人脸数据集。

    活体检测数据集

    红外数据:

    IDIAP:msspoof: Multispectral-Spoof Database

    1、NUAA

    http://parnec.nuaa.edu.cn/xtan/data/nuaaimposterdb.html

    打印照片攻击,15个人,三次拍摄,每次地点照明各不相同。共12614张图像。

    共有5105个真图像和7509个攻击图像,训练3491张,测试9123张

    索引图像的文件名格式为:ID_galss_pos_session_picNo,

    例如0010_01_05_03_115.jpg为:图片0010编号,没戴眼镜,关窗开灯,03会议室,第115图

    ID:0001~0016图片编号

    眼镜:00〜01

    00:戴眼镜
    01:没戴眼镜
    Pos:01~08图像的位置和光照条件

    01:上下旋转
    02:上下扭曲
    03:左右旋转
    04:左右扭曲
    05:关闭窗打开灯
    07:开窗开灯
    08:开窗关灯
    08:静止
    会议:01〜03

    picNo:图片编号

    我们还提供左眼(x,y),右眼(x,y)和鼻子(x,y)的坐标,所有这些都由面部检测到。

    大小:300M左右(原图)、裁剪后70M左右

    2、IDIAP:msspoof: Multispectral-Spoof Database

    https://www.idiap.ch/dataset/msspoof

    自然光和近红外拍色,分辨率1280x1024,在NIR中记录图像时,相机上安装了800nm的近红外滤光片。

    紫外和近红外图像,包含了21个人体。对于每个人,在7种情境(1走廊6办公室)下,各5张VIS,5张NIR,共(5+5)*7=70张。

    对每个人,各选3张VIS和3张NIR进行黑/白打印,并在3种光照条件下各进行4次攻击,共6*2*4*3=144张。

    大小为1.9G

    注意!需要签名申请

    3、IDIAP:The Replay-Attack Database

    https://www.idiap.ch/dataset/replayattack

    1300个图片和视频攻击,50个人,不同光照条件下

    大小3G

    注意!需要签名申请

    4、IDIAP:Replay-Mobile

    https://www.idiap.ch/dataset/replay-mobile

    共1190个照片和视频攻击,40个人,5种不同光照条件。

    拍摄设备: an iPad Mini2 (running iOS) and a LG-G4 smartphone (running Android)

    720x1280,25fps,大小15G

    注意!需要签名申请

    5、IDIAP:3DMAD

    http://www.idiap.ch/dataset/3dmad/

    3D mask数据集,共76500帧,17个人,

    包含深度图 (640x480 pixels – 1x11 bits)、RGB图(640x480 pixels – 3x8 bits)、手工标记眼睛位置

    大小:39G

    注意!需要签名申请

    6、CASIA FASD

    http://www.cbsr.ia.ac.cn/china/index CH.asp

    http://www.cbsr.ia.ac.cn/china/Databases CH.asp

    http://www.cbsr.ia.ac.cn/english/FaceAntiSpoofDatabases.asp

    目前链接已失效

    50个人,3种情境

    7、MSU MFSD

    http://biometrics.cse.msu.edu/Publications/Databases/MSUMobileFaceSpoofing/

    280个图片和视频攻击,35个人,

    注意!需要签名申请

    8、MSU USSAD

    Unconstrained Smartphone Spoof Attack Database

    http://biometrics.cse.msu.edu/Publications/Databases/MSU_USSA/

    针对智能手机

    9000张图像:1000张真的,8000张攻击,共1000个人

    注意!需要签名申请

    9、The Oulu-NPU face anti-spoofing database

    https://sites.google.com/site/oulunpudatabase/

    共4950个视频,6种手机机型,3种光照环境和背景,两种打印方式和两种回放方式,共55个人

    注意!需要签名申请

    10、Spoof in the Wild (SiW) Face Anti-spoofing Database

    http://cvlab.cse.msu.edu/spoof-in-the-wild-siw-face-anti-spoofing-database.html

    165个人,对于每个人,有8个真的,20个攻击,共4478个视频,4种情境(距离、姿势、光照、表情)

    注意!需要签名申请

    11、3D mask数据集

    A 3D Mask Face Anti-spoofing Database with Real World Variations

    https://www.cv-foundation.org/openaccess/content_cvpr_2016_workshops/w28/papers/Liu_A_3D_Mask_CVPR_2016_paper.pdf

    12、 论文截图

    图1出自论文Face Spoof Detection with Image Distortion Analysis

    图2出自论文OULU-NPU: A mobile face presentation attack database with real-world variations

    其他红外人脸数据集

    1、 CASIA NIR Database

    http://www.cbsr.ia.ac.cn/english/NIR_face Databases.asp

    链接失效

    197人,共3940张图片,都是近红外人脸图,大小为640x480,

    注意!需要签名申请

    2、HFB Face Database

    http://www.cbsr.ia.ac.cn/english/HFB Databases.asp

    链接失效

    heterogeneous face biometrics (HFB)异质面部生物识别

    所谓异质,是指不同类型的图像,主要是可见光下的彩色图/灰度图Visual (VIS),近红外图near infrared (NIR),热感红外图 thermal infrared (TIR),3D深度图。

    普通的人脸识别一般是用同种类型的图像做比对,而异质面部生物识别,卤煮理解就是给你一张可见光面部图像,一张近红外面部图像,依然可以比对出是否视同一张脸。

    这个数据集包含 可见光图像visual (VIS), 近红外图像 near infrared (NIR) 和3D人脸图像 three-dimensional (3D) face images。

    100人(57男,43女),每人4VIS(640x480)+4NIR(640x480)+2or1 3-Dfaces

    注意!需要签名申请

    3、 CASIA NIR-VIS 2.0 Database

    http://www.cbsr.ia.ac.cn/english/NIR-VIS-2.0-Database.html

    链接失效

    这个可以说是2的加强版,the NIR-VIS 2.0 database consists of 725 subjects in total. There are 1-22 VIS and 5-50 NIR face images per subject. Figure 1 shows some face images of a subject in the database.

    注意!需要签名申请

    4、PolyU NIR face DataBase香港理工大学近红外人脸数据集

    http://www4.comp.polyu.edu.hk/~biometrics/polyudb_face.htm

    收集了350人,每人大概100张近红外图片,包含不同的姿态,表情,时间,尺度等。

    共计3500张图片,给出了每张图片的人脸框位置信息。

    图片分辨率768*576

    注意!需要签名申请

    5、IIT Delhi Near IR Face Database 黑暗场景下近红外人脸数据集

    http://www4.comp.polyu.edu.hk/~csajaykr/IITD/FaceIR.htm

    这是IIT Delhi, New Delhi, India机构在2007年采集的黑暗场景下近红外图像,全部是IIT Delhi的学生或者工作人员,基本都是印度人。

    采集了17到50岁之间的人,共115人,共计574张图片,图片分辨率为768 x 576,每人有2~6张图片。

    注意!需要签名申请

    6、USTC-NVIE Database[(natural visible and infrared facial expression database)]

    http://nvie.ustc.edu.cn/

    http://www.face-rec.org/databases/

    由中国科学技术大学安徽省计算与通信软件重点实验室建成并发布,是目前世界较为全面的人脸表情数据库,其中包含大约100名被试三种光照条件下六种表情的可见图像以及长波红外图像,另外表情又分为自发表情与人为表情,人为表情又分为戴眼镜与不戴眼镜两种情况。为进行(自发+人为)表情识别与情绪分析推理实验提供了充足的实验样本与数据


    --------------------- 
    作者:夏洛的网 
    来源:CSDN 
    原文:https://blog.csdn.net/liuxiao214/article/details/85214154 
    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • 人脸活体检测简介

    万次阅读 2018-12-31 20:39:37
    什么是活体检测,是指计算机判别检测的人脸是真实的人脸,还是伪造的人脸攻击,比如合法用户图片、提前拍摄的视频等。传统方法将其视为一个“活体”VS“假体”的二分类问题,当然也可看成多分类问题,如真人、图片...
  • 你在互联网上找到的大多数人脸识别算法和研究论文都会遭受照片攻击。这些方法在检测和识别来自网络摄像头的图像、视频和视频流中的人脸方面是非常有效,但是他们无法区分现实生活中的面孔和照片上的面...
  • 从零玩转RGB人脸活体检测 前言 作者个人博客: 点击前往 本期教程人脸识别第三方平台为虹软科技,本文章讲解的是人脸识别RGB活体追踪技术,免费的功能很多可以自行搭配,希望在你看完本章课程有所收获。 ArcFace ...
  • 本文原载自知乎,已获作者授权转载,请勿二次转载。https://zhuanlan.zhihu.com/p/114313640今年活体检测(FAS)比较火热,这块的文章投稿和录用量剧增,A...
  • 人脸识别中活体检测算法综述:https://blog.csdn.net/SIGAI_CSDN/article/details/82772813 知乎上的资料:https://zhuanlan.zhihu.com/p/25401788 代码资料: CVPR 2019 活体检测比赛: ...
  • 在分析了照片人脸成像后的非线性变化特点后, 从人脸边缘信息的变化特征着手设计了一种基于图像处理的人脸活体检测新方法。用改进的梯度方向直方图描述人脸主要轮廓, 同时结合正、负样本的统计特征训练支持向量机分类...
  • 如何避免人脸识别系统被攻击——应用人脸活体检测技术   和指纹、虹膜等生物特征相比,人脸特征是最容易获取的。目前,人脸识别系统逐渐开始商用,并向着自动化、无人监督化的趋势发展,然而目前人脸识别技术能...
  • C++ dlib红外深度人脸识别活体检测程序,最近在作这方面的东西,找了很久的资料,看了很多东西,这个是调试通过了的。需要加入dlib,opencv才能运行。希望对大家用用。红外双目
  • 【活体检测】人脸活体检测、红外人脸数据集整理

    万次阅读 热门讨论 2018-12-22 17:52:34
    此篇博客主要整理人脸活体检测的数据集。 目前人脸活体攻击的方式主要有:照片打印、视频回放攻击、3D人脸面具等。因此数据集也是根据这些攻击方式制作的。 一共整理了11个活体检测的数据集。此外还整理了6个红外...
  • 提取图像的LBP特征使用SVM进行训练的人脸活体检测器,可以有效防御纸张、照片等非活体攻击。
  • 多帧人脸活体检测.pdf

    2019-03-19 15:32:04
    Face anti-spoofing is significant to the security of face recognition systems. Previous works on depth super- vised learning have proved the effectiveness for face anti- spoofing. Nevertheless, they ...
  • 然而人脸很容易用视频或照片等进行复制,人脸活体检测是人脸识别能否有效应用的前提,目前对活体检测方法的研究有很多。大多数活体检测方法是研究性质的,它们大多基于特征提取与训练的方式,这类方法的准确性是不可...
  • 中安人脸活体检测系统V4.0 一、活体检测技术背景:为提高系统安全性,人脸活体检测技术基于人类自然的眨眼、张嘴等动作,精准判断用户的真实性,有效鉴别照片、视频、模型等欺骗行为。二、产品描述中安人脸活体检测...
  • 基于动态纹理特征提取的活体检测方法,Face liveness detection using dynamic texture
  • 简介人脸活体检测技术及检测方法.docx
  • 近红外人脸定位与活体检测 通过深度相机的红外图进行人脸位置定位,传给深度图进行活体检测 注:利用rgb传来的位置对应到深度图上偏差过大,直接利用深度相机产生的红外图像进行人脸位置的确定更加精准。 运行 ...
  • 针对人脸识别系统中出现的通过照片或视频“欺诈”解锁问题,提出一种活体检测方法,通过随机指令判断被检测对象是否为真人。利用HOG特征和随机森林算法对摄像头采集的图像进行人脸检测,预测脸部68个特征点位置,把...
  • [人脸活体检测] 论文:Learn Convolutional Neural Network for Face Anti-Spoofing 论文简介 这是最早期CNN用于活体检测的文章,在此之前都是手动提取特征,文章采用了人脸检测预处理,多尺度人脸增强,时域人脸...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,608
精华内容 1,443
关键字:

人脸活体检测