And disable the data collection views by changing client/init.ts to the following:
import { DataCollectionClientViews } from "./collection-views";
import { ClassificationClientViews } from "./classification-views";
import { getIngestionApi, storeIngestionApi, getRemoteManagementEndpoint,
storeRemoteManagementEndpoint, storeStudioEndpoint, getStudioEndpoint } from "./settings";
import { CameraDataCollectionClientViews } from "./camera-collection-views";
import { DataCollectionKeywordClientViews } from "./collection-keyword";
import { MicrophoneDataCollectionClientViews } from "./microphone-collection-views";
export default async function mobileClientLoader(mode:
'classifier' ) {
storeIngestionApi(getIngestionApi());
storeRemoteManagementEndpoint(getRemoteManagementEndpoint());
storeStudioEndpoint(getStudioEndpoint());
if (mode === 'classifier') {
let client = new ClassificationClientViews();
await client.init();
(window as any).client = client;
}
// tslint:disable-next-line:no-console
console.log('Hello world from the Edge Impulse mobile client', mode);
}
And also delete the “Switch to data collection mode” button in the classifier.html file, lines 160-164:
<div class="row" id="inferencing-region">
<div class="col text-center mt-4">
<a class="btn btn-secondary" href="index.html" id="switch-to-data-collection">Switch to data collection mode</a>
</div>
</div>
Then follow the README steps to load up an ngrok forwarder, then using the ngrok URL to share the mobile classifier only, append your project’s Admin API key to the end of the URL, for example: https://xxx.ngrok.io/classifier.html?apiKey=ei_xxx
And you’ll have a locally running version of just a mobile classifier for your project!
Of course, this requires you to be running the python server and ngrok forwarder constantly from your computer, and requires you to expose your Admin API key. However, it’s a start. I’ll let @janjongboom know of your interest for a classification/deployment only API key!