Fifteen carriages of the Ajmer-Sealdah Express came off the tracks early on Wednesday. All remaining passengers have now been rescued, officials say.
It was India's third major accident on its creaking railways in recent months.
Earlier senior Kanpur police official Zaki Ahmed said two people had died but Indian Railways did not confirm this.
"There were no casualties and 53 passengers were injured in the derailment," said railway spokesperson Anil Saxena.
He said two people had been seriously injured.
Train accidents are fairly common in India, where much of the railway equipment is out of date. More than 140 people died last month when another train derailed near Kanpur.
In July a train smashed into a van full of schoolchildren at a level crossing, killing eight of them.
The cause of the latest accident is not yet known and an inquiry has been ordered.
The derailment happened when the train was crossing a bridge over a dry canal. Eyewitnesses told local TV channels that there was dense fog when the carriages derailed.
"Our coach tilted to one side. I jumped out and saw a few coaches were derailed," passenger Rizwan Chaudhary told the Associated Press.
Last year, the government announced investments of $137bn (Â£111bn) over five years to modernise and expand the railways.
A passenger train derailment in India's northern Uttar Pradesh state has injured at least 50 people, railway officials say.