Search is probably an over simplified description of your function, realistically you would probably need to show partial matches with a "your ingredients are 85% of what is needed" results you could also express as "To complete this recipe you would need $1.56 in additional ingredients, standard store packaging quantities may cost about $4.50."
Giving near matches would give some results where otherwise people might see Zero Results the majority of times.
This sounds like a good idea, it would require custom database and logic coding, perhaps a bit of AI (artificial intelligence) I suggest you do more research of similar existing technologies so you can write a reasonable complete requirement spec. for programmers at freelance marketplaces to bid on, there are a number of oversees programmers you can get for relatively little money, I hear there are a lot of accomplished coders in Russia and East Europe.
You could advertise for programmers at sites like vworker.com, elance.com pr odesk.com, those with positive feedback histories are safer investments.
The picture clicking interface is really more of a cosmetic packaging, it may be hard to depict some ingredients with a picture, you would have every spice package pictured.
Being able to fill in and store their kitchen inventory, which gets saved in a personalized database, would probably be needed so they only have to tell you once what they have on hand.
Some references to AI recipe programs (to help you develop the vocabulary to converse with contactors)
http://ubuntuforums.org/showthread.php?t=1909891
http://spectrum.ieee.org/computing/software/creating-recipes-with-artificial-intelligence/?utm_source=computerwise&utm_medium=email&utm_campaign=061213
http://axon.cs.byu.edu/Dan/673/wiki/lib/exe/fetch.php?id=cooking&cache=cache&media=673_pierre_finalpaper.pdf.
http://macgourmet.com/