Web inference.js
inference.js を使用してブラウザ上でエッジのリアルタイム予測を実行します
inferencejs は、Roboflow で学習したモデルを使用して、ブラウザ経由でリアルタイム推論を可能にする JavaScript パッケージです。
ほとんどのビジネス向けアプリケーションでは、 Hosted API が適しています。しかし、多くのコンシューマー向けアプリケーションや一部のエンタープライズ用途では、サーバーホスト型モデルは実用的ではない場合があります(たとえば、ユーザーの帯域幅が限られている、またはリモート API では達成できない低レイテンシーが必要な場合など)。
学習リソース
Webカメラでモデルを試す:次の hand-detector モデルの Webカメラデモを試せます (学習済み:公開 EgoHands データセット).
インタラクティブな Replit 環境:Repl.it に「Getting Started」プロジェクトを公開しており、 当社の Repl.it テンプレートを使って YOLOv8 モデルをデプロイする方法.
GitHub テンプレート: Roboflow のホームページ は、
inferencejsを使用して COCO 推論ウィジェットを動かしています。README には、GitHub Pages を使用してモデルを Web にデプロイするためのリポジトリテンプレートの使い方が記載されています。ドキュメント:もし特定の関数についてさらに詳しい情報が必要であれば、
inferencejsの ドキュメントページ をご覧いただくか、以下のガイド中のinferencejsメソッドの記載をクリックすると、該当するドキュメントに移動します。
対応モデル
inferencejs は現在、以下のモデルアーキテクチャをサポートしています:
YOLOv8
YOLOv5
インストール
追加方法: inference をあなたのプロジェクトに追加するには、npm でインストールするか、script タグの参照をページの <head> タグに追加してください。
npm install inferencejs<script src="https://cdn.jsdelivr.net/npm/inferencejs"></script>初期化 inferencejs
inferencejs認証
あなたの publishable_key は Roboflow の Workspace 設定から取得できます。

注意: あなたの publishable_key は inferencejs, ではなく あなたの private API key(秘密にしておく必要があります)と一緒に使用されます。
まず、 InferenceEngine をインポートし、新しい推論エンジンオブジェクトを作成します
import { InferenceEngine } from "inferencejs";
const inferEngine = new InferenceEngine();これで、あなたの publishable_key を使用し、モデルメタデータ(モデル名とバージョン)に加えて、信頼度しきい値や重なりしきい値などの設定パラメータを指定して、roboflow からモデルをロードできます。
const workerId = await inferEngine.startWorker("[model name]", "[version]", "[publishable key]");inferencejs は、選択したモデルを実行するワーカーを起動します。返されるワーカー ID は、推論に使用する InferenceEngine 内のワーカー ID に対応します。モデルで推論するには、 infer メソッドを InferenceEngine.
に対して呼び出します。画像を読み込み、ワーカーで推論してみましょう。
const image = document.getElementById("image"); // id `image` を持つ画像要素を取得
const predictions = await inferEngine.infer(workerId, image); // 画像で推論これは予測の配列(この場合はクラス RFObjectDetectionPrediction )
設定
の予測のフィルタリング方法をカスタマイズしたい場合は、ワーカー作成時にパラメータを渡せます。 inferencejs は
const configuration = {scoreThreshold: 0.5, iouThreshold: 0.5, maxNumBoxes: 20};
const workerId = await inferEngine.startWorker("[model name]", "[version]", "[publishable key]", configuration);または、推論時に設定オプションを渡すこともできます
const configuration = {
scoreThreshold: 0.5,
iouThreshold: 0.5,
maxNumBoxes: 20
};
const predictions = await inferEngine.infer(workerId, image, configuration);Last updated
Was this helpful?