Hmm... if your not too much in a rush to get these products then I would by all means wait until the 600 series of cards will come out by nvidia. They sure will be great, no doubt about it. Although it may be quite frustrating for you to wait as there is next to no info out there on this. They should come out between now and around May/June. It's not too long of a wait considering the 500 series is getting a bit old now.
BUT, if you don't have the patience then by all means either a 7970 or that GTX 580. If you're just looking at 6970 vs gtx 580 then the winner is obvious. They aren't even on the same tier. The GTX 580 is far more superior. BUT the 7970 is priced very similarly and is about 10-15% better in performance. On the other hand, AMD's drivers aren't the best... and nvidia drivers kick ass...
So, my recommendation(s)-
1. If you can, wait for the gtx 600 series to come out. There IS a tiny amount of info online that you might get something from but they will definitely by all means be much better than what AMD has to offer right now because of the competition. Nvidia will work more on the 600 series and it will come out better than AMD's 7000 series. But then AMD will come out with something better than that, etc. etc. But that's a far ways off.
2. Get a GTX 580 if you don't have the patience. Sure, it's not as good as the 7970 but the good drivers makes up for that... Or maybe you should get a 7970. Well, either one is a good choice. The 7970 has a better memory interface (and more memory) and has slightly better performance while the 580 has better drivers and very similar performance.
3. If you want to save yourself quite a bit of money then wait for the 600 series to come out. Then, when many others are abandoning their gtx 580s and selling them for cheap on eBay (if you know where to look) to get a 600 series card then you can just go and grab 2 gtx 580s and SLI them (if you want ultimate performance) or just go with one.
Hope this helps and doesn't make you more confused! =P I'd be glad to answer any other questions.