1. A method for simulating an unmanned aerial vehicle (UAV) in a simulated environment, said method comprising: (1) receiving a first simulated view of said simulated environment from a graphical simulator configured to simulate at least one visual sensor positioned on said simulated UAV; (2) estimating pitch, roll and groundspeed associated with said simulated UAV, based at least in part, on said first simulated view from said simulated visual sensor, using a first processor, wherein said pitch and said roll are based on an angle of said simulated UAV relative to a simulated horizon in said simulated environment, said simulated horizon determined by a Hough transformation of an output of a Sobel edge detection filter applied to said first simulated view, and wherein said groundspeed is based on a block matching algorithm configured to match a region of said first simulated view to a region of a previous simulated view and to estimate motion based on a difference in position of said region of said first simulated view and said region of said previous simulated view, wherein a size of said region is based on a maximum groundspeed, altitude and field of view of said simulated visual sensor; (3) comparing said estimated pitch, roll and groundspeed, to data generated by a simulated global positioning system (GPS), said comparison to evaluate said simulated visual sensor; (4) determining at least one of a position and an orientation of said simulated UAV, based at least in part, on said estimated pitch, roll and groundspeed, using said first processor; (5) simulating said UAV in said simulated environment at said at least one of said position and said orientation, using a second processor; (6) generating a second simulated view based on at least one of said position and said orientation; and (7) repeating steps 1 through 5 using said second simulated view.