Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to get faces with different angles before training? #10

Closed
YongtaoGe opened this issue May 4, 2018 · 8 comments
Closed

How to get faces with different angles before training? #10

YongtaoGe opened this issue May 4, 2018 · 8 comments

Comments

@YongtaoGe
Copy link

YongtaoGe commented May 4, 2018

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?

@YongtaoGe YongtaoGe changed the title How to get faces with different angles when training? How to get faces with different angles before training? May 4, 2018
@Rock-100
Copy link
Owner

Rock-100 commented May 8, 2018

@GeYongtao
I convert rectangle label to square label link. And the following pictures show how I adjust bounding box label.
image
image
image
image

@YongtaoGe
Copy link
Author

YongtaoGe commented May 8, 2018

I get it. Thanks a lot!

@Rock-100
Copy link
Owner

Rock-100 commented May 8, 2018

@GeYongtao 为了方便旋转框,把框变成了正方形,我论文中评测结果时候也是用正方形评测的。实际上,正方形评测结果是偏低的,因为数据集的标注都是椭圆或者长方形。在我的实验中,评测时候用一些简单的策略把正方形换算成长方形,结果就会有0.5-1个点的提升,比如100个FP的召回从88.1会提升到88.8

@YongtaoGe
Copy link
Author

@jack-cv 还有一个问题,请问第一个阶段训练的face/non face分类输出和bounding box回归对第二阶段的网络训练有帮助吗?(同理:第二阶段的分类输出和bounding box回归对第三阶段的网络)

  • 按照我的理解,论文中提出的第二个网络不是对第一个网络的bounding box回归进行精调,而是从头开始训练。单个网络的face/non face classification和bounding box regression只作为其训练时自身的监督信号,在测试阶段,只利用到第一和第二阶段网络的calibration classification输出。

@Rock-100
Copy link
Owner

Rock-100 commented May 8, 2018

@GeYongtao 在我的实现中,各个阶段的边框回归没有关联,各自训练各自的。各阶段的face/non face分类有关联,体现在下一级的负样本是上一级过滤得到。我记得Cascade CNN和MTCNN应该也是这样训练的。

@Edwardmark
Copy link

Edwardmark commented Jun 9, 2018

@jack-cv 您好,请问你训练的时候,是先把人脸截出来吗?还有就是PCN训练的框是正立的还是斜着的,看您上面的例子似乎框是正立的?那这个正立的框是怎么得到的呢?是取斜着框的x和y的最大最小得到的吗?还是直接将斜着的框转到正立的方向呢?

@Edwardmark
Copy link

@jack-cv 另一个问题,你旋转的时候没有考虑图片被边缘截掉的问题吗?是不是应该扩大边界?

@Rogerluojie
Copy link

@jack-cv 你好,想请问训练第三阶段的角度回归时,怎样计算角度的回归值标签数据

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants