import { IBoundingBox } from './BoundingBox'; import { Box } from './Box'; import { Dimensions, IDimensions } from './Dimensions'; import { FaceDetection } from './FaceDetection'; import { Point } from './Point'; import { IRect } from './Rect'; export interface IFaceLandmarks { positions: Point[]; shift: Point; } export declare class FaceLandmarks implements IFaceLandmarks { protected _shift: Point; protected _positions: Point[]; protected _imgDims: Dimensions; constructor(relativeFaceLandmarkPositions: Point[], imgDims: IDimensions, shift?: Point); get shift(): Point; get imageWidth(): number; get imageHeight(): number; get positions(): Point[]; get relativePositions(): Point[]; forSize(width: number, height: number): T; shiftBy(x: number, y: number): T; shiftByPoint(pt: Point): T; /** * Aligns the face landmarks after face detection from the relative positions of the faces * bounding box, or it's current shift. This function should be used to align the face images * after face detection has been performed, before they are passed to the face recognition net. * This will make the computed face descriptor more accurate. * * @param detection (optional) The bounding box of the face or the face detection result. If * no argument was passed the position of the face landmarks are assumed to be relative to * it's current shift. * @returns The bounding box of the aligned face. */ align(detection?: FaceDetection | IRect | IBoundingBox | null, options?: { useDlibAlignment?: boolean; minBoxPadding?: number; }): Box; private alignDlib; private alignMinBbox; protected getRefPointsForAlignment(): Point[]; }