Comments (3)
@dshahrokhian (just saw this after responding to your question in the frontalization page)
I expect it to fail on the same images, though I may be wrong and it's worth trying. You should also try resizing the photos so that faces are roughly the same size as those in the LFW, YTF benchmarks, where this code was mostly used.
Regardless, as I mentioned there, we are working on providing a landmark-free solution.
from face_specific_augm.
Hey @dshahrokhian,
good questions, thanks. The issues that you mentioned are two and are unrelated each other.
-
The first issue regards rendering (interpolating) when the source, input image has a very big size. This is a technical issue, not a research issue. I also got into this problem and the solution was to resize the image to a canonical, smaller size. (at the end also this is what the rendered will do as it won't preserve the original, input resolution). I do not think is a problem on our side. To solve this, what we should do is study the OpenCV internals of the function
cv2.remap()
because, at the end, that does the job. It could be an OpenCV issue. I haven't had the time to look into that. -
The second issue regards "frontalization" when the input face undergoes large pose variants far apart from frontal. This is actually one of the main reasons why this rendered was developed, that is to avoid frontalizing a face when the face is near profile. It is better to adjust the pose locally, avoiding "big jumps" in pose angle (e.g. 50-degree face brought to frontal is likely to fail). What I have seen in my research is that makes sense if you have a good frontal face to warp it to frontal, half-profile view and even make a stretch to full-profile (~70 degrees). Although in this latter case, you might get some artifacts in the ears region, overall the quality is acceptable. What it is not recommended is to take a face which is profile and frontalize it. In the configuration file
confi.ini
there is an optionnearView = yes
that enables this. That is, deciding which view to render based on the input pose. The problem that you mentioned in the question was circumnavigated in this way, but not really solved. So, to answer your questions, if you force the code to frontalize a near-profile image is not going to work. All these also assume that you got a clean response from the landmark detector, which might not be the case; perhaps you need a confidence on the landmarks to tell you how good is landmark prediction, so to avoid hard images.
Also as @TalHassner mentioned, we are working to provide a fast solution "landmark-free" which also gives you a sort of confidence in the pose prediction.
from face_specific_augm.
Thanks for the feedback @TalHassner @iacopomasi.
from face_specific_augm.
Related Issues (20)
- cv2 error in remap when running demo.py HOT 1
- ValueError: too many values to unpack (expected 2) HOT 1
- Question about 3D head model HOT 1
- Error:ValueError: too many values to unpack HOT 1
- Error HOT 1
- Question about downloading the model HOT 4
- MATLAB 3D Model Renderer HOT 5
- when i run the demo, there occured an error in function warpImg, can anyone help? thx HOT 1
- errors when render
- ValueError: too many values to unpack HOT 3
- 3D models HOT 1
- Error when 'background=no' in the config.ini file HOT 2
- Do we have synthetic lighting rendering in this repo? HOT 1
- face expression HOT 2
- landmark position in facemask
- going from profile to frontal HOT 2
- question on "extreme poses and viewing conditions" and resnetON = yes HOT 1
- Dlib, opencv and imutils version HOT 2
- Opencv 4.2.0 error HOT 1
- adding more angles and directions HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from face_specific_augm.