The tenacious Petra Kvitova will face Garbine Muguruza in the Qatar Open final after fighting back from the brink of defeat to beat world number one Caroline Wozniacki.

Kvitova looked to be heading out when Wozniacki was a break up three times in the second set after winning the first, but rallied to win a classic semi-final 3-6 7-6 (7-3) 7-5 in Doha on Saturday.

Wozniacki twice failed to serve out the match in the second set and paid the price as fired-up 16th seed Kvitova extended her winning run to 12 matches and secured her fourth victory in a row against the Australian Open champion.

Kvitova also trailed 3-1 in the second-set tie-break, but showed great resilience and produced some majestic winners to frustrate the top seed and broke twice in the final set to stay in the hunt for a second title of the year.

Wozniacki took advantage off too many Kvitova unforced errors in the first set, the steely Dane breaking twice to move a set away from another final.

It was looking bleak for Kvitova when she was broken to love in the first game of the second set after netting an overhead volley, but the Czech was back at serve at 3-3 after setting up the break opportunity with a stunning backhand winner.

Wozniacki twice edged back in front with breaks to lead 5-4 and 6-5, but could not finish off the job as the determined Kvitova hung in there to force a breaker, then let out a roar after steering away a forehand winner to take an absorbing contest to a deciding set.

Two-time Wimbledon champion Kvitova struck the first blow in the final set, going a break up to lead 5-4, but sent a forehand long when she had a first chance to serve out the match.

The left-hander was not to be denied, though, breaking for a sixth time and clenching her fists as Wozniacki sent a backhand return long to finally a topsy-turvy match in two hours and 35 minutes.