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

请教代码意思。 #241

Closed
YuQi9797 opened this issue Mar 3, 2021 · 3 comments
Closed

请教代码意思。 #241

YuQi9797 opened this issue Mar 3, 2021 · 3 comments

Comments

@YuQi9797
Copy link

YuQi9797 commented Mar 3, 2021

# Adjust center/scale slightly to avoid cropping limbs

作者您好,请问下这里避免裁剪到肢体, 是自己自定义轻微调整center 和 scale的值吗? 具体表示的是什么意思呢?
纵坐标和尺度发生变化?

@hebangwen
Copy link

hebangwen commented Apr 1, 2021

看这部分代码的含义应该是center向右平移15*s[1],bbox框扩大到1.25倍,从而多获得一些图片上的信息以获得更好的姿态估计结果。这里乘了1.25之后框变大了,大概就是这个原理。

@YuQi9797 YuQi9797 closed this as completed Apr 5, 2021
@leijue222
Copy link

看这部分代码的含义应该是center向右平移15*s[1],bbox框扩大到1.25倍,从而多获得一些图片上的信息以获得更好的姿态估计结果。这里乘了1.25之后框变大了,大概就是这个原理。

scale = np.array(
[w * 1.0 / self.pixel_std, h * 1.0 / self.pixel_std],
dtype=np.float32)
if center[0] != -1:
scale = scale * 1.25

请问您知道为什么是放大1.25倍吗?以及为什么self.pixel_std固定设置为200。关于1.25和200这两个trick值的设定该如何解释

@hebangwen
Copy link

看这部分代码的含义应该是center向右平移15*s[1],bbox框扩大到1.25倍,从而多获得一些图片上的信息以获得更好的姿态估计结果。这里乘了1.25之后框变大了,大概就是这个原理。

scale = np.array(
[w * 1.0 / self.pixel_std, h * 1.0 / self.pixel_std],
dtype=np.float32)
if center[0] != -1:
scale = scale * 1.25

请问您知道为什么是放大1.25倍吗?以及为什么self.pixel_std固定设置为200。关于1.25和200这两个trick值的设定该如何解释

你好,下面是我个人认为的解释:

  • 放大1.25倍就如注释所说的那样,是为了避免裁剪到肢体。这是考虑到一些比较极端的情况,例如四肢全部张开,成一个五角星的样子,这种情况下目标检测器可能不会把所有的肢体都包括进来,所以需要手动扩大一些。至于1.25我认为是一个大家都取的超参数,我自己的一些代码里也会直接取1之类的(虽然最后没用到)。issue里也有很多的讨论:mmpose, issues/94
  • 200只是一个超参数,前面缩小了200个像素,后面放大200个像素。所以你应该可以自己修改这个参数,或者直接在这两个地方把这个两个200全删掉。

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

3 participants