Malaysian villagers caught more than 300 stray dogs and dumped them on a mangrove island, driving the canines to cannibalism after weeks of starvation, animal welfare activists said today.

The plight of the dogs, which were cast away on a small uninhabited island off the western Selangor state, was revealed when activists released photographs showing the dogs eating the carcasses of those that had died.

Residents of a fishing village on Pulau Ketam, another island off Selangor, caught the dogs and took them to Pulau Tengah island last month.

The villagers said they had not intended to be cruel and had believed the dogs could survive on Pulau Tengah's wildlife.

They said they had wanted to rid their island of the animals, which defecate on the streets and sometimes bite children.

A team from the Selangor Society of Prevention of Cruelty to Animals (SPCA) visited Pulau Tengah on Monday and saw several emaciated dogs "crowded and hunched around something ... they were hungrily feasting on the remains of another dog", the organisation said in a statement.

"Nearby, a weak dog was screaming because several dogs were trying to bite her," the statement added.

SPCA volunteers had so far rescued two dogs and left food for the others, Jacinta Johnson, an official with the group, said. The SPCA estimates that 200 dogs could have survived.

Pulau Ketam's residents said some dogs tried to swim back to the island, which is about a 30-minute boat journey from Pulau Tengah, but it was not clear how many had succeeded.

Efforts to save the dogs have been slow because many are now fearful of people and flee into mangrove swamps when rescuers approach, Johnson said.

Activists have persuaded Pulau Ketam's villagers not to dump any more dogs and are considering measures such as sterilisation and relocation to ease problems posed by an estimated 2,000 strays.