If you are storing 100 million images at 200KB each, that comes out at 20TB!
I would calculate the costs of something like S3 versus buying five 4TB HDDs and running a network file server.
You're going to save a ton of money hosting this yourself. I would go with two used powerful desktop PCs. One as a DB server and the other as the file server.
Store the images on the file server and store the image's path in the database server.