From 3708732d1ad097ce7e46b61ee19767a82eafc7bc Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Tue, 1 Jun 2021 07:07:01 -0400 Subject: [PATCH] breaking changes to results.object output properties --- src/interpolate.ts | 8 ++++---- src/object/centernet.ts | 4 ++-- src/object/nanodet.ts | 10 +++++----- src/result.ts | 7 ++----- 4 files changed, 13 insertions(+), 16 deletions(-) diff --git a/src/interpolate.ts b/src/interpolate.ts index 27e4d9b4..8b03a355 100644 --- a/src/interpolate.ts +++ b/src/interpolate.ts @@ -91,10 +91,10 @@ export function calc(newResult: Result): Result { bufferedResult.object = JSON.parse(JSON.stringify(newResult.object as Item[])); // deep clone once } else { for (let i = 0; i < newResult.object.length; i++) { - const box = newResult.object[i].box // update box - .map((b, j) => ((bufferedFactor - 1) * bufferedResult.object[i].box[j] + b) / bufferedFactor); - const boxRaw = newResult.object[i].boxRaw // update boxRaw - .map((b, j) => ((bufferedFactor - 1) * bufferedResult.object[i].boxRaw[j] + b) / bufferedFactor); + const box = (newResult.object[i].box // update box + .map((b, j) => ((bufferedFactor - 1) * bufferedResult.object[i].box[j] + b) / bufferedFactor)) as [number, number, number, number]; + const boxRaw = (newResult.object[i].boxRaw // update boxRaw + .map((b, j) => ((bufferedFactor - 1) * bufferedResult.object[i].boxRaw[j] + b) / bufferedFactor)) as [number, number, number, number]; bufferedResult.object[i] = { ...newResult.object[i], box, boxRaw }; // shallow clone plus updated values } } diff --git a/src/object/centernet.ts b/src/object/centernet.ts index bcd6bd89..fada8b36 100644 --- a/src/object/centernet.ts +++ b/src/object/centernet.ts @@ -52,13 +52,13 @@ async function process(res, inputSize, outputShape, config) { detections[0][id][1] / inputSize, detections[0][id][2] / inputSize, detections[0][id][3] / inputSize, - ]; + ] as [number, number, number, number]; const box = [ Math.trunc(boxRaw[0] * outputShape[0]), Math.trunc(boxRaw[1] * outputShape[1]), Math.trunc(boxRaw[2] * outputShape[0]), Math.trunc(boxRaw[3] * outputShape[1]), - ]; + ] as [number, number, number, number]; results.push({ id: i++, score, class: classVal, label, box, boxRaw }); } return results; diff --git a/src/object/nanodet.ts b/src/object/nanodet.ts index dab86b0f..7c7b2e9b 100644 --- a/src/object/nanodet.ts +++ b/src/object/nanodet.ts @@ -63,14 +63,14 @@ async function process(res, inputSize, outputShape, config) { ]; const result = { id: id++, - strideSize, + // strideSize, score: Math.round(100 * score) / 100, class: j + 1, label: labels[j].label, - center: [Math.trunc(outputShape[0] * cx), Math.trunc(outputShape[1] * cy)], - centerRaw: [cx, cy], - box: box.map((a) => Math.trunc(a)), - boxRaw, + // center: [Math.trunc(outputShape[0] * cx), Math.trunc(outputShape[1] * cy)], + // centerRaw: [cx, cy], + box: (box.map((a) => Math.trunc(a))) as [number, number, number, number], + boxRaw: boxRaw as [number, number, number, number], }; results.push(result); } diff --git a/src/result.ts b/src/result.ts index 98742740..b4f13595 100644 --- a/src/result.ts +++ b/src/result.ts @@ -116,13 +116,10 @@ export interface Hand { export interface Item { id: number, score: number, - strideSize?: number, class: number, label: string, - center?: number[], - centerRaw?: number[], - box: number[], - boxRaw: number[], + box: [number, number, number, number], + boxRaw: [number, number, number, number], } /** Gesture results