> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/workflows/ja/burokku/blocks/logic-and-branching/per-class-confidence-filter.md).

# クラス別信頼度フィルター

各クラスに異なる信頼度しきい値を適用して検出予測をフィルタリングし、信頼度がそのクラスに設定されたしきい値以上の検出のみを保持します（リストにないクラスには設定可能なフォールバックしきい値を使用）。

## このブロックの仕組み

このブロックは、クラスを意識した信頼度フィルタリングを検出予測に適用し、クラスごとの品質要件に基づいてどの検出を保持するかを正確に制御できます。このブロックは次のとおりです。

1. 検出予測（物体検出、インスタンスセグメンテーション、またはキーポイント検出）と、クラス名から信頼度しきい値への対応を示す辞書を受け取ります
2. 各検出を順に処理し、その検出のクラス名に関連付けられたしきい値を参照します
3. クラスが辞書に存在しない場合は、設定可能な `default_threshold` 値
4. 信頼度が解決されたしきい値以上の検出のみを保持します
5. 元のメタデータ（クラスID、マスク、キーポイント、トラッカーIDなど）をすべて保持したまま、フィルタリングされた検出を返します

単一のグローバルな信頼度しきい値とは異なり、このブロックでは誤検出が起こりやすいクラスには高い信頼度の予測を要求し、検出が難しいクラスにはより緩いしきい値を適用できます。汎用的な detections filter とは異なり、目的別に設計された辞書入力を公開しており、次の単純な `{"class_name": threshold}` JSON オブジェクトにきれいに対応します。

## 一般的な使用例

* **ノイズを起こしやすいクラス**: 誤検出を頻繁に出すクラスには非常に高い信頼度（例: 0.9）を要求し、一方で挙動の安定したクラスにはより低い信頼度を受け入れます
* **検出が難しいクラス**: モデルが高い信頼度でほとんど検出できないクラスについては、しきい値を下げて完全に除外されないようにします
* **本番運用向けのフィルタリング**: 評価中に調整したドメイン固有のしきい値を適用し、下流の分析、アラート、またはカウント用ブロックがプロジェクトの品質基準を満たす検出だけを受け取るようにします
* **マルチクラスのパイプライン**: 単一のグローバルな信頼度しきい値では粗すぎる場合に、複数のクラスを一度に予測する物体検出モデルと組み合わせます

## 他のブロックへの接続

このブロックのフィルタリング済み予測は、次のブロックに接続できます。

* **可視化ブロック** (Bounding Box Visualization、Label Visualization、Polygon Visualization) に接続して、各クラスのしきい値を超えた検出だけを描画します
* **カウントおよび分析用ブロック** (Line Counter、Time in Zone、Velocity) に接続して、指標が高品質な検出のみを反映するようにします
* **トラッキング用ブロック** (Byte Tracker) に接続して、低信頼度のノイズでトラッカーの関連付けが汚染されないようにします
* **保存または送信先ブロック** (Roboflow Dataset Upload、Webhook Sink、CSV Formatter) に接続して、品質基準を満たす検出のみが保存または送信されるようにします
* **下流の変換ブロック** (Dynamic Crop、Detection Offset) に接続して、フィルタリングされたサブセットに対して後続処理を行います

### 型識別子

ステップで次の識別子を使用してください `"type"` フィールド： `roboflow_core/per_class_confidence_filter@v1` ワークフローにこのブロックをステップとして追加するには。

### プロパティ

| **名前**              | **型**              | **説明**                                                                                                                                     | 参照 |
| ------------------- | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -- |
| `name`              | `str`              | このステップの一意の識別子を入力してください。                                                                                                                    | ❌  |
| `class_thresholds`  | `Dict[str, float]` | クラス名から最小信頼度しきい値へのマッピング。ここにクラス名が含まれる検出は、信頼度が対応するしきい値以上の場合のみ保持されます。含まれないクラスは default\_threshold にフォールバックします。しきい値は \[0.0, 1.0] の範囲である必要があります。 | ✅  |
| `default_threshold` | `float`            | class\_thresholds に記載されていないクラス名の検出に適用される信頼度しきい値。\[0.0, 1.0] の範囲でなければなりません。                                                                 | ✅  |

この **参照** 列は、で利用可能な動的値を使ってプロパティをパラメータ化できる可能性を示します `ワークフロー` 実行時。参照 *バインディング* 詳細は。

### 入力と出力のバインディング

利用可能な接続は、そのバインディング種別によって異なります。どのバインディング種別が `クラス別信頼度フィルター` のバージョン `v1` あるか確認してください。

<details>

<summary>入力と出力のバインディング</summary>

* 入力
  * `predictions` (*Union\[*[*`object_detection_prediction`*](/workflows/ja/gaido/developer-guide/kinds/object-detection-prediction.md)*,* [*`instance_segmentation_prediction`*](/workflows/ja/gaido/developer-guide/kinds/instance-segmentation-prediction.md)*,* [*`keypoint_detection_prediction`*](/workflows/ja/gaido/developer-guide/kinds/keypoint-detection-prediction.md)*]*): フィルタリングする検出予測です。各検出は、その信頼度がクラスに設定されたしきい値以上である場合にのみ保持されます（class\_thresholds に記載されていないクラスは default\_threshold にフォールバックします）。
  * `class_thresholds` ([*`辞書`*](/workflows/ja/gaido/developer-guide/kinds/dictionary.md)): クラス名から最小信頼度しきい値へのマッピング。ここにクラス名が含まれる検出は、信頼度が対応するしきい値以上の場合のみ保持されます。含まれないクラスは default\_threshold にフォールバックします。しきい値は \[0.0, 1.0] の範囲である必要があります。
  * `default_threshold` ([*`float_zero_to_one`*](/workflows/ja/gaido/developer-guide/kinds/float-zero-to-one.md)): class\_thresholds に記載されていないクラス名の検出に適用される信頼度しきい値。\[0.0, 1.0] の範囲でなければなりません。
* 出力
  * `predictions` (*Union\[*[*`object_detection_prediction`*](/workflows/ja/gaido/developer-guide/kinds/object-detection-prediction.md)*,* [*`instance_segmentation_prediction`*](/workflows/ja/gaido/developer-guide/kinds/instance-segmentation-prediction.md)*,* [*`keypoint_detection_prediction`*](/workflows/ja/gaido/developer-guide/kinds/keypoint-detection-prediction.md)*]*）：sv.Detections(...) 形式の検出バウンディングボックスを含む予測。 `object_detection_prediction` または、sv.Detections(...) 形式の検出バウンディングボックスとセグメンテーションマスクを含む予測。 `instance_segmentation_prediction` または、検出されたバウンディングボックスと検出されたキーポイントを sv.Detections(...) オブジェクトの形式で持つ Prediction の場合 `keypoint_detection_prediction`.

</details>

<details>

<summary>JSON 定義の例</summary>

```json
{
	    "name": "<your_step_name_here>",
	    "type": "roboflow_core/per_class_confidence_filter@v1",
	    "predictions": "$steps.object_detection_model.predictions",
	    "class_thresholds": {
	        "car": 0.5,
	        "person": 0.98
	    },
	    "default_threshold": 0.3
	}
```

</details>
