Giter Site home page Giter Site logo

rock-100 / facekit Goto Github PK

View Code? Open in Web Editor NEW
1.1K 68.0 301.0 85.8 MB

[CVPR 2018] Real-Time Rotation-Invariant Face Detection with Progressive Calibration Networks

License: Other

C++ 86.68% Shell 0.78% C 0.77% Python 10.59% Makefile 1.19%
face-detection

facekit's Introduction

facekit's People

Contributors

emilwine avatar rock-100 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

facekit's Issues

Training Problem

Hi, @jack-cv. It is really a nice work to detect the large pose face. Can you explain how to get the rotate angular label of face to supervise the trainning. As I know, WIDER FACE don't have the facial landmark. Do you use one of the facial landmark detect algorithms to get the facial landmark and then calculate the facial angular or just label all the faces manually?

Besides, what do you mean that "we rotate the initial training images uniformly in the range of..." in section 2.3 and 2.4 of the paper? As a beginner, I am confused of the statement.

What is the orientation accuracy in training set of phase-1?

Hi,
Jack, I try to re-implement your PCN model, but I found that training phase1, the up-down face orientation prediction accuracy is very low(about 90% in training set). I think that is not well enough for the training of the second phase. Do I miss sth? Please comment, thank you.

Best,
Edward

Segmentation fault (core dumped)

您好,请问Segmentation fault (core dumped)这个报错怎么解决呢是opencv版本问题还是其他什么问题,求指教

compile error on ubuntu16.04

OS: Ubuntu 16.04
Protobuf version: 2.6.1
OpenCV version: 2.4.13
gcc & g++ version: 5.4.0

When I compoling picture.cpp, I got a error as below
compile picture /tmp/ccewgFHU.o: In function main':
picture.cpp:(.text.startup+0x77): undefined reference to PCN::PCN(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)' libPCN.so: undefined reference to google::base::CheckOpMessageBuilder::NewString()'
libPCN.so: undefined reference to caffe::Net<float>::Net(std::string const&, caffe::Phase, int, std::vector<std::string, std::allocator<std::string> > const*)' libPCN.so: undefined reference to caffe::Net::CopyTrainedLayersFrom(std::string)'
collect2: error: ld returned 1 exit status
done
`

I searched some information by google, soameone said this was because the version of gcc&g++ was too high. Then I changed gcc&g++ version to 4.8. However, another error occured.
compile picture /tmp/ccdYSnpl.o: In function main':
picture.cpp:(.text.startup+0x140): undefined reference to cv::imread(std::string const&, int)' picture.cpp:(.text.startup+0x6b1): undefined reference to cv::imshow(std::string const&, cv::_InputArray const&)'
libPCN.so: undefined reference to google::base::CheckOpMessageBuilder::NewString()' libPCN.so: undefined reference to caffe::Net::Net(std::string const&, caffe::Phase, int, std::vector<std::string, std::allocatorstd::string > const*)'
libPCN.so: undefined reference to caffe::Net<float>::CopyTrainedLayersFrom(std::string)' collect2: error: ld returned 1 exit status done

Really have no sense to deal with this. Could you please help me?

About the pcn3 regress loss?

Hi, @jack-cv , your work are very interesting, but I want to know the regress loss of rotation in pcn3. Is it the smooth l1 or Least square estimation? Thank you.

Possibility to get 3 different models?

Hello! i am trying to port the implementation to other frameworks, and i was wondering if its possible to split the PCN.caffemodel into three parts, like the .prototxt to have PCN-1.caffemodel, PCN-2.caffemodel, PCN-3.caffemodel ?

thanks!

Definition of RIP?

Hi,@jack-cv! Can you explain how you define the concept of RIP(rotation-in-plane) for different conditions such as side face and front face (e.g. how do you know whether a face's angular is exactly 51 degree)? Any formular?

When use different min_face_size, got different result on same picture? A confusing question.

Hi, Jack
I have a question,when change detector.SetMinFaceSize(48) to detector.SetMinFaceSize(20), the result changes. When test with 30, there is no face detected. test with the same input,the output is different with rotate of the angle, I am confused and want to know your opinion, the test input is as follows:
img2
when the minFaceSize is 21 or 48, the output is as follows:
img48
when the minFaceSize is 20, the output is as follow:
img20
when the minFaceSize is 30, the output is as follow:
img30
It turns out that the output angle has been flipped up and down or just lost the face, could you please give me a hint what causes that? Should I change the ImagePyramidScaleFactor?
Best,
Edward

GPU版本

你好。有没有考虑过开源GPU版本呢?

Use the network in paper, cannot train orientation task well?

question1: I use the network in the paper, to train the PCN-2, but the accuracy is only about 80% in the training datset, cannot get 96% , any ideas?

question2: I parse your caffemodel, and see the input is three data, i.e. data1, data2, data3, could you tell me what the three data mean and how to generate them?

Best,
Edward

misleading in paper

As shown in paper, the bounding box regresion contains 3 factors. a b and w that represents the conordinate of top-left point and its width. but the S use t and t*

ta tb tw is given by the paper,but what 's the t* ? is there any explaination?

Compilation documentation

In command,
sh compile.sh picture/video/fddb
whats "picture/video/fddb" does it points to fddb.cpp?

Also, in fddb.cpp I can see hardcoded paths.

I am using Ubuntu 16.04 with caffe and opencv 3.0

What's the differences with MTCNN?

With the similar architecture of MTCNN, you did not even mention it in your paper? Where is the highlight of this work? Just re-train the 3 nets in MTCNN and sightly modify the test code, we can get the same results and higher fps than your paper.

角度问题

您好,请问支持旋转角度输出吗? 比如人脸左右的旋转,上下的旋转角度

How to get faces with different angles before training?

opencv_rotate
Hi,@jack-cv. As is shown in the picture, when rotating a face, the bounding box will be rotated accordingly. Thus would lead some undefined pixes around a face(e.g. black pixes in the above image). How do you handle this problem? In other words, how do you ajust bounding box label according to the rotate angle?

loading the network in pycaffe

Hi.
I'm trying to load the network in pycaffe. For this I need the "caffe.proto". Can you release the file? or can you release the source code for the libPCN.so?

Thanks

System environment for demo

I tried to work on docker image from official caffe(bvlc/caffe:gpu) but it didnt work because of glog(maybe) and caffe version. I finally made it works on an image of nvidia/cuda:ubuntu14.04 with caffe 1.0.0 built by myself.

Could you upload binary file(libPCN.so) that can works on current official caffe docker image?

is there a docker image or another version?

I tried this development environment more than 10 times and it did not work.
 If you do not mind, I wonder if you can tell me the way to get a docker image or another version (tensor flow, keras, etc).

Thank you again for your hard work, it is greatly appreciated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.