@@ -18,6 +18,7 @@ import callCallback from "../utils/callcallback";
18
18
import { imgToTensor , mediaReady } from "../utils/imageUtilities" ;
19
19
import handleOptions from "../utils/handleOptions" ;
20
20
import { handleModelName } from "../utils/handleOptions" ;
21
+ import p5Utils from "../utils/p5Utils" ;
21
22
22
23
const IMAGE_SIZE = 224 ;
23
24
const MODEL_OPTIONS = [ "mobilenet" , "darknet" , "darknet-tiny" , "doodlenet" ] ;
@@ -248,7 +249,10 @@ class ImageClassifier {
248
249
"image" ,
249
250
"No input image provided. If you want to classify a video, use classifyStart."
250
251
) ;
251
- return callCallback ( this . classifyInternal ( image , number || this . topk ) , callback ) ;
252
+ return callCallback (
253
+ this . classifyInternal ( image , number || this . topk ) ,
254
+ callback
255
+ ) ;
252
256
}
253
257
254
258
/**
@@ -270,8 +274,11 @@ class ImageClassifier {
270
274
const classifyFrame = async ( ) => {
271
275
await mediaReady ( image , true ) ;
272
276
// call the callback function
273
- await callCallback ( this . classifyInternal ( image , number || this . topk ) , callback ) ;
274
-
277
+ await callCallback (
278
+ this . classifyInternal ( image , number || this . topk ) ,
279
+ callback
280
+ ) ;
281
+
275
282
// call recursively for continuous classification
276
283
if ( ! this . signalStop ) {
277
284
requestAnimationFrame ( classifyFrame ) ;
@@ -305,13 +312,10 @@ class ImageClassifier {
305
312
}
306
313
}
307
314
308
- const imageClassifier = ( modelName , optionsOrCallback , cb ) => {
309
- const args = handleArguments ( modelName , optionsOrCallback , cb ) ;
310
-
311
- const { string, options = { } , callback } = args ;
312
-
313
- const instance = new ImageClassifier ( string , options , callback ) ;
314
- return instance ;
315
- } ;
316
-
317
- export default imageClassifier ;
315
+ export const imageClassifier = p5Utils . maybeRegisterPreload (
316
+ ( modelName , optionsOrCallback , cb ) => {
317
+ const args = handleArguments ( modelName , optionsOrCallback , cb ) ;
318
+ const { string, options = { } , callback } = args ;
319
+ return new ImageClassifier ( string , options , callback ) ;
320
+ }
321
+ ) ;
0 commit comments