-
Notifications
You must be signed in to change notification settings - Fork 227
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
小模型训练到30epoch loss值不下降,infer视频之后发现SMPL body始终在人物上方 #177
Comments
看log您这里训练没有使用预训练模型吧,通过其他GitHub developer的反馈,直接从0训ROMP比较难,很需要2D pose的预训练的,您可以像我这里使用HigherHRNet-32作为预训练模型,用其他2D pose训好的mobilenet开始也可以,但因为ROMP的图片处理方式不太一样,所以也要训一段时间,但应该不会陷入不收敛的情况。 还有一种简洁高效的思路,就是模型蒸馏,直接蒸大模型的输出就好了,我试过蒸小模型,很有效,很快就能训好。 有这方面的问题,可以及时问我,我后面也想蒸一个可以cpu上实时跑的模型用。 关于偏移的问题,只是配置的问题,训练的时候设置的 可能还是lr=0.00005, bs=64比较好训,batch size也不是越大越好的,训练也需要一定的随机性才能跳出局部极值。 |
好的谢谢,我尝试之后有结论会分享出来的 |
INFO:root:missing parameters of layers:['_result_parser.params_map_parser.smpl_model.betas', '_result_parser.params_map_parser.smpl_model.faces_tensor', '_result_parser.params_map_parser.smpl_model.v_template', '_result_parser.params_map_parser.smpl_model.shapedirs', '_result_parser.params_map_parser.smpl_model.J_regressor', '_result_parser.params_map_parser.smpl_model.J_regressor_extra9', '_result_parser.params_map_parser.smpl_model.J_regressor_h36m17', '_result_parser.params_map_parser.smpl_model.posedirs', '_result_parser.params_map_parser.smpl_model.parents', '_result_parser.params_map_parser.smpl_model.lbs_weights', '_result_parser.params_map_parser.smpl_model.vertex_joint_selector.extra_joints_idxs'] 我在load teacher模型hrnet32时会报出这个warning,我觉得应该不会影响params_map和center_map层的蒸馏,想问下result_parser在程序中的主要作用是什么? (回复早上的:smpl_mesh_root_align调整有用,目前mbv3 from scratch 训到132&85的指标) |
不会影响蒸馏的。 |
好的,关于蒸馏我直接用mse计算centermap以及paramsmap的teacher和student的loss,与gt给出的loss一起回传,请问我这样是否合理?(1000倍是我按照大小调的)
|
这段看起来没什么问题。可以这样先试试。 |
sample_video6_results.mp4您好,请问您知道这样子shape一会变大一会变小是怎么回事嘛? backbone: 'mbv3' make_tracking: True inputs: 'demo/videos/sample_video6.mp4' # None 我发现不光是小模型,HRNet32也会有这种情况~ |
我调一下,谢谢bug report。 |
@hitsz-zuoqi ,原始输入视频可以发一下么?我用来测试debug。 |
原始视频在这: sample_video6.mp4frankmocap的han_hand_long.mp4也会有这个问题,视频太大上传不了,这是下载地址 wget https://dl.fbaipublicfiles.com/eft/sampledata_frank.tar |
我可能找到抖动的原因了,我尝试把动作导进blender里面,发现下面这种情况: default.mov然后我在打印了一下cam_trans参数,发现他的z轴实际变化很大 han_hand_long_results.mp4推理是用的公开的hrnet32权重,我在想是不是数据集中既包含了EFT的SMPL回归的3D关节点,又包含了公开数据集的GT导致的bias? |
是的,单目深度的模糊性在半身的时候会更加明显,导致深度估计的不稳定,可以强化translation的smooth coefficient,来增强稳定性,强制稳定。 |
@hitsz-zuoqi ,还是用simple-romp吧,simple-romp没有这个bug,其他人也向我汇报了这个bug了。 |
好的,simple-romp是怎么解决这个bug的呢? |
simple-romp去掉了不必要的操作,这样可能减少了bug的产生。 |
Hi, @hitsz-zuoqi |
Hey, @Arthur151 ! Have a nice day! @hitsz-zuoqi |
V1_mbv3_h36m,mpiinf,coco,mpii,lsp,muco,crowdpose_g0,1,2,3.log
可以帮忙看一下这个mobilenetv3的训练日志吗?
他的validation 指标下降到140&90附近就感觉卡住了,而且我把30epoch的模型拿出来测试了一下,发现SMPL body会飘在人物上面,我的想法是训练的时候body center heatmap应该是最先收敛的,所以即便pose上误差比较大,det loss应该收敛,也就是不会产生这种飘在人物上方的现象,不知道您训练的时候有没有这种问题,希望您能给出建议~
我在resnet的基础上将batch_size 调整为了128,lr 相应x2 为 0.0001
![image](https://user-images.githubusercontent.com/58206232/159833765-1131142f-e42d-4be8-bbda-e57d7b3f4bc9.png)
图示:
The text was updated successfully, but these errors were encountered: