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 RFDETROptions { model?: ModelJSON | null; size?: number; maxNumBoxes?: number; scoreThreshold?: number; classes?: string[]; colors?: { [key: string]: string; }; } declare class DefaultRFDETROptions { model: ModelJSON | null; size: number; maxNumBoxes: number; scoreThreshold: number; classes: string[]; colors: { [key: string]: string; }; constructor(options: RFDETROptions); update(options: RFDETROptions): void; } export default class RFDetr extends CVModel { options: DefaultRFDETROptions; model?: tf.GraphModel; async_model: boolean; imagenetMeans: tf.Tensor; imagenetStds: tf.Tensor; constructor(options: RFDETROptions); initialize(): Promise; configure(options: RFDETROptions): void; zeros(): tf.Tensor; preprocess(image: CVImage): Promise>; infer(image: CVImage): Promise<{ bbox: { x: number; y: number; width: number; height: number; }; class: string; confidence: number; color: string; }[]>; processDetections(boxesData: Float32Array, scoresData: Float32Array, boxesShape: number[], scoresShape: number[], confidenceThreshold: number, imageWidth: number, imageHeight: number): { bbox: { x: number; y: number; width: number; height: number; }; class: string; confidence: number; color: string; }[]; } export {};