British actress Emma Watson has been photographed topless and covered in muddy water with an exotic flower between her teeth for a new book to raise money for charity.

Emma Watson has stripped off for charity.

The 22-year-old star - best known for her role as Hermione Granger in the 'Harry Potter' franchise - has been photographed topless and covered in muddy water with an exotic flower between her teeth for a series of portraits in a new photo book and exhibition called 'Natural Beauty.'

The photo is part of a series of celebrity photos for the book, with all proceeds donated to Global Green USA.

The actress is clearly excited to be involved with the campaign, as she tweeted a photo of herself from the shoot, with the caption: "'My friend is supporting GlobalGreenUSA with his book Natural Beauty. It's out now. : ) X' (sic)"

While she is happy to take her clothes off in aid of a good cause, Emma has ruled herself out of playing the female protagonist Anastasia Steele in a film based on E. L. James' best-selling erotic novel 'Fifty Shades of Grey'.

She tweeted: "Who here actually thinks I would do 50 Shades of Grey as a movie? Like really. For real. In real life (sic)."