I am trying to get a simple implementation of Lucas-Kanade-Algorithm in 1D using a sigmoid function just as an arbitrary choice!
In the following code i want to get the displacement $v$ of the two sigmoid-functions using the iterative method proposed in LK-paper!
but the problem is that $v$ is not converging to the real displacement value! Can you tell what am i doing wrong?
by the way the code below is written in Julia.
x = linspace(-5, 5, 100)
λ = 1
dt = 0.5 # the real displacement
σ(t) = 1 ./ (1 + e.^(- λ .* t)) # sigmoid
dσ(t) = λ .* σ(t) .* (1 - σ(t)) # sigmoid derivative
g(t) = σ(t - dt) # shifted sigmiod
x0 = 0 # displacement at the center of coordinate system (0, 0)
v = 0 # displacement vlaue, should converge to dt
x = x0
# now starting with newton-mthod iterations
for i=1:5
I_t = σ(x) - g(x) # temporal derivative
I_x = dσ(x0) # spatial derivative does not change
v = v - (I_t/I_x)
x = x + v
print("$(v) \n")
end