Unfortunately databases migrations will only run a single time for a given environment (once for localhost / once for heroku). That means that once it ran the migration, it added the picture column to the users table and that it was done. Any time you run "rake db:migrate" again it doesn't know that the migration changed so it won't do anything.
You may want to revisit this video, for more in-depth details about database migrations.
So rule of thumb: never edit a migration after you run it.
When your database is out of sync with the rules that we wrote to build them up. Often times the easiest thing to do will be to tear down your database and put it back up. You will lose all you user/places/etc but by running all of them start to finish again you won't run the migration in the intermediate state.