chensong1995 / HybridPose

HybridPose: 6D Object Pose Estimation under Hybrid Representation (CVPR 2020)
MIT License
412 stars 64 forks source link

训练阶段的输出 #67

Open YC0315 opened 2 years ago

YC0315 commented 2 years ago

您好作者,非常感谢您这么棒的工作,有个问题想问您,就是在训练阶段,您的网络就已经生成预测关键点了是吗?pvnet是只有在测试阶段才会生成最终的预测关键点。

chensong1995 commented 2 years ago

Y1996-wwj 你好,

感谢你对我们工作的关注!在训练过程中,程序会将训练集中的图片交给网络,通过调整网络的参数,使得网络的预测结果和训练集的标注尽可能接近。彭同学的 PVNet 和我们的 HybridPose 在这里的流程是一致的。

希望这对你有所帮助!

YC0315 commented 2 years ago

Y1996-wwj 你好,

感谢你对我们工作的关注!在训练过程中,程序会将训练集中的图片交给网络,通过调整网络的参数,使得网络的预测结果和训练集的标注尽可能接近。彭同学的 PVNet 和我们的 HybridPose 在这里的流程是一致的。

希望这对你有所帮助!

也就是说您的网络也是在测试阶段才会生成2D关键点是吗?我对您的网络的理解是:网络在训练阶段就会生成2D关键点(图1),然后根据生成的2D关键点去构建edge vevtors(图2),请问这样理解对吗? 微信截图_20211130110937

chensong1995 commented 2 years ago

在训练阶段,PVNet 和 HybridPose 都会预测二维关键点。

chensong1995 commented 2 years ago

Y1996-wwj 你好,

我似乎没有理解你的问题,非常抱歉。你所说的测试阶段才会“生成”2D关键点是什么意思呢?

YC0315 commented 2 years ago

Y1996-wwj 你好,

我似乎没有理解你的问题,非常抱歉。你所说的测试阶段才会“生成”2D关键点是什么意思呢?

非常感谢您能这么快回复我的问题!

我的意思是,在训练阶段pvnet只是输出了预测的向量场和mask就完事了,并没有在训练阶段进行霍夫投票产生最终的9个2D关键点,而是在测试阶段才进行霍夫投票。不知道我理解的是否正确,而您的网络在训练阶段输出向量场和mask后还进行了投票产生了9个2D关键点。

下面这副图是pvnet作者在github上给其他读者的回信,不知道我的理解是否正确希望可以得到您的解答。 微信截图_20211130131013

chensong1995 commented 2 years ago

谢谢你的补充,这下我明白了。我们的网络在训练阶段并没有通过 RANSAC 投票生成二维的关键点坐标。这点和 PVNet 是一致的。我们的边向量 (edge vectors) 包含了 8 个关键点两两之间的偏移信息 (dx, dy)。在训练网络的时候,我们只用到了训练集上的偏移信息进行监督,并没有使用绝对的二维关键点的位置。

希望这对你有所帮助!

chensong1995 commented 2 years ago

准确地说,在训练图中红色的 Prediction Networks 的时候,我们没有投票产生二维的关键点。但在训练图中黄色和绿色的 Initialization 和 Refinement sub-module 的时候,我们需要投票产生二维的关键点。这两处的训练是各自独立的。模型主体部分是红色的 Prediction Networks ,后面的两个 Sub-module 各自都只有个位数的参数。希望这对你有所帮助!

YC0315 commented 2 years ago

准确地说,在训练图中红色的 Prediction Networks 的时候,我们没有投票产生二维的关键点。但在训练图中黄色和绿色的 Initialization 和 Refinement sub-module 的时候,我们需要投票产生二维的关键点。这两处的训练是各自独立的。模型主体部分是红色的 Prediction Networks ,后面的两个 Sub-module 各自都只有个位数的参数。希望这对你有所帮助!

好的,我明白您的意思了,再次感谢您这么棒的工作!