moconn68 / depic_app

Upcoming children's game for Android and iOS
1 stars 0 forks source link

Object Recognition Strategy Evaluation #7

Open moconn68 opened 3 years ago

moconn68 commented 3 years ago

We need to determine long(ish) term how we want to handle object recognition. Currently, we are relying on the Clarifai API for our recognition needs. This is nice because it is much simpler for us and is pre-trained and quite accurate. However, it relies on having an internet connection, and is only free for the first 5,000 uses per month (1 picture in app = 1 use). This should get us by for a while but we should consider alternative strategies for the long term should our userbase grow.

Some ideas:

  1. Upgrade to Clarifai Essential plan. This is $1.20 per 1,000 uses (pictures), which is fairly cheap depending on the revenue we generate from the app. This does not solve the requirement of internet for the app, but this is not a deal-breaker as many apps require internet for use nowadays anyways.
  2. Look into TensorFlowJS and/or TensorFlow Lite for on-device object recognition. This frees us from both external costs and internet connectivity requirements, but requires much more work and will almost certainly be less accurate.
moconn68 commented 3 years ago

This has been very much so a back-burner issue, but with the privacy thing you brought up the other day @jhuang1998 we may have to think about this a bit more. I think the ideal solution is to continue to use Clarafai because it is much, much easier and work intensive, as well as performing better at image detection, but if it is a a privacy concern to the point where we can't publish the app we may be forced to roll our own on-device neural network for object recognition.

The above is no small task and I am by no means an expert in ML, but it is possible. It would delay the app launch by quite a bit though so let's try our best to stick with Clarafai for now and see if we can get away with disclaimers and whatever else may be required to make it through the app store review processes.