Hundreds of protesters have marched through the US town of Ferguson in Missouri, calling for justice three weeks after a white police officer shot and killed Michael Brown, an unarmed black teenager.

Organisers said on their Facebook page that the march on Saturday was held to protest against police killings, brutality, profiling and cover-ups

Marchers began gathering in a restaurant car park before walking to the spot where Brown was shot, the St Louis Post-Dispatch reported.

Darren Wilson shot Brown on August 9, sparking violent protests and drawing global attention to racial unrest in the US.

For days after the shooting, police and demonstrators in Ferguson clashed nightly, with authorities criticised for mass arrests and the use of heavy military equipment.

Authorities have released few details about the killing, but the US Justice Department has opened an investigation in to .

In differing accounts, police have said Brown struggled with Wilson, who shot and killed him. But some witnesses say Brown held up his hands and was surrendering when he was shot multiple times in the head and chest.

Meanwhile, several hundred people showed up in a rally outside of a Walmart in Beavercreek, in the state of Ohio, on Saturday to urge release of a surveillance video from early this month of police shooting John Crawford.

Crawford, who was also black, was holding a BB gun inside the store when he was shot dead.

Source: Agencies