My cost is 2000$;
This task is difficult but not so expensive. I have done it before, stock market history data search.
How I see it: Using the Cordova I can easily make Android and iOS app for making photos and sending it to server. Server side will store in database pHash hashes for all products photos, with different resolution/precision(3-5 levels). Using pHash we can pick all matching photo on first level of precision, and pick some of them on level 2, 3 and so on.
It will work fast and will recognize photo even with colors manipulation.