I want to know if an Arduino Mega 2560 can process an image taken by a 5MP camera.
That would depend upon what you mean by "process" and how fast you wanted it "processed". It's probably worth considering that the Arduino Mega doesn't have enough native RAM to hold but a very small fraction of a 5 MP image which makes it more than a little difficult to do any meaningful image processing.
I think MrMark is being too generous. The answer is "No."
As always, the use of cameras with teh base Arduinox is a bit of a "party trick". If you actually want to process video, you would use a Raspberry Pi or such.
The Arduino can function as a slow stream processor between the camera and a data channel such as USB or Ethernet, though why you would want to do this while proper USB and IP cameras are readily available is a pertinent question.