tsai-calibration icon indicating copy to clipboard operation
tsai-calibration copied to clipboard

Why estimate the k1 by (u2 - d2) / (d2 * d)

Open busyyang opened this issue 1 year ago • 0 comments

Thanks for sharing this amazing work. It helps me a lot. But I am little confused why estimate the value of k1 by (u2 - d2) / (d2 * d)

def estimateKappa(points):
    def estimateKappaP(point):
        u2 = (point.projectedSensor[0] * point.projectedSensor[0]) + (
                point.projectedSensor[1] * point.projectedSensor[1])
        d2 = (point.sensor[0] * point.sensor[0]) + (point.sensor[1] * point.sensor[1])
        d = math.sqrt(d2)
        return (u2 - d2) / (d2 * d)

    return np.mean(list(map(estimateKappaP, points)))

from my side, as we know that: $x_u=x_d(1+k_1r^2)$ $y_u=y_d(1+k_1r^2)$

where $r^2=x_d^2+y_d^2$. But it does not accord with this result (u2 - d2) / (d2 * d).

busyyang avatar Mar 14 '23 10:03 busyyang