All Projects → puke3615 → VideoHunter

puke3615 / VideoHunter

Licence: other
基于深度学习的视频人脸检测

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to VideoHunter

DroNet
DroNet: Efficient convolutional neural network detector for Real-Time UAV applications
Stars: ✭ 54 (+74.19%)
Mutual labels:  yolo
yolo v1 pytorch
PyTorch implementation of YOLO-v1 including training
Stars: ✭ 89 (+187.1%)
Mutual labels:  yolo
etiketai
Etiketai is an online tool designed to label images, useful for training AI models
Stars: ✭ 63 (+103.23%)
Mutual labels:  yolo
YOLO.jl
YOLO Object Detection in Julia
Stars: ✭ 41 (+32.26%)
Mutual labels:  yolo
WebsiteYOLO
The back-end for the YOLOv3 object detector running as a webapp
Stars: ✭ 26 (-16.13%)
Mutual labels:  yolo
datumaro
Dataset Management Framework, a Python library and a CLI tool to build, analyze and manage Computer Vision datasets.
Stars: ✭ 274 (+783.87%)
Mutual labels:  yolo
STUDENT-ATTENDANCE-USING-FACIAL-RECOGNITION-SYSTEM-OPENCV
No description or website provided.
Stars: ✭ 46 (+48.39%)
Mutual labels:  facedetection
YOLOv4MLNet
Use the YOLO v4 and v5 (ONNX) models for object detection in C# using ML.Net
Stars: ✭ 61 (+96.77%)
Mutual labels:  yolo
darknet.js
A NodeJS wrapper of pjreddie's darknet / yolo.
Stars: ✭ 61 (+96.77%)
Mutual labels:  yolo
make-your-yolov5 dataset
💥Make your yolov5 dataset by using labelimg.I hope my work can help you make your yolov5 datasets more quickly.
Stars: ✭ 60 (+93.55%)
Mutual labels:  yolo
pytorch yolov1
Yolov1 pytorch implement
Stars: ✭ 49 (+58.06%)
Mutual labels:  yolo
DL.EyeSight
Mainly use SSD, YOLO and other models to solve the target detection problem in image and video !
Stars: ✭ 48 (+54.84%)
Mutual labels:  yolo
ScaledYOLOv4
Scaled-YOLOv4: Scaling Cross Stage Partial Network
Stars: ✭ 1,944 (+6170.97%)
Mutual labels:  yolo
tfjs-yolo
YOLO v3 and Tiny YOLO v1, v2, v3 with Tensorflow.js
Stars: ✭ 108 (+248.39%)
Mutual labels:  yolo
vrpdr
Deep Learning Applied To Vehicle Registration Plate Detection and Recognition in PyTorch.
Stars: ✭ 36 (+16.13%)
Mutual labels:  yolo
Object-Detection-Tensorflow
Object Detection API Tensorflow
Stars: ✭ 275 (+787.1%)
Mutual labels:  yolo
kapao
KAPAO is an efficient single-stage human pose estimation model that detects keypoints and poses as objects and fuses the detections to predict human poses.
Stars: ✭ 604 (+1848.39%)
Mutual labels:  yolo
Psychic-CCTV
A video analysis tool built completely in python.
Stars: ✭ 21 (-32.26%)
Mutual labels:  yolo
WebSight
Aiding the visually impaired through real time augmented reality, AI object detection, WebGL shaders effects such as edge detection, and colour adjustments.
Stars: ✭ 26 (-16.13%)
Mutual labels:  yolo
JSON2YOLO
Convert JSON annotations into YOLO format.
Stars: ✭ 222 (+616.13%)
Mutual labels:  yolo

基于深度学习的视频人脸检测

这里旨在说明开发前大致准备工作,未记录详细开发过程,可参考 项目Commit记录

[TOC]

前期调研

网上查看相关论文、博客、github源码

方案选型

选择原则

  • 时间成本

    完成视频中人脸检测项目,时间进度上还是很紧张的,确定方案要参考时间限制

  • 投入成本

    偏向短期时间节点内能快速上手且使用的方式

  • 检测效率

    视频中包含大量的帧画面,所以对于检测的速度方面选择尽可能快速的

网上查看相关检测的资料,选择了各个方面综合能力较好的预选方案,并做出对比。

模型 速度 精度 成本 小物体 训练周期
OpenCV + CNN 一般 一般 一般
YOLO/YOLO2 一般 较低
SSD 一般

由于人脸在视频画面中相对较小,因此这里没有选择在小物体检测上有劣势的YOLO模型。OpenCV + CNN的方式精度上虽然不高,但是处理速度还是蛮快的,在实时检测方面效果不错,于是将该方案作为兜底方案。SSD模型检测是目前调研出的各方面相对表现都比较优异的,作为最终选择方案。

即:选择OpenCV + CNN作为兜底方案,SSD作为最终方案。

数据收集

Pubfig数据

处理脚本

由于版权问题,数据源是以链接的形式存在,于是下载脚本对链接图片进行下载,下载过程很多图片无法下载,无奈放弃该数据源。

爱情公寓

处理脚本

  • OpenCV对视频的每一帧进行人脸检测
  • 将检测区域抠下来保存为人脸图片的数据源
  • 对该部分数据源进行手动分类

模型训练

CNN分类模型

由于人脸的图片比较小,再加上类别数量不多,所以这里用的是小型的CNN网络,结构如下

def build_model(self):
	model = Sequential()
	model.add(Conv2D(8, (3, 3), activation='relu', input_shape=(128, 128, 3)))
	model.add(MaxPooling2D(pool_size=(2, 2)))
	model.add(Dropout(0.25))
	model.add(Conv2D(16, (3, 3), activation='relu'))
	model.add(MaxPooling2D(pool_size=(2, 2)))
	model.add(Dropout(0.25))
	model.add(Flatten())
	model.add(Dense(256, activation='relu'))
	model.add(Dropout(0.5))
	model.add(Dense(8, activation='softmax'))
	return model

SSD检测模型

SSD模型是在基于keras的SSD开源项目进行改造的,主要替换训练数据的载入方式和输出的类别。

模型测试

图片版测试

视频版测试 点击查看演示视频

参考链接

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].