霍夫投票,化转型为投票

信息处理 计算机视觉 霍夫变换
2022-02-15 07:54:13

我需要帮助理解将转换参数“转换”为投票的方式/含义。我知道如何恢复转换参数(在我的例子中:6 DOF),但这如何变成 6D(??)空间中的投票?

谢谢你 !

2个回答
  1. 确定六个自由度中每个自由度所需的精度。不要使用比实际需要更大的精度,因为稍后当您必须在霍夫空间中找到最大值时,它会给您带来麻烦。
  2. 为您的六个自由度确定可能的转换参数范围
  3. 现在创建一个六维数组A(每个 DOF 一个维度),其中每个维度都有当前 DOF 的大小范围/精度这个数组就是你的霍夫空间。
  4. 现在,对于任何给定的向量,v = [DOF1, DOF2, DOF3, DOF4, DOF5, DOF6]递增所在的Abin v你现在已经把这个单一的变换参数向量变成了霍夫空间中的一个投票,

二维示例

  1. x位于 [1;6]y范围内,也位于 [1;6] 范围内。

  2. x应该以 1 的精度找到,而y只需要 2 的精度。

  3. A(x,y)看起来像这样:

    0;0;0
    0;0;0
    0 ;0;0
    0;0;0
    0;0;0
    0;0;0

其中粗体 bin 对应于x=[3]y=[1;2]

因此,如果您想为向量投票,v(x,y)=[3,1]只需将粗体零加一即可。在这种情况下,投票v(x,y)=[3,2]将落入同一个箱中,因为 所需的准确性降低y,而投票v(x,y)=[3,3]将进入右侧的箱。

我希望这对您有所帮助,而不仅仅是让您更加困惑。;)

投票只是数组中的一个增量。

例如

[0, 0, 0, 0, 0, 0;
 0, 0, 1, 0, 0, 0;
 0, 0, 0, 0, 0, 0;
 0, 0, 0, 0, 0, 0]

将投票给 (2,3)。您可以将其扩展到您需要的任何维度