1. A method for visually tracking a real-world object by estimating three dimensional parameters of the object, the method comprising: capturing a first image at a camera at a first time; preprocessing a first region of the captured first image to obtain first input features, the object expected to be in the first region at the first time based on a first cue; initializing a tracker template based on the first input features responsive to indication of a second region of the first image received from a source other than the first cue; capturing a second image at the camera at a second time subsequent to the first time; preprocessing a third region of the second image to obtain second input features, the object expected to be in the third region in the second time based on a second cue; estimating an appearance of the object at the second time based on a two dimensional position and a two dimensional velocity of the object determined by the first input features and the second input features; estimating a depth of the object at the first time based on a third cue obtained at the first time; estimating a change of the depth of the object between the first time and the second time based on the third cue and a fourth cue obtained at the second time; determining a relative change of size of the object by performing a two dimensional transformation on the first and second images or the first and second input features; updating the estimated depth and the change of the depth of the object based on the relative change of the size of the object; combining the updated depth of the object, the change of the depth of the object, two dimensional position of the object, and the two dimensional velocity of the object to obtain a three dimensional coordinate of the object at the second time; and outputting the three dimensional coordinate of the object.