Dear App Inventor,
I was hoping you could answer some questions to aid me in progressing a project I am developing further:
I am designing an app which uses image classification to detect objects. I have made a model using Personal Image Classifier, but I have tried other machine learning platforms such as Lobe AI, as it allows me upload more images. Lobe Ai models can be exported in several forms, eg. TensorFlow. I was wondering if App Inventor is compatible with models like Lobe? If not, are there any other alternatives you would suggest?
Thank you very much in advance and I'm looking forward to hearing from you,
If it can export TensorflowJS compatible models, then it should be doable. The way PIC and other AI extensions we publish work is by loading a simple page in the WebViewer and using that to capture and process the images through Tensorflow.js.
For your reference, here is the source code for the PIC extension so you can look at the JavaScript. The assets needed for the WebViewer can be found in the assets directory.
Thank you very much for your help! I'll try it out and get back to you on it
Hi Evan,
I uploaded a Tensorflow.js model from Lobe to App Inventor, and the Personal Image Classification extension to my app. I also designed a model using PIC to compare with the lobe model. Unfortunately when I tested it, the app would not work with the Lobe model, but did work with the PIC model. Maybe this could be because I used the PIC extension, which isn't compatible with any other type of model... Is there any other type of 'extension' I could use in conjunction with the Lobe model or should I try to read the model using another method?
Thank you very much for your advice, it is greatly appreciated
PIC only supports its own model format and nothing else. My intent when giving you a pointer to the code is that you could see how we load models in JavaScript and make use of them in the WebViewer. You would need to write similar code yourself to use the Lobe model. There may be existing examples on the web you can adapt rather than having to write it from scratch.