For the complete documentation index, see llms.txt. This page is also available as Markdown.

inferencejs リファレンス

`inferencejs` のリファレンス。Roboflow で構築したコンピュータビジョンアプリケーションを Web/JavaScript 環境にデプロイするためのエッジライブラリです。

詳しく見る inferencejs 、当社のWeb SDK、 こちら

インストール

このライブラリは、vite、webpack、parcel などのバンドラーを使って、ブラウザ内で使用するように設計されています。バンドラーが設定済みであると仮定すると、次のコマンドを実行してインストールできます:

npm install inferencejs

はじめに

まず、 InferenceEngineを初期化します。これにより、ユーザーインターフェースをブロックせずにモデルをダウンロードして実行できるバックグラウンドワーカーが起動します。

import { InferenceEngine } from "inferencejs";

const PUBLISHABLE_KEY = "rf_a6cd..."; // Roboflow から取得した自分の公開可能キーに置き換えてください

const inferEngine = new InferenceEngine();

// モデルのページからコピーした model id を使ってモデルを読み込みます。
const workerId = await inferEngine.startWorkerByModelId("[MODEL ID]", PUBLISHABLE_KEY);

// モデルに対して推論を実行します
const result = await inferEngine.infer(workerId, img);

モデル id はモデルのページに表示され、次の形式になっています workspace/model-slug (例: my-workspace/hard-hat-abc-1-yolov8n-t1). レガシーなプロジェクト版モデルは startWorker を使って、プロジェクトの slug とバージョン番号を指定して読み込めます。複数の学習済みモデルを持つバージョンでは、レガシーな {project}/{version} id は、存在する場合はそのバージョンのエイリアスを通じて解決されます。エイリアスがない場合は、バージョンにモデルが 1 つだけあるときのみ機能し、それ以外では id が曖昧になり、モデル自体の model id で読み込む必要があります。参照: レガシー ID の解決方法.

API

InferenceEngine

new InferenceEngine()

新しい InferenceEngine インスタンスを作成します。

startWorkerByModelId(modelId: string, publishableKey: string): Promise<number>

指定された model id の新しいワーカーを起動し、 workerIdを返します。これはモデルを読み込む推奨方法です。 modelId は完全な workspace/model-slug id で、モデルのページに表示されます。バージョンなしのモデルや複数モデルのバージョンで機能します。 publishableKey は必須で、Roboflow のプロジェクト設定フォルダから取得できます。

startWorker(modelName: string, modelVersion: number, publishableKey: string): Promise<number>

プロジェクトの URL slug と整数のバージョンで指定されたレガシーなモデルを読み込み、 workerIdを返します。 startWorkerByModelId を新しい統合では使用してください。 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.

YOLO Lite YOLOv8 YOLOv5

を使用して推論を行った結果は、 InferenceEngine YOLO Lite、YOLOv8、または YOLOv5 の物体検出モデルでは、次の型の配列になります:

GazeDetections

を使用して推論を行った結果は、 InferenceEngine の Gaze モデルでのものです。次の型の配列です:

leftEye.x

左目の x 位置。入力画像の幅に対する割合として 0 から 1 の間の浮動小数で表されます。

leftEye.y

左目の y 位置。入力画像の高さに対する割合として 0 から 1 の間の浮動小数で表されます。

rightEye.x

右目の x 位置。入力画像の幅に対する割合として 0 から 1 の間の浮動小数で表されます。

rightEye.y

右目の y 位置。入力画像の高さに対する割合として 0 から 1 の間の浮動小数で表されます。

yaw

視線の yaw。ラジアンで測定されます。

pitch

視線の pitch。ラジアンで測定されます。

CVImage

コンピュータビジョンタスクに使用できる画像を表すクラスです。画像を操作・変換するためのさまざまなメソッドを提供します。

コンストラクタ

次の CVImage(image) クラスコンストラクタは、クラスの新しいインスタンスを初期化します。次のいずれかの型の画像を 1 つ受け取ります:

  • ImageBitmap:任意の ImageBitmap 画像表現。

  • HTMLImageElement:任意の HTMLImageElement 画像表現。

  • tf.Tensor:任意の tf.Tensor 画像表現。

  • tf.Tensor4D:任意の 4D tf.Tensor 画像表現。

メソッド

bitmap()

解決される Promise を返します。 ImageBitmap 画像表現。画像がすでに bitmap の場合は、キャッシュされた bitmap を返します。

tensor()

画像の tf.Tensor 表現を返します。画像がすでに tensor の場合は、キャッシュされた tensor を返します。

tensor4D()

解決される Promise を返します。4D tf.Tensor 画像表現。画像がすでに 4D tensor の場合は、キャッシュされた 4D tensor を返します。

array()

解決される Promise を返します。画像がすでに tensor の場合は、tensor を JavaScript 配列に変換します。

dims()

画像の次元を含む配列を返します。画像が bitmap の場合は、 [width, height]を返します。画像が tensor の場合は、その形状を返します。画像が HTML 画像要素の場合は、 [width, height].

dispose()

メモリを解放するために、画像の tensor 表現を破棄します。

static fromArray(array: tf.TensorLike)

新しい CVImage インスタンスを、与えられた tensor-like 配列から作成します。

最終更新

役に立ちましたか?