> 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/classical-computer-vision/pixel-color-count.md).

# ピクセル色情報カウント

画像内のピクセルを数え、指定した許容範囲内で対象色に一致するものを、色範囲マスキングを使用して一致ピクセルを特定し、色分析、品質管理、色ベースの測定、およびピクセルレベルの色の定量化ワークフロー向けに、色の許容範囲内のピクセル総数を返します。

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

このブロックは、画像内のピクセルのうち、許容範囲内で特定の対象色に一致するものがいくつあるかを数え、ピクセルレベルの色の定量化を提供します。このブロックは:

1. 入力画像と対象色の指定（16進文字列、RGBタプル文字列、またはRGBタプル）を受け取ります
2. OpenCVで処理するために、対象色をBGR（Blue-Green-Red）形式に変換します:
   * 16進色文字列を解析します（例: "#431112" または "#412" の省略記法）
   * RGBタプル文字列を解析します（例: "(128, 32, 64)"）
   * RGBタプルを直接扱います（例: (18, 17, 67)）
   * RGBをBGR形式に変換します（色チャンネルの順序を逆にします）。OpenCVはBGRを使用するためです
3. 色の許容範囲の境界を計算します:
   * 対象色の各BGRチャンネルから許容値を引いて下限を作成します
   * 対象色の各BGRチャンネルに許容値を加えて上限を作成します
   * 各チャンネルの境界を有効な0〜255の範囲にクリップします
   * BGR空間に3次元の色キューブを定義し、一致するピクセルがその範囲内に収まる必要があります
4. OpenCVのinRange関数を使用してバイナリマスクを作成します:
   * 各ピクセルのBGR値を下限および上限の境界と比較します
   * ピクセルの色が許容範囲内にあれば、マスクのピクセルを255（白）に設定します
   * ピクセルの色が許容範囲外であれば、マスクのピクセルを0（黒）に設定します
   * ベクトル化された演算を使用して、画像全体にわたる効率的なピクセルレベル比較を行います
5. 一致するピクセルを数えます:
   * マスク内の非ゼロピクセルを数えます（値255のピクセル、一致を表します）
   * 許容範囲内で対象色に一致するピクセルの総数を返します

このブロックは、許容値ベースのアプローチを使用してピクセルレベルの色一致を行い、圧縮、照明、または画像処理によるわずかな色の変化を許容します。許容値により対象色の周囲に範囲が作られます。たとえば許容値10では、各BGRチャンネルで最大±10だけ異なるピクセルが許容されます（各チャンネルの合計範囲は21値）。許容値が低い場合（例: 5〜10）は非常に近い色一致が必要で、より厳密ですが、わずかに異なる色合いを見逃すことがあります。許容値が高い場合（例: 20〜30）は、より多くの色の変化を許容し、より広い範囲の類似色に一致しますが、意図しない色が含まれる可能性があります。画像のアーティファクトや処理のために完全一致が存在しない場合の特定色のピクセル数を数えるのに役立ちます。

## 一般的な使用例

* **色領域の測定**: 画像内の特定色の面積や被覆率を測定します（例: 画像内の特定色の被覆率を測定する、色分布を定量化する、色の割合を評価する）。色領域の定量化ワークフローを可能にします
* **品質管理と検査**: 品質管理のために期待される色のピクセルを数えます（例: 製品の色の一貫性を確認する、色の欠陥を検出する、画像内の期待色を検証する）。色ベースの品質管理ワークフローを可能にします
* **色ベースの分析**: 特定の色の有無や量に基づいて画像を分析します（例: 画像内の色分布を分析する、色の使用量を定量化する、色の特性を測定する）。色の定量化分析ワークフローを可能にします
* **画像処理の検証**: 期待される色を数えることで画像処理結果を検証します（例: 色変換を確認する、色補正を検証する、色フィルタリング結果を確認する）。色検証ワークフローを可能にします
* **特徴の検出と測定**: 色の特性に基づいて特徴を検出・測定します（例: 色のついた領域のピクセルを数える、色ベースの特徴を測定する、色で定義された領域を定量化する）。色ベースの特徴測定ワークフローを可能にします
* **しきい値ベースの色検出**: ピクセル数を使用して、しきい値ベースの色検出を行います（例: 十分な数のピクセルが色に一致するかを検出する、色の存在しきい値を判定する、色ベースのトリガーを実装する）。しきい値ベースの色検出ワークフローを可能にします

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

このブロックは画像と対象色を受け取り、ピクセル数を出力します:

* **画像入力ブロックの後に** 入力画像内の特定色のピクセルを数えるために（例: カメラ映像内の色ピクセルを数える、画像入力内の色を分析する、画像内の色を定量化する）、色ピクセルカウントのワークフローを可能にします
* **切り抜きブロックの後に** 画像の特定領域内のピクセルを数えるために（例: 切り抜いた領域内の色ピクセルを数える、特定エリアの色を分析する、選択した領域の色を定量化する）、領域ベースの色ピクセルカウントを可能にします
* **前処理ブロックの後に** 画像処理後にピクセルを数えるために（例: フィルタリング後の色を数える、強調後の色を分析する、変換後の色を定量化する）、処理済み画像の色カウントワークフローを可能にします
* **フィルタリングまたはロジックブロックの前に** ピクセル数を意思決定に使用するために（例: ピクセル数に基づいてフィルタリングする、色の量に基づいて判断する、ピクセル数に基づくロジックを適用する）、カウントベースの条件付きワークフローを可能にします
* **データ保存ブロックの前** ピクセル数情報を保存するために（例: 画像とともに色ピクセル数を保存する、色分析結果を保存する、色定量化データを記録する）、色カウントのメタデータ保存ワークフローを可能にします
* **品質管理ワークフローにおいて** ピクセルカウントが色の特性を検証する場合に（例: 品質管理で色の量を確認する、色の被覆率を検証する、色の一貫性を確認する）、色ベースの品質管理ワークフローを可能にします

### 型識別子

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

### プロパティ

| **名前**         | **型**                              | **説明**                                                                                                                                                                                                                                                                                                                            | 参照 |
| -------------- | ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -- |
| `name`         | `str`                              | このステップの一意の識別子を入力してください。                                                                                                                                                                                                                                                                                                           | ❌  |
| `target_color` | `Union[Tuple[int, int, int], str]` | 画像内で数える対象色。複数の形式で指定できます: (1) 16進文字列形式: '#RRGGBB'（6桁、例: '#431112'）または '#RGB'（3桁の省略記法、例: '#412'）、(2) RGBタプル文字列形式: '(R, G, B)'（例: '(128, 32, 64)'）、または (3) RGBタプル: 整数の (R, G, B) タプル（例: (18, 17, 67)）。値はRGB色空間（各チャンネル0〜255）で指定してください。色はOpenCV処理のために自動的にBGR形式へ変換されます。ピクセル数を数えたい正確な色を指定するために使用します..                                    | ✅  |
| `許容誤差`         | `整数`                               | 色一致の許容値（0〜255）。各BGRチャンネルが対象色からどれだけ変化しても一致と見なされるかを決定します。許容値は各色チャンネルに個別に適用されます。許容値10では、各BGRチャンネルに対して±10の範囲が作られます（各チャンネルの合計範囲は21値）。低い値（例: 5〜10）は非常に近い色一致が必要で、より正確ですが、わずかに異なる色合いを見逃す可能性があります。高い値（例: 20〜30）は、より多くの色変化を許容し、より広い範囲の類似色に一致しますが、意図しない色が含まれる場合があります。デフォルトは10で、良いバランスを提供します。画像品質、圧縮アーティファクト、そして色一致をどれだけ厳密にしたいかに応じて調整してください.. | ✅  |

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

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

利用可能な接続は、そのバインディング種別によって異なります。どのバインディング種別が `ピクセル色情報カウント` のバージョン `v1` あるか確認してください。

<details>

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

* 入力
  * `image` ([*`image`*](/workflows/ja/gaido/developer-guide/kinds/image.md)）: ピクセルの色カウントを解析する入力画像。このブロックは、この画像内で指定されたtarget\_colorに一致するピクセルを数えます。画像内のすべてのピクセルが解析されます。画像はBGR形式（OpenCV標準）で処理され、各ピクセルのBGR値に対して色一致が行われます。処理時間は画像サイズによって異なります..
  * `target_color` (*Union\[*[*`rgb_color`*](/workflows/ja/gaido/developer-guide/kinds/rgb-color.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*）: 画像内で数える対象色。複数の形式で指定できます: (1) 16進文字列形式: '#RRGGBB'（6桁、例: '#431112'）または '#RGB'（3桁の省略記法、例: '#412'）、(2) RGBタプル文字列形式: '(R, G, B)'（例: '(128, 32, 64)'）、または (3) RGBタプル: 整数の (R, G, B) タプル（例: (18, 17, 67)）。値はRGB色空間（各チャンネル0〜255）で指定してください。色はOpenCV処理のために自動的にBGR形式へ変換されます。ピクセル数を数えたい正確な色を指定するために使用します..
  * `許容誤差` ([*`整数`*](/workflows/ja/gaido/developer-guide/kinds/integer.md)）: 色一致の許容値（0〜255）。各BGRチャンネルが対象色からどれだけ変化しても一致と見なされるかを決定します。許容値は各色チャンネルに個別に適用されます。許容値10では、各BGRチャンネルに対して±10の範囲が作られます（各チャンネルの合計範囲は21値）。低い値（例: 5〜10）は非常に近い色一致が必要で、より正確ですが、わずかに異なる色合いを見逃す可能性があります。高い値（例: 20〜30）は、より多くの色変化を許容し、より広い範囲の類似色に一致しますが、意図しない色が含まれる場合があります。デフォルトは10で、良いバランスを提供します。画像品質、圧縮アーティファクト、そして色一致をどれだけ厳密にしたいかに応じて調整してください..
* 出力
  * `一致ピクセル数` ([`整数`](/workflows/ja/gaido/developer-guide/kinds/integer.md)）：整数値。

</details>

<details>

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

```json
{
	    "name": "<your_step_name_here>",
	    "type": "roboflow_core/pixel_color_count@v1",
	    "image": "$inputs.image",
	    "target_color": "#431112",
	    "tolerance": 10
	}
```

</details>
