Open Rogerluojie opened 7 years ago
@Rogerluojie 您好,引起这种情况的很大原因是你制作landmark标签的时候出现错误,建议把打好标签的图片可视化出来,观察特征点的位置是否正确。
你好,P和R前两个阶段用训练关键点嘛?对结果是否有影响?
@lbwang2006 论文里面P和R都训练关键点了。对结果是否影响你可以自己试试~
我训练关键点loss不收敛,回归到一个大致均值,不知道分类 检测 关键点一起训练有没有什么主意的地方呢
@lbwang2006 不好意思,回复晚了,您说的不收敛是指的特征点检测的loss值很大还是loss曲线震荡
@AITTSMD loss值很大,0.02左右,正常应该能收敛到0.003左右,现在训练出来的model 测试效果就是一个均值位置,意思就是检测框固定后 5个点就基本固定了,不管人脸是什么姿态,训练数据检查也是正常的。。很奇怪
@Rogerluojie mtcnn网络的接受域比较小,特征点数目从5个增加到64个,这个网络还能正确回归特征点吗,如果可以,性能效率又是否会受到很大影响?
@Dawson-huang 可以正确回归特征点,计算量增大了非常多,所以性能效率会大大的降低。
@Rogerluojie 如果计算量极大地增加了,那么要想实时检测的话,那也只能在GPU下跑,在CPU下很难达到实时检测,更别提手机端CPU了,我觉得这样就弱化了mtcnn网络的速度优势
借地方问一下,如果增加关键点或者使用不同的关键点,代码里面有哪些地方需要修改的?样本是使用新的关键点标记好的数据。 谢谢!
增加landmark关键点后,loss不收敛,一直上下浮动,0.2与0.06之前变幻。
你好,我想请问一下,如果我数据集里图片大小有大有小,是影响landmark loss不收敛的主要原因吗
@Lucas-work 跟图像大小没什么关系吧,特征点检测回归的只是相对于人脸位置左上角坐标的偏移,,
你好,我们使用眼睛12个点的数据集来训练landmark,但是下降到0.03左右就不下降, 我们使用的landmark数据集有60w张,请问这个问题在哪里。
Ubuntu下面如何执行代码进行训练啊??
@Lucas-work 您好,问一下,您的数据集哪来的?
找百度众包团队买的。。。
在 2018-08-09 09:57:43,"huangwgang" notifications@github.com 写道:
@Lucas-work 您好,问一下,您的数据集哪来的?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.
增加关键点为95点,训练P_net的时候遇到梯度爆炸,请问怎么解决啊 2018-08-19 11:53:56.928519 : Step: 10, accuracy: 0.963731, cls loss: 0.328417, bbox loss: 0.195085, landmark loss: nan,L2 loss: 0.026220,lr:0.010000 2018-08-19 11:53:57.168789 : Step: 20, accuracy: 0.984848, cls loss: 0.157212, bbox loss: 0.123694, landmark loss: nan,L2 loss: 0.026372,lr:0.010000 2018-08-19 11:53:57.416696 : Step: 30, accuracy: 0.981043, cls loss: 0.140952, bbox loss: 0.107430, landmark loss: 11.471462,L2 loss: 0.026815,lr:0.010000 2018-08-19 11:53:57.644162 : Step: 40, accuracy: 0.976415, cls loss: 0.168928, bbox loss: 0.139431, landmark loss: nan,L2 loss: 0.027715,lr:0.010000 2018-08-19 11:53:57.864533 : Step: 50, accuracy: 0.967213, cls loss: 0.257370, bbox loss: 0.876604, landmark loss: 24.074501,L2 loss: 0.032388,lr:0.010000 2018-08-19 11:53:58.072143 : Step: 60, accuracy: 0.014634, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: inf,lr:0.010000 2018-08-19 11:53:58.293608 : Step: 70, accuracy: 0.050000, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:53:58.524199 : Step: 80, accuracy: 0.054054, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:53:58.761190 : Step: 90, accuracy: 0.021978, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:53:58.971244 : Step: 100, accuracy: 0.059113, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:53:59.180251 : Step: 110, accuracy: 0.060914, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:53:59.388746 : Step: 120, accuracy: 0.054945, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:53:59.593905 : Step: 130, accuracy: 0.019608, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:53:59.798467 : Step: 140, accuracy: 0.047120, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:54:00.001104 : Step: 150, accuracy: 0.049020, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:54:00.210982 : Step: 160, accuracy: 0.018868, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:54:00.417550 : Step: 170, accuracy: 0.023923, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:54:00.627177 : Step: 180, accuracy: 0.026882, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:54:00.847200 : Step: 190, accuracy: 0.021622, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000 2018-08-19 11:54:01.064762 : Step: 200, accuracy: 0.043956, cls loss: nan, bbox loss: nan, landmark loss: nan,L2 loss: nan,lr:0.010000
@Rogerluojie 请问你增点的训练好了吗
@AITTSMD @Rogerluojie 请问训练的时候data/MTCNN_model里的文件需要删了吗
@SunshineJZJ 不用。我增点的训练不采用mtcnn来训练的
@Rogerluojie 请问mtcnn能做吗?我想用MTCNN训练95点数据
@Rogerluojie 请问你增点的训练用的是什么模型啊?
@SunshineJZJ 可以,但是不建议用mtcnn来训练那么多点。可以用VGG来训练
@Rogerluojie 谢谢你 目前我想用mtcnn尝试一下,2637177427 我qq,方便请教一下吗?非常感谢!
@Rogerluojie @AITTSMD 请问怎么在pnet训练的时候加入tf.layers.batch_normalization,训练10000step后出现了nan的情况
@ Rogerluojie 您好,我现在也在增加关键点训练但是效果不太好,损失值只能降到0.04,就不行了,,所以回归的偏差较大,能请问您是怎么解决的吗
@Rogerluojie 您好,我现在也在增加关键点训练但是效果不太好,损失值只能降到0.04,就不行了,,所以回归的偏差较大,能请问您是怎么解决的吗
@Lucas-work “你好,我们使用眼睛12个点的数据集来训练landmark,但是下降到0.03左右就不下降, 我们使用的landmark数据集有60w张,请问这个问题在哪里。” 你好我和您有同样的问题,训练13关键点0.04,损失值,能请问您是怎么解决的吗,我的landmark 是celebaa20万
@lbwang2006 "不好意思,回复晚了,您说的不收敛是指的特征点检测的loss值很大还是loss曲线震荡" 您好,请问,您这个问题是怎么解决的,我现在,也出现和您一样的问题,而且,直接训练5个点出现这样的情况,原来我是训练12个点,偏差有点大,现在直接用5个点进行实验,出现和您一样的问题,celeba20万的数据做一些数据增强40万,可以增加性能吗,继续减小损失值吗?
@Lucas-work “你好,我们使用眼睛12个点的数据集来训练landmark,但是下降到0.03左右就不下降, 我们使用的landmark数据集有60w张,请问这个问题在哪里。” 你好我和您有同样的问题,训练13关键点0.04,损失值,能请问您是怎么解决的吗,我的landmark 是celebaa20万
我如果增加celeba 数据增强的图片数量到40万,能够增加训练的精度吗?模型的话我都没有改动,只是在finetune 过程中改变了最后一层重新训练的
@shiyuanyin 收敛到达0.04大小,一般来说总体效果还是可以的了,你可以贴张图出来看看你的效果是怎样的了。celeba的数据的总体效果一般般,用ibug 300w的数据来训练后的鲁棒性效果稍微有所提升
借地方问一下,如果增加关键点或者使用不同的关键点,代码里面有哪些地方需要修改的?样本是使用新的关键点标记好的数据。 谢谢!
你好,我训练mtcnn 和您有同样的问题,训练不同的关键点,数据格式,代码需要改动吗,我发现直接训练(用的不是5官,关键点,是一只眼睛的多个关键点)训练效果不好,请问您有好的解决方法吗
@Rogerluojie “ 收敛到达0.04大小,一般来说总体效果还是可以的了,你可以贴张图出来看看你的效果是怎样的了。celeba的数据的总体效果一般般,用ibug 300w的数据来训练后的鲁棒性效果稍微有所提升”
感谢您的回复,但是测试图片效果偏差的厉害,眼睛在眉毛附近, 和提供的模型5个点的对比效果, 框的输出整体偏大, 正常训练起来的,但是就是效果不行,所以还有什么问题是我没有注意的吗,怎样才能提升效果呢???llandmark坐标我是 x y x y,归一化放置的。有顺序要求吗
ibug 300w @Rogerluojie
论文里面提出来数据比例3 :1:1:2 ,wierface,按照这个操作比例,如果我的landmark数据增加,比例成为3:1:1:3,效果会有影响吗,(celeba,用数据增强增加了图片数量,没有用其他数据,训练过程是三个任务轮流分开训练的并不是,一起训练的) 很抱歉,我的问题有点多,我已经训练很久了,就是训不出来好的结果,如果不行我只能改prototxt,了
@shiyuanyin https://github.com/lsy17096535/face-landmark 参考这个,单层网络结构训练都可以比较精准的效果的了。
@Rogerluojie 谢谢您的回复,目前还是想用mtcnn 训练13个点出来,这几天还是训练不好,我再考虑换模型⑧,(这个模型我看到也有很多问题讨论)。特别感谢您的回复和建议。如果您突然想到其他的建议,或者mtcnn注意点,希望能再次回复我。
增加landmark关键点后,loss不收敛,一直上下浮动,0.2与0.06之前变幻。
@grainw ,您好,请问您增加landmark 关键点,做了什么调整吗,能达到好的测试效果吗????我增加到13个点,检测效果不好,点的偏差较大
@SunshineJZJ 我在做增点训练68,landmark偏差很大,我加你qq了,可以交流一下吗
@shiyuanyin https://github.com/lsy17096535/face-landmark 参考这个,单层网络结构训练都可以比较精准的效果的了。
您好,我在用模型只训练landmark,任务,的话,用提供的标签的框,做测试还原关键点坐标,挺好的,但是增加关键点到13个眼睛密集处的地方效果不好,没有太分开,用同样的数据集,找了一个新的模型进行训练,也只是训练关键点,13个点效果不错,眼睛密集的地方也挺好,所以mtcnn的原始onet模型,是不适合做增点训练的,如果有小伙伴训练密集的关键点(单独只训练的5个点,效果也不好),或者超过5个点的增点训练,可以尝试其他方式
改成训练68个关键点模型时,运行train_PNet.py,遇到以下bug怎么解决呀?
Traceback (most recent call last):
File "train_PNet.py", line 36, in
回溯(最近一次调用最后一次): 文件“train_PNet.py”,第36行,在 train_PNet(base_dir,prefix,end_epoch,display,lr) 文件“train_PNet.py”,第22行,在train_PNet 列车中(net_factory,prefix,end_epoch) ,base_dir,display = display,base_lr = lr) 文件“/home/.../train_models/train.py”,第215行,在train coord.join(threads) 文件“/ usr / local / public / anaconda2 / envs /tf1.4_py35/lib/python3.5/site-packages/tensorflow/python/training/coordinator.py“,第389行,加入 six.reraise(* self._exc_info_to_raise) 文件”/ usr / local / public / anaconda2 /envs/tf1.4_py35/lib/python3.5/site-packages/six.py“,第686行,重新 提升价值 文件“/usr/local/public/anaconda2/envs/tf1.4_py35/lib/python3.5/site-packages/tensorflow/python/training/queue_runner_impl.py”,第252行,在_run enqueue_callable() 文件中“/ usr /local/public/anaconda2/envs/tf1.4_py35/lib/python3.5/site-packages/tensorflow/python/client/session.py“,第1244行,在_single_operation_run self._call_tf_sessionrun(无,{},[] ,target_list,None) 文件“/usr/local/public/anaconda2/envs/tf1.4_py35/lib/python3.5/site-packages/tensorflow/python/client/session.py”,第1409行,在_call_tf_sessionrun run_metadata中) tensorflow.python.framework.errors_impl.InvalidArgumentError:键:image / landmark。无法解析序列化示例。 [[Node:ParseSingleExample / ParseSingleExample = ParseSingleExample [Tdense = [DT_STRING,DT_INT64,DT_FLOAT,DT_FLOAT],dense_keys = [“image / encoded”,“image / label”,“image / landmark”,“image / roi”], dense_shapes = [[],[],[136],[4]],num_sparse = 0,sparse_keys = [],sparsetypes = [], device =“/ job:localhost / replica:0 / task:0 / device: CPU:0“](ReaderReadV2:1,ParseSingleExample / Const,ParseSingleExample / Const_1,ParseSingleExample / Const_2,ParseSingleExample / Const_2)]] [[Node:ParseSingleExample / ParseSingleExample / _15 = _Recvclient_terminated = false,recv_device =“/ job:localhost / replica:0 / task:0 / device:GPU:0”,send_device =“/ job:localhost / replica:0 / task:0 / device:CPU:0”, send_device_incarnation = 1,tensor_name =“edge_10_ParseSingleExample / ParseSingleExample”,tensor_type = DT_INT64,_device =“/ job:localhost / replica:0 / task:0 / device:GPU:0” ]]
这个错可能是您生成tfrecord文件时出现错了,可以仔细对照一下,可能哪里有数据没有更改成对应的68个landmark
@shiyuanyin 我也有同样问题,只训练5个点,用的celeba,只用了10万张,loss一直在0.02附近,效果不行,请问你最后是怎么解决的?
@chenliang1986 你好,没有遇到这个问题,所以不是很清楚
@lbwang2006 @AITTSMD loss值很大,0.02左右,正常应该能收敛到0.003左右,现在训练出来的model 测试效果就是一个均值位置,意思就是检测框固定后 5个点就基本固定了,不管人脸是什么姿态,训练数据检查也是正常的。。很奇怪. 碰到一模一样的问题,用的mtcnn-caffe训练的,celeba数据集。请问后来解决了吗?
@chenliang1986 你好,请问你训练的效果怎么样?我训练的效果不是很好
我怀疑是欠拟合,增大onet 学习率,减小weight decay,减小batch size, 去掉dropout试了下有效果,pts loss可以到0.003左右,你试一下。
你好,我在增加人脸关键点(原先5个,现在增加到64个)数据来进行模型训练,原先5个关键点时landmark_loss的曲线会衰减收敛,但是64个关键点时landmark_loss的曲线只会上下浮动不衰减。想请问这可能是由于什么情况引起?谢谢!!!
你好可以请问下你这个关键点增加应该如何修改吗
@SunshineJZJ 我在做增点训练68,landmark偏差很大,我加你qq了,可以交流一下吗
你好 请问你的68个点的训练搞好了吗 想问下具体应该怎么修改
您好,可以使用resnet网络或者其他网络结构替代ONet网络,从而达到增点检测的效果么
你好,我在增加人脸关键点(原先5个,现在增加到64个)数据来进行模型训练,原先5个关键点时landmark_loss的曲线会衰减收敛,但是64个关键点时landmark_loss的曲线只会上下浮动不衰减。想请问这可能是由于什么情况引起?谢谢!!!