WongKinYiu / PartialResidualNetworks

partial residual networks
100 stars 24 forks source link

any plan to integrate mtcnn #4

Open tomriddle54 opened 5 years ago

tomriddle54 commented 5 years ago

Hello @WongKinYiu first you have done a grate work. I was planing to do face detection using enet and darknet. I love the way you made this enet for yolo using darknet do you have any plans to integrade mtcnn face detection darknet if yes lets contribute

WongKinYiu commented 5 years ago

@syedmustafa54 Hello,

My focused topic is about traffic, so I do not have plan to integrate MTCNN. And in my experiments, MTCNN is slower than YOLOv3-based method when the target faces are small. I think you can take a look RetinaFace https://arxiv.org/pdf/1905.00641.pdf

WongKinYiu commented 5 years ago

Here I provide the inference time of my TX2 person Re-ID system. image

yolo = yolov3-tiny mtcnn = mtcnn person = resnet-50 face = res18-facenet

tomriddle54 commented 5 years ago

Thanks @WongKinYiu. I want to do face detection on jetson nano for face recognition to crop face from image and send to server to do face recognition jetson, play the role of extraction on face from video feed. So what do you suggest retina face i have tried but it is very slow i am getting around 1 fps on jetson nano but if i am using yolo enet I am getting around 20 fps on nano. I mean is it better to train EfficientNet_b0-PRN to detect face or to use retina face

WongKinYiu commented 5 years ago

@syedmustafa54 If the size of face is big and there is no many faces in a single frame, MTCNN is good. Otherwise, you can change the backbone of RetinaFace, for example resnet18. In my experiments, EfficientNet_b0 is not efficient on GPU.