At least 40 people have been injured in a train crash close to the west German city of Dusseldorf after a passenger and freight train collided, police said.

Authorities said the accident occurred near the train station in the town of Meerbusch.

Initial reports gave the number injured as 50, a figure that was later revised down.

The 41 injured include serious and minor injuries, although none are said to be life-threatening, according to the local fire department.

Emergency crews were on the scene helping to unload people from the passenger train.

A photo posted by the Meerbusch fire department showed the passenger train partially derailed but still upright.

In a series of tweets the local fire service confirmed five people were injured with "up to 150 people" still stuck inside the train.

A hanging cable was impeding the rescue efforts, the department said.

Loading....

The accident occurred on the line between Meerbusch-Osterath and Neuss, both suburbs in the west of Dusseldorf, at around 7.30pm local time (8.30pm GMT).

Federal Police earlier said up to 50 were injured, while state-run German rail company Deutsche Bahn (DB) gave the figure as 20.