STUTTGART (Germany) (AFP) - World number one Caroline Wozniacki avenged her shock Miami defeat to Andrea Petkovic by battling back to beat the German crowd favourite 6-4, 6-1 and reach the Stuttgart semi-finals on Thursday. Despite finding herself 4-1 down after just 21 minutes of the first set, the 20-year-old Danish top seed roared back to break Petkovic, ranked 19th in the world, three times to take the opener. Petkovic then ran out of steam and the 23-year-old had few answers as Wozniacki blazed into a 5-0 lead in the second set. "It was tough for me to come back in the first set," admitted Wozniacki, who has won her last seven matches after also winning the Charleston tournament. "I am sorry I beat the home favourite, but I hope the crowd will support me now. "I feel very good at the moment, my volleys were working really well, which they haven't always done, and I played some good shots." Wozniacki will now play Poland's Agnieszka Radwanska in Saturday's semi-final after the 22-year-old needed two hours to beat German wild-card Kristina Barrois 7-5, 6-3. Earlier, Australia's Samantha Stosur recovered from losing the first set to knock out second-seed Vera Zvonareva. The 27-year-old fifth-seed battled back for a 2-6, 6-3, 7-6 (7/3) victory over the Russian, who is ranked third in the world, in just over two-and-a-half hours. Having made an early exit from January's Australian Open, Stosur, ranked seventh in the world, is hoping to use Stuttgart to recapture the form which helped her reach the French Open final last year. "These three-set matches were what I had been struggling with, so to win two back-to-back after being a set down today, it is very encouraging," Stosur told AFP having also beaten Daniela Hantuchova in a three-setter on Wednesday. In her semi-final, Stosur will play Germany's Julia Goerges, ranked 32nd in the world, who beat the Australian's doubles partner Sabine Lisicki 6-4, 6-4. "I am glad that I served well. I knew that Sabine is back on the road and has been playing well, so it was good to get a win," said Goerges. The German is still in the hunt to claim the winners prize of a brand-new sports car worth 111,000 US dollars.