Royal Oak Deputy Chief Tom Goad said a resident recognized Charles from media reports as he was walking in the area of Campbell and 12 Mile Road in Royal Oak at approximately 7:30 a.m. Wednesday.
Officers verified his ID and brought the teen back to the Royal Oak Police Station. Dearborn Police were contacted and they picked up Charles' mother Jennifer Foster and brought her to Royal Oak, Goad said.
"They were reunited at the station," Goad said.
The 16-year-old was in good condition and was unharmed, according to the deputy chief.
Foster expressed gratitude to the local media and to the public for helping locate her son.
The teenager ran away from home late Saturday night.
Foster previously said that there was no known reason why Charles would run away, but in recent weeks he has shown increased agitation due to the changing weather.