> I'm not trying to pick on Google for shutting things down
People usually say what they are thinking. In this case, I can certainly appreciate and respect questioning what Google's actions will be in the future, but the problem at hand is that none of us can tell the future. By attempting to do so, and creating a situation where we literally believe two conflicting things at once, we get mired down in illogical arguments that end up making zero sense. Worse, when we post those illogical arguments, others get dragged into the dissonance and end up making similar arguments that make no sense and the result of that is others get lost in the mess we made. For example:
> I think Google understands how big this could be (well, why else do they do anything I suppose?)
Do we really know Google understands how big this could be, or is that just us wishing they wouldn't "shut it down later"? Both thoughts are speculative, at best.
As for me, I have no way to know if I can trust Google will leave these APIs up for as long as I need them or will not change the methods in the APIs at some point breaking my code I've written to talk to it. The latter happens to me all the time!
I realize this comment may stir some emotional responses. All I would ask is that we consider alternative ways of thinking about these illogically binding "feelings" and expand our awareness to the fact that what we really want is our software, regardless of who wrote it, to be open, transparent, trustworthy and capable of running wherever and whenever we want it, regardless of when that is.
Obviously we have a long ways to go before that statement can be a reality. One can hope though!
There is also http://www.deepdetect.com
Now, making it production-quality, efficient, scalable, and the rest -- well, y'know. That's why people use cloud-based services in the first place.
But I think there's less fundamental lock-in than you think. Cloudinary, for example, will let you upload an image and get a tag out. ABBYY and OmniPage/Nuance and others offer cloud-based OCR.
I'm biased - I'm at Google this year - so take this with a grain of salt, but while I have the feeling that Google can do it better and more affordably than a small team could do it on their own, I don't think that Google pulling the API would leave people up a creek without a paddle.
Google's face/landmark/label/text/logo detection models are open source? Or there exist open source pretrained models?
The quality and size of the training set is (at least) as important as the machine learning tools. I imagine Google has access to a pretty big data set, along with the computing resources to process it.
Google's Inception v3 pre-trained image recognition model is open source: https://www.tensorflow.org/versions/r0.7/tutorials/image_rec...
That's the hard part because as you note this is computational intensive (the training data is actually open source as the ImageNet dataset)
There is existing code for the others part that perform pretty adequately (with the possible exception of landmark detection).
Eg:
Face detection: http://docs.opencv.org/master/d7/d8b/tutorial_py_face_detect...
Logo Detection: http://www.pyimagesearch.com/2015/01/26/multi-scale-template...
TensorFlow Serving: https://github.com/tensorflow/serving
ReCeption (actually they call in Inception v3. Not sure where I got the ReCeption name - though I'm sure I read it somewhere?): https://www.tensorflow.org/versions/r0.7/tutorials/image_rec...
Using a SVN on neural network extracted features: http://blog.christianperone.com/2015/08/convolutional-neural...
If you want a quick and dirty version here's some Python to create a web service that calls a Caffe based Image recognizer: https://gist.github.com/nlothian/c3519adb81b3452c1938
https://www.ibm.com/smarterplanet/us/en/ibmwatson/developerc...
curl -H "Authorization: Bearer {access_token}" --data-urlencode "url=YOUR_IMAGE_URL.jpg" "https://api.clarifai.com/v1/tag/"
...you get the top 20 tags for that image and their confidence levels, too. Their homepage at Clarifai.com has a pretty good demo that lets you see it in a more visual way.Though I admit I also hesitate to replace that API with the google offering for the one app where I actually use it. The results would probably be better, but I just got burned again from stuff shutting down, and I remember Google Reader.
But the Vision Api looks cool.
If you need to understand emotional reaction on video sources, our API can fill in the gaps not currently filled by Google's Cloud Vision API: https://www.kairos.com/emotion-analysis-api
Disclosure: I'm CTO of Kairos.com
I think Google understands how big this could be (well, why else do they do anything I suppose?). I guess you'd just have to put faith in them. I imagine those that do will build some amazing projects from this.
So you're passing up what could be substantial benefits, Google isn't going to close it anytime soon, if they do you will have months of warning, and can easily replace it with a competitor or your own.
http://www.cloudtp.com/2016/01/21/dont-let-vendor-lock-in-fe...
TL;DR: You don't get the girl if you don't ask for a dance :)
So for now, my best idea is to use it to build something fun with my kids.
If only Google would adopt some sort of policy where they would let you download the dataset+code when they shut something off...
I'm not trying to pick on Google for shutting things down; I would feel similarly if this API were from Microsoft or Facebook. It's not the first time there's been an API that I think is really cool, but was very apprehensive about actually using for anything serious.