ente/thirdparty/face-api/classes/ObjectDetection.ts

44 lines
1.4 KiB
TypeScript
Raw Normal View History

import { Box } from './Box';
import { Dimensions, IDimensions } from './Dimensions';
import { IRect, Rect } from './Rect';
export class ObjectDetection {
private _score: number
private _classScore: number
private _className: string
private _box: Rect
private _imageDims: Dimensions
constructor(
score: number,
classScore: number,
className: string,
relativeBox: IRect,
imageDims: IDimensions
) {
this._imageDims = new Dimensions(imageDims.width, imageDims.height)
this._score = score
this._classScore = classScore
this._className = className
this._box = new Box(relativeBox).rescale(this._imageDims)
}
public get score(): number { return this._score }
public get classScore(): number { return this._classScore }
public get className(): string { return this._className }
public get box(): Box { return this._box }
public get imageDims(): Dimensions { return this._imageDims }
public get imageWidth(): number { return this.imageDims.width }
public get imageHeight(): number { return this.imageDims.height }
public get relativeBox(): Box { return new Box(this._box).rescale(this.imageDims.reverse()) }
public forSize(width: number, height: number): ObjectDetection {
return new ObjectDetection(
this.score,
this.classScore,
this.className,
this.relativeBox,
{ width, height}
)
}
}