I have a robot whose pose $(x, y)$ is defined relative to the global frame. I have a sensor which estimates the robot's current pose in the global frame, and the sensor is known to have Gaussian error. The robot has a sensor which estimates the robot's local velocity $(u, v)$ relative to the robot's own frame, and the sensor is known to have zero error, so the motion model is known perfectly.
I now want to track the estimated pose of the robot in the global frame, using a Kalman filter. I know that my observation noise is Gaussian, which is one requirement of the Kalman filter. The other requirement is that the dynamics model is linear. Most examples of this type (global position frame, local velocity frame) I have seen say that the Extended Kalman filter is needed. However, I am not sure about whether this is true for my case, because my velocity sensor has zero error. I have two ideas:
1) The velocity sensor has zero error, and so the motion model is known perfectly. So, at every timestep, the estimated state is simply the previous state, plus the velocity multiplied by the timestep. Since there is no uncertainty in the velocity, there is no uncertainty in the motion. Therefore, I can use a regular Kalman filter.
2) Even though the motion model as zero noise, the dynamics itself is still non-linear. This is because to transform from the local frame to the global frame requires a rotation, which is a non-linear function since it involves sin and cosine functions. There may be zero "extra" uncertainty caused by the motion, but the motion model is still non-lienar. Therefore, I must use an extended Kalman filter.
Please could somebody explain which is correct, or if neither, what the correct solution is?