Socket
Socket
Sign inDemoInstall

@tensorflow-models/coco-ssd

Package Overview
Dependencies
15
Maintainers
9
Versions
17
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.2.2 to 2.2.3

1

dist/classes.js

@@ -19,2 +19,3 @@ "use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.CLASSES = void 0;
exports.CLASSES = {

@@ -21,0 +22,0 @@ 1: {

4

dist/coco-ssd.es2017.esm.min.js
/**
* @license
* Copyright 2021 Google LLC. All Rights Reserved.
* Copyright 2023 Google LLC. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License");

@@ -17,3 +17,3 @@ * you may not use this file except in compliance with the License.

*/
!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports,require("@tensorflow/tfjs-converter"),require("@tensorflow/tfjs-core")):"function"==typeof define&&define.amd?define(["exports","@tensorflow/tfjs-converter","@tensorflow/tfjs-core"],a):a((e=e||self).cocoSsd=e.cocoSsd||{},e.tf,e.tf)}(this,(function(e,a,m){"use strict";const i={1:{name:"/m/01g317",id:1,displayName:"person"},2:{name:"/m/0199g",id:2,displayName:"bicycle"},3:{name:"/m/0k4j",id:3,displayName:"car"},4:{name:"/m/04_sv",id:4,displayName:"motorcycle"},5:{name:"/m/05czz6l",id:5,displayName:"airplane"},6:{name:"/m/01bjv",id:6,displayName:"bus"},7:{name:"/m/07jdr",id:7,displayName:"train"},8:{name:"/m/07r04",id:8,displayName:"truck"},9:{name:"/m/019jd",id:9,displayName:"boat"},10:{name:"/m/015qff",id:10,displayName:"traffic light"},11:{name:"/m/01pns0",id:11,displayName:"fire hydrant"},13:{name:"/m/02pv19",id:13,displayName:"stop sign"},14:{name:"/m/015qbp",id:14,displayName:"parking meter"},15:{name:"/m/0cvnqh",id:15,displayName:"bench"},16:{name:"/m/015p6",id:16,displayName:"bird"},17:{name:"/m/01yrx",id:17,displayName:"cat"},18:{name:"/m/0bt9lr",id:18,displayName:"dog"},19:{name:"/m/03k3r",id:19,displayName:"horse"},20:{name:"/m/07bgp",id:20,displayName:"sheep"},21:{name:"/m/01xq0k1",id:21,displayName:"cow"},22:{name:"/m/0bwd_0j",id:22,displayName:"elephant"},23:{name:"/m/01dws",id:23,displayName:"bear"},24:{name:"/m/0898b",id:24,displayName:"zebra"},25:{name:"/m/03bk1",id:25,displayName:"giraffe"},27:{name:"/m/01940j",id:27,displayName:"backpack"},28:{name:"/m/0hnnb",id:28,displayName:"umbrella"},31:{name:"/m/080hkjn",id:31,displayName:"handbag"},32:{name:"/m/01rkbr",id:32,displayName:"tie"},33:{name:"/m/01s55n",id:33,displayName:"suitcase"},34:{name:"/m/02wmf",id:34,displayName:"frisbee"},35:{name:"/m/071p9",id:35,displayName:"skis"},36:{name:"/m/06__v",id:36,displayName:"snowboard"},37:{name:"/m/018xm",id:37,displayName:"sports ball"},38:{name:"/m/02zt3",id:38,displayName:"kite"},39:{name:"/m/03g8mr",id:39,displayName:"baseball bat"},40:{name:"/m/03grzl",id:40,displayName:"baseball glove"},41:{name:"/m/06_fw",id:41,displayName:"skateboard"},42:{name:"/m/019w40",id:42,displayName:"surfboard"},43:{name:"/m/0dv9c",id:43,displayName:"tennis racket"},44:{name:"/m/04dr76w",id:44,displayName:"bottle"},46:{name:"/m/09tvcd",id:46,displayName:"wine glass"},47:{name:"/m/08gqpm",id:47,displayName:"cup"},48:{name:"/m/0dt3t",id:48,displayName:"fork"},49:{name:"/m/04ctx",id:49,displayName:"knife"},50:{name:"/m/0cmx8",id:50,displayName:"spoon"},51:{name:"/m/04kkgm",id:51,displayName:"bowl"},52:{name:"/m/09qck",id:52,displayName:"banana"},53:{name:"/m/014j1m",id:53,displayName:"apple"},54:{name:"/m/0l515",id:54,displayName:"sandwich"},55:{name:"/m/0cyhj_",id:55,displayName:"orange"},56:{name:"/m/0hkxq",id:56,displayName:"broccoli"},57:{name:"/m/0fj52s",id:57,displayName:"carrot"},58:{name:"/m/01b9xk",id:58,displayName:"hot dog"},59:{name:"/m/0663v",id:59,displayName:"pizza"},60:{name:"/m/0jy4k",id:60,displayName:"donut"},61:{name:"/m/0fszt",id:61,displayName:"cake"},62:{name:"/m/01mzpv",id:62,displayName:"chair"},63:{name:"/m/02crq1",id:63,displayName:"couch"},64:{name:"/m/03fp41",id:64,displayName:"potted plant"},65:{name:"/m/03ssj5",id:65,displayName:"bed"},67:{name:"/m/04bcr3",id:67,displayName:"dining table"},70:{name:"/m/09g1w",id:70,displayName:"toilet"},72:{name:"/m/07c52",id:72,displayName:"tv"},73:{name:"/m/01c648",id:73,displayName:"laptop"},74:{name:"/m/020lf",id:74,displayName:"mouse"},75:{name:"/m/0qjjc",id:75,displayName:"remote"},76:{name:"/m/01m2v",id:76,displayName:"keyboard"},77:{name:"/m/050k8",id:77,displayName:"cell phone"},78:{name:"/m/0fx9l",id:78,displayName:"microwave"},79:{name:"/m/029bxz",id:79,displayName:"oven"},80:{name:"/m/01k6s3",id:80,displayName:"toaster"},81:{name:"/m/0130jx",id:81,displayName:"sink"},82:{name:"/m/040b_t",id:82,displayName:"refrigerator"},84:{name:"/m/0bt_c3",id:84,displayName:"book"},85:{name:"/m/01x3z",id:85,displayName:"clock"},86:{name:"/m/02s195",id:86,displayName:"vase"},87:{name:"/m/01lsmm",id:87,displayName:"scissors"},88:{name:"/m/0kmg4",id:88,displayName:"teddy bear"},89:{name:"/m/03wvsk",id:89,displayName:"hair drier"},90:{name:"/m/012xff",id:90,displayName:"toothbrush"}};class d{constructor(e,a){this.modelPath=a||`https://storage.googleapis.com/tfjs-models/savedmodel/${this.getPrefix(e)}/model.json`}getPrefix(e){return"lite_mobilenet_v2"===e?`ssd${e}`:`ssd_${e}`}async load(){this.model=await a.loadGraphModel(this.modelPath);const e=m.zeros([1,300,300,3],"int32"),i=await this.model.executeAsync(e);await Promise.all(i.map((e=>e.data()))),i.map((e=>e.dispose())),e.dispose()}async infer(e,a,i){const d=m.tidy((()=>(e instanceof m.Tensor||(e=m.browser.fromPixels(e)),m.expandDims(e)))),s=d.shape[1],n=d.shape[2],l=await this.model.executeAsync(d),t=l[0].dataSync(),o=l[1].dataSync();d.dispose(),m.dispose(l);const[p,r]=this.calculateMaxScores(t,l[0].shape[1],l[0].shape[2]),c=m.getBackend();"webgl"===m.getBackend()&&m.setBackend("cpu");const y=m.tidy((()=>{const e=m.tensor2d(o,[l[1].shape[1],l[1].shape[3]]);return m.image.nonMaxSuppression(e,p,a,i,i)})),N=y.dataSync();return y.dispose(),c!==m.getBackend()&&m.setBackend(c),this.buildDetectedObjects(n,s,o,p,N,r)}buildDetectedObjects(e,a,m,d,s,n){const l=s.length,t=[];for(let o=0;o<l;o++){const l=[];for(let e=0;e<4;e++)l[e]=m[4*s[o]+e];const p=l[0]*a,r=l[1]*e,c=l[2]*a,y=l[3]*e;l[0]=r,l[1]=p,l[2]=y-r,l[3]=c-p,t.push({bbox:l,class:i[n[s[o]]+1].displayName,score:d[s[o]]})}return t}calculateMaxScores(e,a,m){const i=[],d=[];for(let s=0;s<a;s++){let a=Number.MIN_VALUE,n=-1;for(let i=0;i<m;i++)e[s*m+i]>a&&(a=e[s*m+i],n=i);i[s]=a,d[s]=n}return[i,d]}async detect(e,a=20,m=.5){return this.infer(e,a,m)}dispose(){null!=this.model&&this.model.dispose()}}e.ObjectDetection=d,e.load=async function(e={}){if(null==m)throw new Error("Cannot find TensorFlow.js. If you are using a <script> tag, please also include @tensorflow/tfjs on the page before using this model.");const a=e.base||"lite_mobilenet_v2",i=e.modelUrl;if(-1===["mobilenet_v1","mobilenet_v2","lite_mobilenet_v2"].indexOf(a))throw new Error(`ObjectDetection constructed with invalid base model ${a}. Valid names are 'mobilenet_v1', 'mobilenet_v2' and 'lite_mobilenet_v2'.`);const s=new d(a,i);return await s.load(),s},e.version="2.2.2",Object.defineProperty(e,"__esModule",{value:!0})}));
!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports,require("@tensorflow/tfjs-converter"),require("@tensorflow/tfjs-core")):"function"==typeof define&&define.amd?define(["exports","@tensorflow/tfjs-converter","@tensorflow/tfjs-core"],a):a((e=e||self).cocoSsd=e.cocoSsd||{},e.tf,e.tf)}(this,(function(e,a,m){"use strict";const i={1:{name:"/m/01g317",id:1,displayName:"person"},2:{name:"/m/0199g",id:2,displayName:"bicycle"},3:{name:"/m/0k4j",id:3,displayName:"car"},4:{name:"/m/04_sv",id:4,displayName:"motorcycle"},5:{name:"/m/05czz6l",id:5,displayName:"airplane"},6:{name:"/m/01bjv",id:6,displayName:"bus"},7:{name:"/m/07jdr",id:7,displayName:"train"},8:{name:"/m/07r04",id:8,displayName:"truck"},9:{name:"/m/019jd",id:9,displayName:"boat"},10:{name:"/m/015qff",id:10,displayName:"traffic light"},11:{name:"/m/01pns0",id:11,displayName:"fire hydrant"},13:{name:"/m/02pv19",id:13,displayName:"stop sign"},14:{name:"/m/015qbp",id:14,displayName:"parking meter"},15:{name:"/m/0cvnqh",id:15,displayName:"bench"},16:{name:"/m/015p6",id:16,displayName:"bird"},17:{name:"/m/01yrx",id:17,displayName:"cat"},18:{name:"/m/0bt9lr",id:18,displayName:"dog"},19:{name:"/m/03k3r",id:19,displayName:"horse"},20:{name:"/m/07bgp",id:20,displayName:"sheep"},21:{name:"/m/01xq0k1",id:21,displayName:"cow"},22:{name:"/m/0bwd_0j",id:22,displayName:"elephant"},23:{name:"/m/01dws",id:23,displayName:"bear"},24:{name:"/m/0898b",id:24,displayName:"zebra"},25:{name:"/m/03bk1",id:25,displayName:"giraffe"},27:{name:"/m/01940j",id:27,displayName:"backpack"},28:{name:"/m/0hnnb",id:28,displayName:"umbrella"},31:{name:"/m/080hkjn",id:31,displayName:"handbag"},32:{name:"/m/01rkbr",id:32,displayName:"tie"},33:{name:"/m/01s55n",id:33,displayName:"suitcase"},34:{name:"/m/02wmf",id:34,displayName:"frisbee"},35:{name:"/m/071p9",id:35,displayName:"skis"},36:{name:"/m/06__v",id:36,displayName:"snowboard"},37:{name:"/m/018xm",id:37,displayName:"sports ball"},38:{name:"/m/02zt3",id:38,displayName:"kite"},39:{name:"/m/03g8mr",id:39,displayName:"baseball bat"},40:{name:"/m/03grzl",id:40,displayName:"baseball glove"},41:{name:"/m/06_fw",id:41,displayName:"skateboard"},42:{name:"/m/019w40",id:42,displayName:"surfboard"},43:{name:"/m/0dv9c",id:43,displayName:"tennis racket"},44:{name:"/m/04dr76w",id:44,displayName:"bottle"},46:{name:"/m/09tvcd",id:46,displayName:"wine glass"},47:{name:"/m/08gqpm",id:47,displayName:"cup"},48:{name:"/m/0dt3t",id:48,displayName:"fork"},49:{name:"/m/04ctx",id:49,displayName:"knife"},50:{name:"/m/0cmx8",id:50,displayName:"spoon"},51:{name:"/m/04kkgm",id:51,displayName:"bowl"},52:{name:"/m/09qck",id:52,displayName:"banana"},53:{name:"/m/014j1m",id:53,displayName:"apple"},54:{name:"/m/0l515",id:54,displayName:"sandwich"},55:{name:"/m/0cyhj_",id:55,displayName:"orange"},56:{name:"/m/0hkxq",id:56,displayName:"broccoli"},57:{name:"/m/0fj52s",id:57,displayName:"carrot"},58:{name:"/m/01b9xk",id:58,displayName:"hot dog"},59:{name:"/m/0663v",id:59,displayName:"pizza"},60:{name:"/m/0jy4k",id:60,displayName:"donut"},61:{name:"/m/0fszt",id:61,displayName:"cake"},62:{name:"/m/01mzpv",id:62,displayName:"chair"},63:{name:"/m/02crq1",id:63,displayName:"couch"},64:{name:"/m/03fp41",id:64,displayName:"potted plant"},65:{name:"/m/03ssj5",id:65,displayName:"bed"},67:{name:"/m/04bcr3",id:67,displayName:"dining table"},70:{name:"/m/09g1w",id:70,displayName:"toilet"},72:{name:"/m/07c52",id:72,displayName:"tv"},73:{name:"/m/01c648",id:73,displayName:"laptop"},74:{name:"/m/020lf",id:74,displayName:"mouse"},75:{name:"/m/0qjjc",id:75,displayName:"remote"},76:{name:"/m/01m2v",id:76,displayName:"keyboard"},77:{name:"/m/050k8",id:77,displayName:"cell phone"},78:{name:"/m/0fx9l",id:78,displayName:"microwave"},79:{name:"/m/029bxz",id:79,displayName:"oven"},80:{name:"/m/01k6s3",id:80,displayName:"toaster"},81:{name:"/m/0130jx",id:81,displayName:"sink"},82:{name:"/m/040b_t",id:82,displayName:"refrigerator"},84:{name:"/m/0bt_c3",id:84,displayName:"book"},85:{name:"/m/01x3z",id:85,displayName:"clock"},86:{name:"/m/02s195",id:86,displayName:"vase"},87:{name:"/m/01lsmm",id:87,displayName:"scissors"},88:{name:"/m/0kmg4",id:88,displayName:"teddy bear"},89:{name:"/m/03wvsk",id:89,displayName:"hair drier"},90:{name:"/m/012xff",id:90,displayName:"toothbrush"}};class d{constructor(e,a){this.modelPath=a||`https://storage.googleapis.com/tfjs-models/savedmodel/${this.getPrefix(e)}/model.json`}getPrefix(e){return"lite_mobilenet_v2"===e?`ssd${e}`:`ssd_${e}`}async load(){this.model=await a.loadGraphModel(this.modelPath);const e=m.zeros([1,300,300,3],"int32"),i=await this.model.executeAsync(e);await Promise.all(i.map((e=>e.data()))),i.map((e=>e.dispose())),e.dispose()}async infer(e,a,i){const d=m.tidy((()=>(e instanceof m.Tensor||(e=m.browser.fromPixels(e)),m.expandDims(e)))),s=d.shape[1],n=d.shape[2],l=await this.model.executeAsync(d),t=l[0].dataSync(),o=l[1].dataSync();d.dispose(),m.dispose(l);const[p,r]=this.calculateMaxScores(t,l[0].shape[1],l[0].shape[2]),c=m.getBackend();"webgl"===m.getBackend()&&m.setBackend("cpu");const y=m.tidy((()=>{const e=m.tensor2d(o,[l[1].shape[1],l[1].shape[3]]);return m.image.nonMaxSuppression(e,p,a,i,i)})),N=y.dataSync();return y.dispose(),c!==m.getBackend()&&m.setBackend(c),this.buildDetectedObjects(n,s,o,p,N,r)}buildDetectedObjects(e,a,m,d,s,n){const l=s.length,t=[];for(let o=0;o<l;o++){const l=[];for(let e=0;e<4;e++)l[e]=m[4*s[o]+e];const p=l[0]*a,r=l[1]*e,c=l[2]*a,y=l[3]*e;l[0]=r,l[1]=p,l[2]=y-r,l[3]=c-p,t.push({bbox:l,class:i[n[s[o]]+1].displayName,score:d[s[o]]})}return t}calculateMaxScores(e,a,m){const i=[],d=[];for(let s=0;s<a;s++){let a=Number.MIN_VALUE,n=-1;for(let i=0;i<m;i++)e[s*m+i]>a&&(a=e[s*m+i],n=i);i[s]=a,d[s]=n}return[i,d]}async detect(e,a=20,m=.5){return this.infer(e,a,m)}dispose(){null!=this.model&&this.model.dispose()}}e.ObjectDetection=d,e.load=async function(e={}){if(null==m)throw new Error("Cannot find TensorFlow.js. If you are using a <script> tag, please also include @tensorflow/tfjs on the page before using this model.");const a=e.base||"lite_mobilenet_v2",i=e.modelUrl;if(-1===["mobilenet_v1","mobilenet_v2","lite_mobilenet_v2"].indexOf(a))throw new Error(`ObjectDetection constructed with invalid base model ${a}. Valid names are 'mobilenet_v1', 'mobilenet_v2' and 'lite_mobilenet_v2'.`);const s=new d(a,i);return await s.load(),s},e.version="2.2.3",Object.defineProperty(e,"__esModule",{value:!0})}));
//# sourceMappingURL=coco-ssd.es2017.esm.min.js.map
/**
* @license
* Copyright 2021 Google LLC. All Rights Reserved.
* Copyright 2023 Google LLC. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License");

@@ -497,3 +497,3 @@ * you may not use this file except in compliance with the License.

// This code is auto-generated, do not modify this file!
var version = '2.2.2';
var version = '2.2.3';

@@ -533,3 +533,3 @@ /**

throw new Error("ObjectDetection constructed with invalid base model " +
(base + ". Valid names are 'mobilenet_v1',") +
"".concat(base, ". Valid names are 'mobilenet_v1',") +
" 'mobilenet_v2' and 'lite_mobilenet_v2'.");

@@ -549,6 +549,6 @@ }

this.modelPath =
modelUrl || "" + BASE_PATH + this.getPrefix(base) + "/model.json";
modelUrl || "".concat(BASE_PATH).concat(this.getPrefix(base), "/model.json");
}
ObjectDetection.prototype.getPrefix = function (base) {
return base === 'lite_mobilenet_v2' ? "ssd" + base : "ssd_" + base;
return base === 'lite_mobilenet_v2' ? "ssd".concat(base) : "ssd_".concat(base);
};

@@ -555,0 +555,0 @@ ObjectDetection.prototype.load = function () {

/**
* @license
* Copyright 2021 Google LLC. All Rights Reserved.
* Copyright 2023 Google LLC. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License");

@@ -17,3 +17,3 @@ * you may not use this file except in compliance with the License.

*/
!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports,require("@tensorflow/tfjs-converter"),require("@tensorflow/tfjs-core")):"function"==typeof define&&define.amd?define(["exports","@tensorflow/tfjs-converter","@tensorflow/tfjs-core"],a):a((e=e||self).cocoSsd=e.cocoSsd||{},e.tf,e.tf)}(this,(function(e,a,i){"use strict";function n(e,a,i,n){return new(i||(i=Promise))((function(m,t){function d(e){try{o(n.next(e))}catch(e){t(e)}}function s(e){try{o(n.throw(e))}catch(e){t(e)}}function o(e){var a;e.done?m(e.value):(a=e.value,a instanceof i?a:new i((function(e){e(a)}))).then(d,s)}o((n=n.apply(e,a||[])).next())}))}function m(e,a){var i,n,m,t,d={label:0,sent:function(){if(1&m[0])throw m[1];return m[1]},trys:[],ops:[]};return t={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(t[Symbol.iterator]=function(){return this}),t;function s(t){return function(s){return function(t){if(i)throw new TypeError("Generator is already executing.");for(;d;)try{if(i=1,n&&(m=2&t[0]?n.return:t[0]?n.throw||((m=n.return)&&m.call(n),0):n.next)&&!(m=m.call(n,t[1])).done)return m;switch(n=0,m&&(t=[2&t[0],m.value]),t[0]){case 0:case 1:m=t;break;case 4:return d.label++,{value:t[1],done:!1};case 5:d.label++,n=t[1],t=[0];continue;case 7:t=d.ops.pop(),d.trys.pop();continue;default:if(!(m=d.trys,(m=m.length>0&&m[m.length-1])||6!==t[0]&&2!==t[0])){d=0;continue}if(3===t[0]&&(!m||t[1]>m[0]&&t[1]<m[3])){d.label=t[1];break}if(6===t[0]&&d.label<m[1]){d.label=m[1],m=t;break}if(m&&d.label<m[2]){d.label=m[2],d.ops.push(t);break}m[2]&&d.ops.pop(),d.trys.pop();continue}t=a.call(e,d)}catch(e){t=[6,e],n=0}finally{i=m=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}([t,s])}}}var t={1:{name:"/m/01g317",id:1,displayName:"person"},2:{name:"/m/0199g",id:2,displayName:"bicycle"},3:{name:"/m/0k4j",id:3,displayName:"car"},4:{name:"/m/04_sv",id:4,displayName:"motorcycle"},5:{name:"/m/05czz6l",id:5,displayName:"airplane"},6:{name:"/m/01bjv",id:6,displayName:"bus"},7:{name:"/m/07jdr",id:7,displayName:"train"},8:{name:"/m/07r04",id:8,displayName:"truck"},9:{name:"/m/019jd",id:9,displayName:"boat"},10:{name:"/m/015qff",id:10,displayName:"traffic light"},11:{name:"/m/01pns0",id:11,displayName:"fire hydrant"},13:{name:"/m/02pv19",id:13,displayName:"stop sign"},14:{name:"/m/015qbp",id:14,displayName:"parking meter"},15:{name:"/m/0cvnqh",id:15,displayName:"bench"},16:{name:"/m/015p6",id:16,displayName:"bird"},17:{name:"/m/01yrx",id:17,displayName:"cat"},18:{name:"/m/0bt9lr",id:18,displayName:"dog"},19:{name:"/m/03k3r",id:19,displayName:"horse"},20:{name:"/m/07bgp",id:20,displayName:"sheep"},21:{name:"/m/01xq0k1",id:21,displayName:"cow"},22:{name:"/m/0bwd_0j",id:22,displayName:"elephant"},23:{name:"/m/01dws",id:23,displayName:"bear"},24:{name:"/m/0898b",id:24,displayName:"zebra"},25:{name:"/m/03bk1",id:25,displayName:"giraffe"},27:{name:"/m/01940j",id:27,displayName:"backpack"},28:{name:"/m/0hnnb",id:28,displayName:"umbrella"},31:{name:"/m/080hkjn",id:31,displayName:"handbag"},32:{name:"/m/01rkbr",id:32,displayName:"tie"},33:{name:"/m/01s55n",id:33,displayName:"suitcase"},34:{name:"/m/02wmf",id:34,displayName:"frisbee"},35:{name:"/m/071p9",id:35,displayName:"skis"},36:{name:"/m/06__v",id:36,displayName:"snowboard"},37:{name:"/m/018xm",id:37,displayName:"sports ball"},38:{name:"/m/02zt3",id:38,displayName:"kite"},39:{name:"/m/03g8mr",id:39,displayName:"baseball bat"},40:{name:"/m/03grzl",id:40,displayName:"baseball glove"},41:{name:"/m/06_fw",id:41,displayName:"skateboard"},42:{name:"/m/019w40",id:42,displayName:"surfboard"},43:{name:"/m/0dv9c",id:43,displayName:"tennis racket"},44:{name:"/m/04dr76w",id:44,displayName:"bottle"},46:{name:"/m/09tvcd",id:46,displayName:"wine glass"},47:{name:"/m/08gqpm",id:47,displayName:"cup"},48:{name:"/m/0dt3t",id:48,displayName:"fork"},49:{name:"/m/04ctx",id:49,displayName:"knife"},50:{name:"/m/0cmx8",id:50,displayName:"spoon"},51:{name:"/m/04kkgm",id:51,displayName:"bowl"},52:{name:"/m/09qck",id:52,displayName:"banana"},53:{name:"/m/014j1m",id:53,displayName:"apple"},54:{name:"/m/0l515",id:54,displayName:"sandwich"},55:{name:"/m/0cyhj_",id:55,displayName:"orange"},56:{name:"/m/0hkxq",id:56,displayName:"broccoli"},57:{name:"/m/0fj52s",id:57,displayName:"carrot"},58:{name:"/m/01b9xk",id:58,displayName:"hot dog"},59:{name:"/m/0663v",id:59,displayName:"pizza"},60:{name:"/m/0jy4k",id:60,displayName:"donut"},61:{name:"/m/0fszt",id:61,displayName:"cake"},62:{name:"/m/01mzpv",id:62,displayName:"chair"},63:{name:"/m/02crq1",id:63,displayName:"couch"},64:{name:"/m/03fp41",id:64,displayName:"potted plant"},65:{name:"/m/03ssj5",id:65,displayName:"bed"},67:{name:"/m/04bcr3",id:67,displayName:"dining table"},70:{name:"/m/09g1w",id:70,displayName:"toilet"},72:{name:"/m/07c52",id:72,displayName:"tv"},73:{name:"/m/01c648",id:73,displayName:"laptop"},74:{name:"/m/020lf",id:74,displayName:"mouse"},75:{name:"/m/0qjjc",id:75,displayName:"remote"},76:{name:"/m/01m2v",id:76,displayName:"keyboard"},77:{name:"/m/050k8",id:77,displayName:"cell phone"},78:{name:"/m/0fx9l",id:78,displayName:"microwave"},79:{name:"/m/029bxz",id:79,displayName:"oven"},80:{name:"/m/01k6s3",id:80,displayName:"toaster"},81:{name:"/m/0130jx",id:81,displayName:"sink"},82:{name:"/m/040b_t",id:82,displayName:"refrigerator"},84:{name:"/m/0bt_c3",id:84,displayName:"book"},85:{name:"/m/01x3z",id:85,displayName:"clock"},86:{name:"/m/02s195",id:86,displayName:"vase"},87:{name:"/m/01lsmm",id:87,displayName:"scissors"},88:{name:"/m/0kmg4",id:88,displayName:"teddy bear"},89:{name:"/m/03wvsk",id:89,displayName:"hair drier"},90:{name:"/m/012xff",id:90,displayName:"toothbrush"}};var d=function(){function e(e,a){this.modelPath=a||"https://storage.googleapis.com/tfjs-models/savedmodel/"+this.getPrefix(e)+"/model.json"}return e.prototype.getPrefix=function(e){return"lite_mobilenet_v2"===e?"ssd"+e:"ssd_"+e},e.prototype.load=function(){return n(this,void 0,void 0,(function(){var e,n,t;return m(this,(function(m){switch(m.label){case 0:return e=this,[4,a.loadGraphModel(this.modelPath)];case 1:return e.model=m.sent(),n=i.zeros([1,300,300,3],"int32"),[4,this.model.executeAsync(n)];case 2:return t=m.sent(),[4,Promise.all(t.map((function(e){return e.data()})))];case 3:return m.sent(),t.map((function(e){return e.dispose()})),n.dispose(),[2]}}))}))},e.prototype.infer=function(e,a,t){return n(this,void 0,void 0,(function(){var n,d,s,o,r,l,p,c,y,u,f,b;return m(this,(function(m){switch(m.label){case 0:return n=i.tidy((function(){return e instanceof i.Tensor||(e=i.browser.fromPixels(e)),i.expandDims(e)})),d=n.shape[1],s=n.shape[2],[4,this.model.executeAsync(n)];case 1:return o=m.sent(),r=o[0].dataSync(),l=o[1].dataSync(),n.dispose(),i.dispose(o),p=this.calculateMaxScores(r,o[0].shape[1],o[0].shape[2]),c=p[0],y=p[1],u=i.getBackend(),"webgl"===i.getBackend()&&i.setBackend("cpu"),f=i.tidy((function(){var e=i.tensor2d(l,[o[1].shape[1],o[1].shape[3]]);return i.image.nonMaxSuppression(e,c,a,t,t)})),b=f.dataSync(),f.dispose(),u!==i.getBackend()&&i.setBackend(u),[2,this.buildDetectedObjects(s,d,l,c,b,y)]}}))}))},e.prototype.buildDetectedObjects=function(e,a,i,n,m,d){for(var s=m.length,o=[],r=0;r<s;r++){for(var l=[],p=0;p<4;p++)l[p]=i[4*m[r]+p];var c=l[0]*a,y=l[1]*e,u=l[2]*a,f=l[3]*e;l[0]=y,l[1]=c,l[2]=f-y,l[3]=u-c,o.push({bbox:l,class:t[d[m[r]]+1].displayName,score:n[m[r]]})}return o},e.prototype.calculateMaxScores=function(e,a,i){for(var n=[],m=[],t=0;t<a;t++){for(var d=Number.MIN_VALUE,s=-1,o=0;o<i;o++)e[t*i+o]>d&&(d=e[t*i+o],s=o);n[t]=d,m[t]=s}return[n,m]},e.prototype.detect=function(e,a,i){return void 0===a&&(a=20),void 0===i&&(i=.5),n(this,void 0,void 0,(function(){return m(this,(function(n){return[2,this.infer(e,a,i)]}))}))},e.prototype.dispose=function(){null!=this.model&&this.model.dispose()},e}();e.ObjectDetection=d,e.load=function(e){return void 0===e&&(e={}),n(this,void 0,void 0,(function(){var a,n,t;return m(this,(function(m){switch(m.label){case 0:if(null==i)throw new Error("Cannot find TensorFlow.js. If you are using a <script> tag, please also include @tensorflow/tfjs on the page before using this model.");if(a=e.base||"lite_mobilenet_v2",n=e.modelUrl,-1===["mobilenet_v1","mobilenet_v2","lite_mobilenet_v2"].indexOf(a))throw new Error("ObjectDetection constructed with invalid base model "+a+". Valid names are 'mobilenet_v1', 'mobilenet_v2' and 'lite_mobilenet_v2'.");return[4,(t=new d(a,n)).load()];case 1:return m.sent(),[2,t]}}))}))},e.version="2.2.2",Object.defineProperty(e,"__esModule",{value:!0})}));
!function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports,require("@tensorflow/tfjs-converter"),require("@tensorflow/tfjs-core")):"function"==typeof define&&define.amd?define(["exports","@tensorflow/tfjs-converter","@tensorflow/tfjs-core"],a):a((e=e||self).cocoSsd=e.cocoSsd||{},e.tf,e.tf)}(this,(function(e,a,i){"use strict";function n(e,a,i,n){return new(i||(i=Promise))((function(t,m){function d(e){try{o(n.next(e))}catch(e){m(e)}}function s(e){try{o(n.throw(e))}catch(e){m(e)}}function o(e){var a;e.done?t(e.value):(a=e.value,a instanceof i?a:new i((function(e){e(a)}))).then(d,s)}o((n=n.apply(e,a||[])).next())}))}function t(e,a){var i,n,t,m,d={label:0,sent:function(){if(1&t[0])throw t[1];return t[1]},trys:[],ops:[]};return m={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(m[Symbol.iterator]=function(){return this}),m;function s(m){return function(s){return function(m){if(i)throw new TypeError("Generator is already executing.");for(;d;)try{if(i=1,n&&(t=2&m[0]?n.return:m[0]?n.throw||((t=n.return)&&t.call(n),0):n.next)&&!(t=t.call(n,m[1])).done)return t;switch(n=0,t&&(m=[2&m[0],t.value]),m[0]){case 0:case 1:t=m;break;case 4:return d.label++,{value:m[1],done:!1};case 5:d.label++,n=m[1],m=[0];continue;case 7:m=d.ops.pop(),d.trys.pop();continue;default:if(!(t=d.trys,(t=t.length>0&&t[t.length-1])||6!==m[0]&&2!==m[0])){d=0;continue}if(3===m[0]&&(!t||m[1]>t[0]&&m[1]<t[3])){d.label=m[1];break}if(6===m[0]&&d.label<t[1]){d.label=t[1],t=m;break}if(t&&d.label<t[2]){d.label=t[2],d.ops.push(m);break}t[2]&&d.ops.pop(),d.trys.pop();continue}m=a.call(e,d)}catch(e){m=[6,e],n=0}finally{i=t=0}if(5&m[0])throw m[1];return{value:m[0]?m[1]:void 0,done:!0}}([m,s])}}}var m={1:{name:"/m/01g317",id:1,displayName:"person"},2:{name:"/m/0199g",id:2,displayName:"bicycle"},3:{name:"/m/0k4j",id:3,displayName:"car"},4:{name:"/m/04_sv",id:4,displayName:"motorcycle"},5:{name:"/m/05czz6l",id:5,displayName:"airplane"},6:{name:"/m/01bjv",id:6,displayName:"bus"},7:{name:"/m/07jdr",id:7,displayName:"train"},8:{name:"/m/07r04",id:8,displayName:"truck"},9:{name:"/m/019jd",id:9,displayName:"boat"},10:{name:"/m/015qff",id:10,displayName:"traffic light"},11:{name:"/m/01pns0",id:11,displayName:"fire hydrant"},13:{name:"/m/02pv19",id:13,displayName:"stop sign"},14:{name:"/m/015qbp",id:14,displayName:"parking meter"},15:{name:"/m/0cvnqh",id:15,displayName:"bench"},16:{name:"/m/015p6",id:16,displayName:"bird"},17:{name:"/m/01yrx",id:17,displayName:"cat"},18:{name:"/m/0bt9lr",id:18,displayName:"dog"},19:{name:"/m/03k3r",id:19,displayName:"horse"},20:{name:"/m/07bgp",id:20,displayName:"sheep"},21:{name:"/m/01xq0k1",id:21,displayName:"cow"},22:{name:"/m/0bwd_0j",id:22,displayName:"elephant"},23:{name:"/m/01dws",id:23,displayName:"bear"},24:{name:"/m/0898b",id:24,displayName:"zebra"},25:{name:"/m/03bk1",id:25,displayName:"giraffe"},27:{name:"/m/01940j",id:27,displayName:"backpack"},28:{name:"/m/0hnnb",id:28,displayName:"umbrella"},31:{name:"/m/080hkjn",id:31,displayName:"handbag"},32:{name:"/m/01rkbr",id:32,displayName:"tie"},33:{name:"/m/01s55n",id:33,displayName:"suitcase"},34:{name:"/m/02wmf",id:34,displayName:"frisbee"},35:{name:"/m/071p9",id:35,displayName:"skis"},36:{name:"/m/06__v",id:36,displayName:"snowboard"},37:{name:"/m/018xm",id:37,displayName:"sports ball"},38:{name:"/m/02zt3",id:38,displayName:"kite"},39:{name:"/m/03g8mr",id:39,displayName:"baseball bat"},40:{name:"/m/03grzl",id:40,displayName:"baseball glove"},41:{name:"/m/06_fw",id:41,displayName:"skateboard"},42:{name:"/m/019w40",id:42,displayName:"surfboard"},43:{name:"/m/0dv9c",id:43,displayName:"tennis racket"},44:{name:"/m/04dr76w",id:44,displayName:"bottle"},46:{name:"/m/09tvcd",id:46,displayName:"wine glass"},47:{name:"/m/08gqpm",id:47,displayName:"cup"},48:{name:"/m/0dt3t",id:48,displayName:"fork"},49:{name:"/m/04ctx",id:49,displayName:"knife"},50:{name:"/m/0cmx8",id:50,displayName:"spoon"},51:{name:"/m/04kkgm",id:51,displayName:"bowl"},52:{name:"/m/09qck",id:52,displayName:"banana"},53:{name:"/m/014j1m",id:53,displayName:"apple"},54:{name:"/m/0l515",id:54,displayName:"sandwich"},55:{name:"/m/0cyhj_",id:55,displayName:"orange"},56:{name:"/m/0hkxq",id:56,displayName:"broccoli"},57:{name:"/m/0fj52s",id:57,displayName:"carrot"},58:{name:"/m/01b9xk",id:58,displayName:"hot dog"},59:{name:"/m/0663v",id:59,displayName:"pizza"},60:{name:"/m/0jy4k",id:60,displayName:"donut"},61:{name:"/m/0fszt",id:61,displayName:"cake"},62:{name:"/m/01mzpv",id:62,displayName:"chair"},63:{name:"/m/02crq1",id:63,displayName:"couch"},64:{name:"/m/03fp41",id:64,displayName:"potted plant"},65:{name:"/m/03ssj5",id:65,displayName:"bed"},67:{name:"/m/04bcr3",id:67,displayName:"dining table"},70:{name:"/m/09g1w",id:70,displayName:"toilet"},72:{name:"/m/07c52",id:72,displayName:"tv"},73:{name:"/m/01c648",id:73,displayName:"laptop"},74:{name:"/m/020lf",id:74,displayName:"mouse"},75:{name:"/m/0qjjc",id:75,displayName:"remote"},76:{name:"/m/01m2v",id:76,displayName:"keyboard"},77:{name:"/m/050k8",id:77,displayName:"cell phone"},78:{name:"/m/0fx9l",id:78,displayName:"microwave"},79:{name:"/m/029bxz",id:79,displayName:"oven"},80:{name:"/m/01k6s3",id:80,displayName:"toaster"},81:{name:"/m/0130jx",id:81,displayName:"sink"},82:{name:"/m/040b_t",id:82,displayName:"refrigerator"},84:{name:"/m/0bt_c3",id:84,displayName:"book"},85:{name:"/m/01x3z",id:85,displayName:"clock"},86:{name:"/m/02s195",id:86,displayName:"vase"},87:{name:"/m/01lsmm",id:87,displayName:"scissors"},88:{name:"/m/0kmg4",id:88,displayName:"teddy bear"},89:{name:"/m/03wvsk",id:89,displayName:"hair drier"},90:{name:"/m/012xff",id:90,displayName:"toothbrush"}};var d=function(){function e(e,a){this.modelPath=a||"".concat("https://storage.googleapis.com/tfjs-models/savedmodel/").concat(this.getPrefix(e),"/model.json")}return e.prototype.getPrefix=function(e){return"lite_mobilenet_v2"===e?"ssd".concat(e):"ssd_".concat(e)},e.prototype.load=function(){return n(this,void 0,void 0,(function(){var e,n,m;return t(this,(function(t){switch(t.label){case 0:return e=this,[4,a.loadGraphModel(this.modelPath)];case 1:return e.model=t.sent(),n=i.zeros([1,300,300,3],"int32"),[4,this.model.executeAsync(n)];case 2:return m=t.sent(),[4,Promise.all(m.map((function(e){return e.data()})))];case 3:return t.sent(),m.map((function(e){return e.dispose()})),n.dispose(),[2]}}))}))},e.prototype.infer=function(e,a,m){return n(this,void 0,void 0,(function(){var n,d,s,o,r,l,p,c,y,u,f,b;return t(this,(function(t){switch(t.label){case 0:return n=i.tidy((function(){return e instanceof i.Tensor||(e=i.browser.fromPixels(e)),i.expandDims(e)})),d=n.shape[1],s=n.shape[2],[4,this.model.executeAsync(n)];case 1:return o=t.sent(),r=o[0].dataSync(),l=o[1].dataSync(),n.dispose(),i.dispose(o),p=this.calculateMaxScores(r,o[0].shape[1],o[0].shape[2]),c=p[0],y=p[1],u=i.getBackend(),"webgl"===i.getBackend()&&i.setBackend("cpu"),f=i.tidy((function(){var e=i.tensor2d(l,[o[1].shape[1],o[1].shape[3]]);return i.image.nonMaxSuppression(e,c,a,m,m)})),b=f.dataSync(),f.dispose(),u!==i.getBackend()&&i.setBackend(u),[2,this.buildDetectedObjects(s,d,l,c,b,y)]}}))}))},e.prototype.buildDetectedObjects=function(e,a,i,n,t,d){for(var s=t.length,o=[],r=0;r<s;r++){for(var l=[],p=0;p<4;p++)l[p]=i[4*t[r]+p];var c=l[0]*a,y=l[1]*e,u=l[2]*a,f=l[3]*e;l[0]=y,l[1]=c,l[2]=f-y,l[3]=u-c,o.push({bbox:l,class:m[d[t[r]]+1].displayName,score:n[t[r]]})}return o},e.prototype.calculateMaxScores=function(e,a,i){for(var n=[],t=[],m=0;m<a;m++){for(var d=Number.MIN_VALUE,s=-1,o=0;o<i;o++)e[m*i+o]>d&&(d=e[m*i+o],s=o);n[m]=d,t[m]=s}return[n,t]},e.prototype.detect=function(e,a,i){return void 0===a&&(a=20),void 0===i&&(i=.5),n(this,void 0,void 0,(function(){return t(this,(function(n){return[2,this.infer(e,a,i)]}))}))},e.prototype.dispose=function(){null!=this.model&&this.model.dispose()},e}();e.ObjectDetection=d,e.load=function(e){return void 0===e&&(e={}),n(this,void 0,void 0,(function(){var a,n,m;return t(this,(function(t){switch(t.label){case 0:if(null==i)throw new Error("Cannot find TensorFlow.js. If you are using a <script> tag, please also include @tensorflow/tfjs on the page before using this model.");if(a=e.base||"lite_mobilenet_v2",n=e.modelUrl,-1===["mobilenet_v1","mobilenet_v2","lite_mobilenet_v2"].indexOf(a))throw new Error("ObjectDetection constructed with invalid base model "+"".concat(a,". Valid names are 'mobilenet_v1',")+" 'mobilenet_v2' and 'lite_mobilenet_v2'.");return[4,(m=new d(a,n)).load()];case 1:return t.sent(),[2,m]}}))}))},e.version="2.2.3",Object.defineProperty(e,"__esModule",{value:!0})}));
//# sourceMappingURL=coco-ssd.min.js.map
/**
* @license
* Copyright 2021 Google LLC. All Rights Reserved.
* Copyright 2023 Google LLC. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License");

@@ -498,3 +498,3 @@ * you may not use this file except in compliance with the License.

// This code is auto-generated, do not modify this file!
var version = '2.2.2';
var version = '2.2.3';

@@ -534,3 +534,3 @@ /**

throw new Error("ObjectDetection constructed with invalid base model " +
(base + ". Valid names are 'mobilenet_v1',") +
"".concat(base, ". Valid names are 'mobilenet_v1',") +
" 'mobilenet_v2' and 'lite_mobilenet_v2'.");

@@ -550,6 +550,6 @@ }

this.modelPath =
modelUrl || "" + BASE_PATH + this.getPrefix(base) + "/model.json";
modelUrl || "".concat(BASE_PATH).concat(this.getPrefix(base), "/model.json");
}
ObjectDetection.prototype.getPrefix = function (base) {
return base === 'lite_mobilenet_v2' ? "ssd" + base : "ssd_" + base;
return base === 'lite_mobilenet_v2' ? "ssd".concat(base) : "ssd_".concat(base);
};

@@ -556,0 +556,0 @@ ObjectDetection.prototype.load = function () {

@@ -19,3 +19,4 @@ /**

export { version } from './version';
export declare type ObjectDetectionBaseModel = 'mobilenet_v1' | 'mobilenet_v2' | 'lite_mobilenet_v2';
/** @docinline */
export type ObjectDetectionBaseModel = 'mobilenet_v1' | 'mobilenet_v2' | 'lite_mobilenet_v2';
export interface DetectedObject {

@@ -28,13 +29,15 @@ bbox: [number, number, number, number];

* Coco-ssd model loading is configurable using the following config dictionary.
*
* `base`: ObjectDetectionBaseModel. It determines wich PoseNet architecture
* to load. The supported architectures are: 'mobilenet_v1', 'mobilenet_v2' and
* 'lite_mobilenet_v2'. It is default to 'lite_mobilenet_v2'.
*
* `modelUrl`: An optional string that specifies custom url of the model. This
* is useful for area/countries that don't have access to the model hosted on
* GCP.
*/
export interface ModelConfig {
/**
* It determines wich object detection architecture to load. The supported
* architectures are: 'mobilenet_v1', 'mobilenet_v2' and 'lite_mobilenet_v2'.
* It is default to 'lite_mobilenet_v2'.
*/
base?: ObjectDetectionBaseModel;
/**
*
* An optional string that specifies custom url of the model. This is useful
* for area/countries that don't have access to the model hosted on GCP.
*/
modelUrl?: string;

@@ -41,0 +44,0 @@ }

@@ -19,6 +19,7 @@ "use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());

@@ -33,3 +34,3 @@ });

if (f) throw new TypeError("Generator is already executing.");
while (_) try {
while (g && (g = 0, op[0] && (_ = 0)), _) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;

@@ -56,2 +57,3 @@ if (y = 0, t) op = [op[0] & 2, t.value];

Object.defineProperty(exports, "__esModule", { value: true });
exports.ObjectDetection = exports.load = exports.version = void 0;
var tfconv = require("@tensorflow/tfjs-converter");

@@ -62,3 +64,3 @@ var tf = require("@tensorflow/tfjs-core");

var version_1 = require("./version");
exports.version = version_1.version;
Object.defineProperty(exports, "version", { enumerable: true, get: function () { return version_1.version; } });
function load(config) {

@@ -80,3 +82,3 @@ if (config === void 0) { config = {}; }

throw new Error("ObjectDetection constructed with invalid base model " +
(base + ". Valid names are 'mobilenet_v1',") +
"".concat(base, ". Valid names are 'mobilenet_v1',") +
" 'mobilenet_v2' and 'lite_mobilenet_v2'.");

@@ -97,6 +99,6 @@ }

this.modelPath =
modelUrl || "" + BASE_PATH + this.getPrefix(base) + "/model.json";
modelUrl || "".concat(BASE_PATH).concat(this.getPrefix(base), "/model.json");
}
ObjectDetection.prototype.getPrefix = function (base) {
return base === 'lite_mobilenet_v2' ? "ssd" + base : "ssd_" + base;
return base === 'lite_mobilenet_v2' ? "ssd".concat(base) : "ssd_".concat(base);
};

@@ -103,0 +105,0 @@ ObjectDetection.prototype.load = function () {

"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());

@@ -16,3 +17,3 @@ });

if (f) throw new TypeError("Generator is already executing.");
while (_) try {
while (g && (g = 0, op[0] && (_ = 0)), _) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;

@@ -38,3 +39,2 @@ if (y = 0, t) op = [op[0] & 2, t.value];

};
var _this = this;
Object.defineProperty(exports, "__esModule", { value: true });

@@ -62,3 +62,3 @@ /**

var index_1 = require("./index");
jasmine_util_1.describeWithFlags('ObjectDetection', jasmine_util_1.NODE_ENVS, function () {
(0, jasmine_util_1.describeWithFlags)('ObjectDetection', jasmine_util_1.NODE_ENVS, function () {
beforeEach(function () {

@@ -73,7 +73,7 @@ spyOn(tfconv, 'loadGraphModel').and.callFake(function () {

});
it('ObjectDetection detect method should not leak', function () { return __awaiter(_this, void 0, void 0, function () {
it('ObjectDetection detect method should not leak', function () { return __awaiter(void 0, void 0, void 0, function () {
var objectDetection, x, numOfTensorsBefore;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, index_1.load()];
case 0: return [4 /*yield*/, (0, index_1.load)()];
case 1:

@@ -91,3 +91,3 @@ objectDetection = _a.sent();

}); });
it('ObjectDetection e2e should not leak', function () { return __awaiter(_this, void 0, void 0, function () {
it('ObjectDetection e2e should not leak', function () { return __awaiter(void 0, void 0, void 0, function () {
var numOfTensorsBefore, objectDetection, x;

@@ -98,3 +98,3 @@ return __generator(this, function (_a) {

numOfTensorsBefore = tf.memory().numTensors;
return [4 /*yield*/, index_1.load()];
return [4 /*yield*/, (0, index_1.load)()];
case 1:

@@ -113,7 +113,7 @@ objectDetection = _a.sent();

}); });
it('ObjectDetection detect method should generate output', function () { return __awaiter(_this, void 0, void 0, function () {
it('ObjectDetection detect method should generate output', function () { return __awaiter(void 0, void 0, void 0, function () {
var objectDetection, x, data;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, index_1.load()];
case 0: return [4 /*yield*/, (0, index_1.load)()];
case 1:

@@ -130,6 +130,6 @@ objectDetection = _a.sent();

}); });
it('should allow custom model url', function () { return __awaiter(_this, void 0, void 0, function () {
it('should allow custom model url', function () { return __awaiter(void 0, void 0, void 0, function () {
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, index_1.load({ base: 'mobilenet_v1' })];
case 0: return [4 /*yield*/, (0, index_1.load)({ base: 'mobilenet_v1' })];
case 1:

@@ -144,6 +144,6 @@ _a.sent();

}); });
it('should allow custom model url', function () { return __awaiter(_this, void 0, void 0, function () {
it('should allow custom model url', function () { return __awaiter(void 0, void 0, void 0, function () {
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, index_1.load({ modelUrl: 'https://test.org/model.json' })];
case 0: return [4 /*yield*/, (0, index_1.load)({ modelUrl: 'https://test.org/model.json' })];
case 1:

@@ -150,0 +150,0 @@ _a.sent();

/** @license See the LICENSE file. */
declare const version = "2.2.2";
declare const version = "2.2.3";
export { version };
"use strict";
/** @license See the LICENSE file. */
Object.defineProperty(exports, "__esModule", { value: true });
exports.version = void 0;
// This code is auto-generated, do not modify this file!
var version = '2.2.2';
var version = '2.2.3';
exports.version = version;
//# sourceMappingURL=version.js.map
{
"name": "@tensorflow-models/coco-ssd",
"version": "2.2.2",
"version": "2.2.3",
"description": "Object detection model (coco-ssd) in TensorFlow.js",

@@ -16,4 +16,4 @@ "main": "dist/coco-ssd.node.js",

"peerDependencies": {
"@tensorflow/tfjs-converter": "^3.3.0",
"@tensorflow/tfjs-core": "^3.3.0"
"@tensorflow/tfjs-converter": "^4.10.0",
"@tensorflow/tfjs-core": "^4.10.0"
},

@@ -24,5 +24,5 @@ "devDependencies": {

"@rollup/plugin-typescript": "^3.0.0",
"@tensorflow/tfjs-backend-cpu": "^3.3.0",
"@tensorflow/tfjs-converter": "^3.3.0",
"@tensorflow/tfjs-core": "^3.3.0",
"@tensorflow/tfjs-backend-cpu": "^4.10.0",
"@tensorflow/tfjs-converter": "^4.10.0",
"@tensorflow/tfjs-core": "^4.10.0",
"@types/jasmine": "~2.8.8",

@@ -35,6 +35,6 @@ "babel-core": "~6.26.0",

"rollup-plugin-terser": "^7.0.2",
"rollup-plugin-visualizer": "~3.3.2",
"rollup-plugin-visualizer": "~5.9.2",
"ts-node": "~8.8.2",
"tslint": "~5.18.0",
"typescript": "~3.5.3",
"typescript": "~5.1.6",
"yalc": "~1.0.0-pre.21"

@@ -41,0 +41,0 @@ },

@@ -70,3 +70,3 @@ # Object Detection (coco-ssd)

You can also take a look at the [demo app](https://github.com/tensorflow/tfjs-models/blob/master/coco-ssd/demo).
You can also take a look at the [demo app](https://tensorflow-js-object-detection.glitch.me/).

@@ -133,3 +133,3 @@ ## API

This model is based on the TensorFlow object detection API. You can download the original models from [here](https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md#coco-trained-models). We applied the following optimizations to improve the performance for browser execution:
This model is based on the TensorFlow object detection API. You can download the original models from [here](https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2_detection_zoo.md). We applied the following optimizations to improve the performance for browser execution:

@@ -136,0 +136,0 @@ 1. Removed the post process graph from the original model.

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc