DSA images suffer from challenges like system X-ray noise and artifacts due to patient movement. In this paper, we present a two-step strategy to improve DSA image quality. First, a hierarchical deformable registration algorithm is used to register the mask frame and the bolus frame before subtraction. Second, the resulted DSA image is further enhanced by background diffusion and nonlinear normalization for better visualization. Two major changes are made in the hierarchical deformable registration algorithm for DSA images: 1) B-Spline is used to represent the deformation field in order to produce the smooth deformation field; 2) two features are defined as the attribute vector for each point in the image, i.e., original image intensity and gradient. Also, for speeding up the 2D image registration, the hierarchical motion compensation algorithm is implemented by a multi-resolution framework. The proposed method has been evaluated on a database of 73 subjects by quantitatively measuring signal-to-noise (SNR) ratio. DSA embedded with proposed strategies demonstrates an improvement of 74.1% over conventional DSA in terms of SNR. Our system runs on Eigen's DSA workstation using C++ in Windows environment.