HOPE-Net: A machine learning model for estimating facial orientation

elegirl_admin

ailia.AI

ailia.AI Editorial Team

Here’s an introduction to “HOPE-Net,” a machine learning model available for use with the ailia SDK. By utilizing machine learning models published in the ailia MODELS and the edge inference framework of the ailia SDK, you can easily implement AI functionality into your applications.

Overview of HOPE-Net

HOPE-Net is a machine learning model released in October 2017. It takes input from a face and outputs the angles of yaw, pitch, and roll along the three axes.

Fine-Grained Head Pose Estimation Without Keypoints

Estimating the head pose of a person is a crucial problem that has a large amount of applications such as aiding in…

arxiv.org

It can detect facial angles even in challenging facial images.(Source:https://github.com/natanielruiz/deep-head-pose

Architecture of HOPE-Net

Detecting facial orientation is a crucial technology used in tasks such as gaze detection and recognizing objects of interest.

Traditionally, facial orientation detection relied on detecting keypoints of the face and implementing 2D to 3D transformation using standard head models. However, this approach had issues such as dependence on the accuracy of facial keypoint detection and the need for ad-hoc fitting.

In HOPE-Net, facial orientation is detected using multi-loss convolutional neural networks in a single shot. Faces detected by a face detector are inputted, features are extracted using ResNet50, and yaw, pitch, and roll are calculated using FC layers.

Source:https://arxiv.org/pdf/1710.00925

HOPE-Net has achieved State-of-the-Art (SoTA) performance on AFLW2000. AFLW2000 is a dataset where the first 2000 images of the AFLW dataset have been re-annotated with 68 3D landmarks.

Source:https://arxiv.org/pdf/1710.00925

How to use HOPE-Net

To use HOPE-Net, use the following command. You can detect facial orientation from a webcam.

$ python3 hopenet.py -v 0

Additionally, you can use a faster version with ShuffleNetV2 instead of ResNet50 using the following command.

$ python3 blazehand.py --lite -v 0

axinc-ai/ailia-models

(Image from https://pixabay.com/photos/person-human-male-face-man-view-829966/) ailia input shape: (1, 3, 128, 128) RGB…

github.com

Here’s an example of execution.

https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FDA1SACACK0k%3Ffeature%3Doembed&display_name=YouTube&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DDA1SACACK0k&image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FDA1SACACK0k%2Fhqdefault.jpg&key=a19fcc184b9711e1b4764040d3dc5c07&type=text%2Fhtml&schema=youtube

AX Corporation develops ailia SDK, a cross-platform AI inference engine utilizing GPUs for high-speed processing. As a company specializing in practical AI implementation, AX Corporation offers a total solution for AI, including consulting, model creation, SDK provision, development of AI-based applications and systems, and support. Please feel free to contact us for inquiries.