A method for online calibration of a camera (2, 3, 4) on a vehicle, the camera (2, 3, 4) having camera rotational parameters, φ, θ, ψ, and camera translational parameters x c, y c, z c in a camera image coordinate system and the vehicle having a vehicle coordinate system, the method comprising: whilst the vehicle is moving relative to the ground, determining that the vehicle is travelling in a straight line and calibrating the camera rotational parameters, φ, θ, ψ, using a parallel geometrical method, wherein the parallel geometrical method comprises: whilst the vehicle is travelling in a straight line tracking two or more longitudinal features from at least two images captured by the camera over a period of time, adjusting the camera rotational parameters such that the recorded trajectories are parallel when mapped from the camera image coordinate system to the vehicle coordinate system; and determining that the vehicle is moving along a curved path and calibrating the camera translational parameters x c, y c whilst the vehicle is moving along a curved path, wherein the camera translational parameters x c, y c are calibrated by: tracking two or more features in at least two images captured by the camera (2, 3, 4) over a period of time, mapping the two or more features to a ground plane, fitting an arc to the mapped features, calculating a vehicle turning centre T c in the camera image coordinate system from the arc, determining a vehicle steering angle, calculating a vehicle turning centre T v in the vehicle coordinate system from the vehicle steering angle, determining the difference between the vehicle turning centre T c in the camera image coordinate system and the vehicle turning centre T v in the vehicle coordinate system, determining an offset to be added to the x c, y c translational parameters of the cameras so that the position of the vehicle turning centre T c in the camera image coordinate system corresponds to the position of the vehicle turning centre T v in the vehicle coordinate system, and applying the offset to the x c, y c translational parameters of the camera; and calibrating the camera translational parameters x c, y c independently of the camera rotational parameters φ, θ, ψ. whilst the vehicle is moving relative to the ground, determining that the vehicle is travelling in a straight line and calibrating the camera rotational parameters, φ, θ, ψ, using a parallel geometrical method, wherein the parallel geometrical method comprises: whilst the vehicle is travelling in a straight line tracking two or more longitudinal features from at least two images captured by the camera over a period of time, adjusting the camera rotational parameters such that the recorded trajectories are parallel when mapped from the camera image coordinate system to the vehicle coordinate system; and determining that the vehicle is moving along a curved path and calibrating the camera translational parameters x c, y c whilst the vehicle is moving along a curved path, wherein the camera translational parameters x c, y c are calibrated by: tracking two or more features in at least two images captured by the camera (2, 3, 4) over a period of time, mapping the two or more features to a ground plane, fitting an arc to the mapped features, calculating a vehicle turning centre T c in the camera image coordinate system from the arc, determining a vehicle steering angle, calculating a vehicle turning centre T v in the vehicle coordinate system from the vehicle steering angle, determining the difference between the vehicle turning centre T c in the camera image coordinate system and the vehicle turning centre T v in the vehicle coordinate system, determining an offset to be added to the x c, y c translational parameters of the cameras so that the position of the vehicle turning centre T c in the camera image coordinate system corresponds to the position of the vehicle turning centre T v in the vehicle coordinate system, and applying the offset to the x c, y c translational parameters of the camera; and tracking two or more features in at least two images captured by the camera (2, 3, 4) over a period of time, mapping the two or more features to a ground plane, fitting an arc to the mapped features, calculating a vehicle turning centre T c in the camera image coordinate system from the arc, determining a vehicle steering angle, calculating a vehicle turning centre T v in the vehicle coordinate system from the vehicle steering angle, determining the difference between the vehicle turning centre T c in the camera image coordinate system and the vehicle turning centre T v in the vehicle coordinate system, determining an offset to be added to the x c, y c translational parameters of the cameras so that the position of the vehicle turning centre T c in the camera image coordinate system corresponds to the position of the vehicle turning centre T v in the vehicle coordinate system, and applying the offset to the x c, y c translational parameters of the camera; and calibrating the camera translational parameters x c, y c independently of the camera rotational parameters φ, θ, ψ.