That is from guru 3d I believe, and it is a decent read, and toms review also confirms their performance findings. The 670 does lead but not by as much as bf3 that you quoted.
And though the 7970 is a good overclocker, I would still go with the 670 as I like nvidias feature set more. I really like ambient occlusion especially. If you are an ocer the 7970 is still viable in my opinion though.
I've seen reviews where the 7970OC and the 680OC are compared and they come out on a tie, but then I look at Tom's and see that the 7970 is slightly beat by the 670 in games like BF3. So I'm not too sure.
The GTX 670 is a marvel of efficiency, using very little power with quiet performance while remaining in the same performance bracket as other more expensive video cards. Don't discount the added value of PhysX, Adaptive VSync, FXAA, TXAA, and forced Ambient Occlusion.