How did you assign the picture? using fck editor or the file system? make sure that your file system object (in db) is accurately synchronized. The way to do this is by going to host->File System on top right side check the box named "recursive" and then click "sycn files", now on the same page in the left side where you see the folders list hit "sync folders". This will sync the host files; now for admin files (portal files) do exactly the same thing but this time using "admin->file system" menu.
Now, go to "host->site settings", "performance settings" click "clean cache"; if set up is on your local machine stop the website and delete all the files inside "portals\0 or whatever your portal number is\cache" directory. Now start the website, go back to "host -> site settings" and then hit "restart application".
Now close the browser instance. Open a new browser instance. Go to Store Admin, edit the product and re-assign the picture using "file on this system" option and by browsing the picture. (you have to make sure that on all the directory tree you have given permission to "all users" to read in the admin->file system page).
If this does not work, please provide exact steps of how did you assign the picture to the product and does the directory tree entirely has "read/view" permission set for "all users" where the picture is located.
A corrupt file system object can cause this issue, we stumbled across this issue just on 3/31 and we had to rebuild the "file system" object; in our case it got corrupted because the scheduler which is reponsible to sync the file system failed with a exception.
Above steps are valid for current store version under 4.8.1.
Sincerely,