Thanks for posting. Ok so when I do a Chrome performance profiling I see that there is big pause when calling:
processImg = function processImg(e){return s(this,void 0,void 0,(function*(){return r.engine().startScope(),r.enableProdMode(),r.setBackend("webgl"),yield this.GetFeature(),r.engine().endScope(),0}))}

1069×658 36.9 KB

I see you are setting backend to WebGL here. Can you create a build that forces “wasm” instead? Unfortunately I can not modify or understand where TF library is located in your minified code to do that myself so may be easier for you to make version that forces CPU execution via web assembly.
Chrome uses GPU to render webpage DOM, so if this is taking up 100% of GPU resources then maybe that is what is causing the block as WebWorker is more about having different threads on CPU.