inferencejs 레퍼런스
`inferencejs`에 대한 레퍼런스입니다. Roboflow로 구축된 컴퓨터 비전 애플리케이션을 웹/JavaScript 환경에 배포하기 위한 엣지 라이브러리입니다.
설치
이 라이브러리는 vite, webpack, parcel 등과 같은 번들러를 사용하여 브라우저 내에서 사용하도록 설계되었습니다. 번들러가 설정되어 있다고 가정하면 다음을 실행하여 설치할 수 있습니다:
npm install inferencejs
: 우리는 Repl.it에 "
먼저 InferenceEngine. 이는 사용자 인터페이스를 차단하지 않고 모델을 다운로드하고
실행할 수 있는 백그라운드 워커를 시작합니다.
import { InferenceEngine } from "inferencejs";
const PUBLISHABLE_KEY = "rf_a6cd..."; // Roboflow의 프로젝트 설정에서 자신의 publishable key로 교체하세요
const inferEngine = new InferenceEngine();
const workerId = await inferEngine.startWorker("[PROJECT URL SLUG]", [VERSION NUMBER], PUBLISHABLE_KEY);
//모델에 대해 추론을 수행합니다
const result = await inferEngine.infer(workerId, img);API
InferenceEngine
new InferenceEngine()
새로운 InferenceEngine 인스턴스를 생성합니다.
startWorker(modelName: string, modelVersion: number, publishableKey: string): Promise<number>
주어진 모델에 대한 새로운 워커를 시작하고 workerId. 중요- publishableKey 는 필수이며 Roboflow의 프로젝트 설정에서 얻을 수 있습니다.
infer(workerId: number, img: CVImage | ImageBitmap): Promise<Inference>
주어진 workerId. img 는 다음을 사용하여 생성할 수 있습니다 new CVImage(HTMLImageElement | HTMLVideoElement | ImageBitmap | TFJS.Tensor) 또는 createImageBitmap
stopWorker(workerId: number): Promise<void>
주어진 workerId.
YOLOv8 YOLOv5
YOLOv8 YOLOv5을 사용하여 추론을 수행한 결과는 InferenceEngine YOLOv8 또는 YOLOv5 객체 감지 모델의 경우 다음 유형의 배열입니다:
type RFObjectDetectionPrediction = {
class?: string;
confidence?: number;
bbox?: {
x: number;
y: number;
width: number;
height: number;
};
color?: string;
};GazeDetections
GazeDetections을 사용하여 추론을 수행한 결과는 InferenceEngine Gaze 모델의 경우. 다음 유형의 배열:
type GazeDetections = {
leftEye: { x: number; y: number };
rightEye: { x: number; y: number };
yaw: number;
pitch: number;
}[];leftEye.x
입력 이미지 너비의 백분율로 측정된 0과 1 사이의 부동 소수점 숫자로서 왼쪽 눈의 x 위치입니다.
leftEye.y
입력 이미지 높이의 백분율로 측정된 0과 1 사이의 부동 소수점 숫자로서 왼쪽 눈의 y 위치입니다.
rightEye.x
입력 이미지 너비의 백분율로 측정된 0과 1 사이의 부동 소수점 숫자로서 오른쪽 눈의 x 위치입니다.
rightEye.y
입력 이미지 높이의 백분율로 측정된 0과 1 사이의 부동 소수점 숫자로서 오른쪽 눈의 y 위치입니다.
yaw
시선의 yaw(좌우 회전)를 라디안 단위로 측정한 값입니다.
pitch
시선의 pitch(상하 회전)를 라디안 단위로 측정한 값입니다.
CVImage
CVImage컴퓨터 비전 작업에 사용할 수 있는 이미지를 나타내는 클래스입니다. 이미지를 조작하고 변환하기 위한 다양한 메서드를 제공합니다.
생성자
The CVImage(image) 클래스 생성자는 클래스의 새 인스턴스를 초기화합니다. 다음 유형 중 하나의 이미지를 하나 허용합니다:
HTMLVideoElement: 선택적HTMLVideoElement이미지의 표현입니다.이는 다양한 이미지 형식(: 선택적이는 다양한 이미지 형식(이미지의 표현입니다.tf.Tensor: 선택적tf.Tensor이미지의 표현입니다.tf.Tensor4D: 선택적 4Dtf.Tensor이미지의 표현입니다.
메서드
bitmap()
이미지의 HTMLVideoElement 표현으로 해결되는 프라미스를 반환합니다. 이미지가 이미 bitmap인 경우 캐시된 bitmap을 반환합니다.
tensor()
이미지의 tf.Tensor 표현을 반환합니다. 이미지가 이미 tensor인 경우 캐시된 tensor를 반환합니다.
tensor4D()
4D tf.Tensor 표현으로 해결되는 프라미스를 반환합니다. 이미지가 이미 4D tensor인 경우 캐시된 4D tensor를 반환합니다.
array()
이미지의 JavaScript 배열 표현으로 해결되는 프라미스를 반환합니다. 이미지가 이미 tensor인 경우 tensor를 배열로 변환합니다.
dims()
이미지의 차원을 포함하는 배열을 반환합니다. 이미지가 bitmap인 경우 [width, height]. 이미지가 tensor인 경우 tensor의 shape를 반환합니다. 이미지가 HTML 이미지 요소인 경우 [width, height].
dispose()
메모리를 확보하기 위해 이미지의 tensor 표현을 해제합니다.
static fromArray(array: tf.TensorLike)
주어진 tensor-유사 배열로부터 새로운 CVImage 인스턴스를 생성합니다.
Last updated
Was this helpful?