Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to relocate face points in opencv / face distortion

I have to simulate facial expressions on a face image ( say open mouth ). For this I first extracted the facial feature points and found the corners of the lips. Now I need to deform the image by moving the points down.

enter image description here

In the above image I need to move the points ( 2 ) and ( 3 ) to some distance left and right respectively. And point ( 18 ) and ( 19 ) littele bit down. So that I will get an expression like opened mouth.

My Questions:

1) Is this the above way right to proceed to simulate facial expression?

2) If it is right how to move the points and create a new image in opencv?

like image 576
2vision2 Avatar asked Feb 25 '13 07:02

2vision2


People also ask

What is ROI in face detection?

automatic Region of Interest (ROI) detection technique of six universal expressive face images. The proposed technique is a. facial geometric based hybrid approach.

What algorithm is used to detect face in OpenCV?

The haar like cascade algorithm is used for face detection. There are various algorithms for face recognition, but LBPH is easy and popular algorithm among them. It generally focuses on the local features in the image.

How does OpenCV face recognition work?

Various face detection algorithms are there but the Viola-Jones Algorithm is the oldest method that is also used today. Face detection is generally the first step towards many face-related applications like face recognition or face verification. But, face detection has very useful applications.


1 Answers

A fairly recent survey and course of techniques people have used in this area is here: http://old.siggraph.org/publications/2006cn/course30.pdf

TL:DR. There is no "right" way to do it, in any absolute sense. You need to define your goal in a way that is computable. Then figure out what additional (prior) information you need to reach it, in addition to the image data themselves. Fiddling with "texture warping" or other interpolation schemes before you decide what you need to do is a waste of time.

You mention "an expression like an opened mouth", and I interpret that to mean that you'd like to produce an image similar to what the real face would look like if the subject had been photographed with their mouth open. The markers you found obviously do not give enough information about that - in particular, they do not express any notion of "mouth". In fact, that notion is nowhere to be found in the image. So, strictly speaking, your task is unsolvable unless you throw more information into it.

I suggest you take a look at the paper pointed above, and rethink your problem again.

like image 135
Francesco Callari Avatar answered Oct 13 '22 00:10

Francesco Callari