Local movement and inaccurate motion vectors affect the accuracy of global motion estimation seriously. In order to solve this problem, a fast and robust global motion estimation algorithm is proposed in this paper. Firstly, block matching algorithm (BMA) is used to estimate motion vectors. Then the inaccurate motion vectors are excluded by gradient mean residual error method to improve the accuracy of estimated global motion field. Secondly, the initial global motion parameters are estimated using a 6-parameter affine model and they are iteratively refined by matching weighting method. Thus the most accurate global motion parameters can be obtained. Experimental results show that the proposed method is efficient and robust in terms of both computational complexity and accuracy.