You can't go wrong with either. They both perform exceptionally good at 1080p.
If you want high overclocking headroom and more VRAM, get the HD7970.
If you're concern about power usage, wants features like PhysX, Adaptive Vsync and TXAA, get the GTX 670.
A comparison of the two: http://www.anandtech.com/bench/Product/508?vs=598