UNPKG

yolo-helpers

Version:

Helper functions to use models converted from YOLO in browser and Node.js

41 lines (40 loc) 1.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.decodeClassify = decodeClassify; /** * tensorflow output: [batch, class_index] -> confidence * e.g. 1x1000 for 1 batch of 1000 classes * * The confidence are already normalized between 0 to 1, and sum up to 1. */ function decodeClassify(args) { let { num_classes } = args; // e.g. 1x80 let batches = args.output; if (batches[0].length === 0) { // no a single batch return []; } if (batches[0].length !== num_classes) { throw new Error(`data[batch].length must be ${num_classes}`); } let result = []; for (let all_confidences of batches) { // e.g. 80 numbers let class_index = 0; let class_confidence = all_confidences[0]; for (let i = 1; i < num_classes; i++) { let confidence = all_confidences[i]; if (confidence > class_confidence) { class_confidence = confidence; class_index = i; } } result.push({ all_confidences, class_index, confidence: class_confidence, }); } return result; }