initial implementation of update_image