Reading an Image file on FPGA for processing
If you're doing something simple to the image that only involves one pixel at a time (the values of neighboring pixels don't matter), then you might as well do it in software, because the time that it takes is going to be dominated by the I/O, not the processing. The speed of the FPGA has no advantage here.

On the other hand, if you do eventually want to do more complex operations, then the question is too broad to be answered here.

Generally speaking, small to medium range FPGAs do not have enough on-chip memory to store an entire image at once. Anything that requires a "frame buffer" is usually going to require off-chip memory, such as an SDRAM chip, and the on-chip memories will be used as line buffers during the processing.