import CVModel, { RFObjectDetectionPrediction } from "./CVModel"; import * as tf from "@tensorflow/tfjs"; import CVImage from "../utils/image"; import { ModelJSON } from "@tensorflow/tfjs-core/dist/io/types"; export declare class YOLOOptions { model?: ModelJSON | null; size?: number; maxNumBoxes?: number; scoreThreshold?: number; iouThreshold?: number; classes?: string[]; colors?: { [key: string]: string; }; } declare class DefaultYOLOOptions { model: ModelJSON | null; size: number; maxNumBoxes: number; scoreThreshold: number; iouThreshold: number; classes: string[]; colors: { [key: string]: string; }; constructor(options: YOLOOptions); update(options: YOLOOptions): void; } export default class YOLOv8 extends CVModel { options: DefaultYOLOOptions; model?: tf.GraphModel; async_model: boolean; constructor(options: YOLOOptions); initialize(): Promise; configure(options: YOLOOptions): void; zeros(): tf.Tensor; preprocess(image: CVImage): Promise>; infer(image: CVImage): Promise; buildDetectedObjects(width: number, height: number, boxes: Float32Array, scores: number[], indexes: Float32Array, classes: number[]): RFObjectDetectionPrediction[]; calculateMaxScoresYolov5(scores: Float32Array, numBoxes: number, numClasses: number): any; getBoxesYoloV5(scores: Float32Array, numBoxes: number, numClasses: number, scale_by: number): Float32Array; } export {};