# RetinaFace Face Detection *author: David Wang*
## Description This operator detects faces in the images by using [RetinaFace](https://arxiv.org/abs/1905.00641) Detector. It will return the bounding box positions and the confidence scores of detected faces. This repo is an adaptaion from [biubug6/Pytorch_Retinaface](https://github.com/biubug6/Pytorch_Retinaface).
## Code Example Load an image from path './turing.png' and use the pretrained RetinaFace model to generate face bounding boxes and confidence scores. *Write the pipeline in simplified style:* ```python import towhee towhee.glob('turing.png') \ .image_decode.cv2() \ .face_detection.retinaface() \ .show() ``` result1 *Write a same pipeline with explicit inputs/outputs name specifications:* ```python import towhee towhee.glob['path']('turing.png') \ .image_decode.cv2['path', 'img']() \ .face_detection.retinaface['img', ('bbox','score')]() \ .select['img', 'bbox', 'score']() \ .show() ``` result2
## Factory Constructor Create the operator via the following factory method. ***face_detection.retinaface()***
## Interface A face detection operator takes an image as input. It generates the bounding box positions and confidence scores back to ndarray. **Parameters:** ​ ***img:*** *towhee.types.Image (a sub-class of numpy.ndarray)* ​ the image to detect faces. ​ supported types: numpy.ndarray **Returns:** *List[(int, int, int, int)]* ​ The detected face bounding boxes. *List[float]* ​ The detected face bounding boxes confident scores.