Re: image processing
DSP is simply a special purpose processor, designed to speed up conventional Digital Signal Processing algorithms (e.g. having features that facilitate MAC - Multiply Accumulate operations)...They are much easier to program as compared to FPGAs, because here the programming is done in C, Assembly or Matlab. If you code doesn't have any logical or syntax errors; it works in the first go!
FPGA is a raw-device. You program it using Verilog or VHDL etc....Your code is first synthesized into hardware (gates, flip-flops, RAM, multipliers, adders) and then dumped into the FPGA. Since, you are designing a special purpose hardware for you application, it is always much faster (50 to 500 times as compared to DSP, a/c to Clive Maxfield) as there are no instruction fetch-decode-execute cycles involved as in a processor (and in DSP)....However, the complete project takes a lot more time to finish; b/c you have to perform functional simulation and then Post PAR (Place & Route) simulation. Even if the code doesn't have any logical or syntax errors, it might not synthesize properly. Also, FPGAs are costlier than DSP (the chip itself, as well as the PCB design).....
So, if you are processing data at speeds of milli or few hundred microseconds, its better to use DSP; if you have to process data in microseconds or nanoseconds, you MUST use FPGA (which is costly and takes more time!).
Since, you are a beginner and it will take a LOT of time to learn either DSP or FPGAs, as well as Digital Image Processing (can take upto 8 or 12 months, depending on your background and available time)......I would recommend using a PC with Matlab; interface a digital camera to the PC and use matlab's Image Processing and Acquisition Toolboxes....learning these with the help of Gonzalez-Woods Textbook would take around 2 months and then you can move to your design.
HOPE THIS HELPS!