> 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/contrast-enhancement.md).

# コントラスト強調

ヒストグラム正規化（GIMP の Auto Levels のアルゴリズム）を使用して画像のコントラストを強調します。このブロックは、画像のヒストグラムを利用可能な全範囲 \[0-255] に広げ、コントラストの低い特徴の視認性を改善します。

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

1. **チャネル解析**: グレースケール画像では、最小値/最大値を直接求めます。カラー画像では、各チャネルを個別に解析します。
2. **ヒストグラム正規化**: 各チャネルについて、線形スケーリングを用いて値を \[min, max] から \[0, 255] に広げます: `output = (input - min) / (max - min) * 255`
3. **クリッピング**: \[0, 255] の外の値は有効範囲に切り詰められます

## 一般的な使用例

* **低コントラストの医用画像**: 取得条件の変化に応じて組織の視認性を正規化します
* **産業検査**: くすんだ素材の微妙な表面欠陥を強調します
* **監視映像**: 夜間や逆光のシーンの視認性を改善します
* **文書スキャン**: 照明の悪い文書写真を明るくします
* **顕微鏡検査**: 弱い蛍光画像や位相差画像の信号を強調します

## 入力パラメータ

**image** : 強調する入力画像（カラーまたはグレースケール）

* 単一チャネル、3チャネル（BGR）、または4チャネル（BGRA）にできます
* カラー画像では各チャネルが個別に正規化されます

**clip\_limit** : 両端で除外するヒストグラム範囲の割合（既定値: 0）

* 範囲: 0-50
* 0: クリッピングなし。最小値から最大値までのヒストグラム全体を使用します
* 1-3: 暗い外れ値と明るい外れ値を除外します（ノイズに強い）
* 5-10: 非常に強い外れ値除去
* 20-50: 極端な外れ値除去。微妙な詳細を失う可能性があります

**contrast\_multiplier** : 正規化後のコントラストスケーリング用の乗数（既定値: 1.0）

* 範囲: 0.1-5.0
* 1.0: 追加のスケーリングなし、正規化のみ
* 0.5-0.9: より滑らかな画像のためにコントラストを下げます
* 1.1-2.0: より劇的な強調のためにコントラストを上げます

**normalize\_brightness** : 中間調の均等化を使用して明るさの正規化を適用します（既定値: False）

* False: ヒストグラム正規化とコントラストスケーリングのみ
* True: ヒストグラム正規化の後、中間調の調整を適用して明るさをバランスさせます

## 出力

**image** : コントラストが正規化された強調画像。形状と型は入力と同じです

## 注意

* **外れ値の影響を受けやすい**: 極端な最小/最大値（単一の暗い/明るいピクセル）により、ヒストグラムの大部分が狭い範囲に引き伸ばされます。前処理として形態学的開操作（Morphological Transformation v2）を使用し、不要な暗い/明るい斑点を除去してください。
* **色ずれ**: カラー画像では各チャネルが独立して引き伸ばされるため、チャネル間のダイナミックレンジが大きく異なると色相が変わることがあります
* **効率**: 非常に高速です - 最小値/最大値を線形スキャンし、その後各ピクセルに線形変換を適用します
* **明るさの正規化**: 有効にすると、よりバランスの取れた知覚的明るさのために中間調のストレッチ（ガンマ ≈ 1.3）を適用します

### 型識別子

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

### プロパティ

| **名前**                 | **型**   | **説明**                                                                                                           | 参照 |
| ---------------------- | ------- | ---------------------------------------------------------------------------------------------------------------- | -- |
| `name`                 | `str`   | このステップの一意の識別子を入力してください。                                                                                          | ❌  |
| `clip_limit`           | `整数`    | 暗部と明部の端でスキップするヒストグラム範囲の割合。0: 最小値から最大値までの全範囲を使用します。1-3: 外れ値をスキップします（ロバスト）。5-10: 非常に強い外れ値除去..                      | ❌  |
| `contrast_multiplier`  | `float` | 正規化後のコントラストスケーリングの乗数。1.0: 追加のスケーリングなし（ヒストグラム正規化のみ）。<1.0: コントラストを下げます。>1.0: より劇的な強調のためにコントラストを上げます..              | ❌  |
| `normalize_brightness` | `bool`  | 中間調の均等化を使用して明るさの正規化を適用します。False の場合は、ヒストグラム正規化とコントラストスケーリングのみが適用されます。True の場合は、よりバランスの取れた知覚的明るさのために中間調調整を適用します.. | ❌  |

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

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

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

<details>

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

* 入力
  * `image` ([*`image`*](/workflows/ja/gaido/developer-guide/kinds/image.md)): 強調する画像（カラーまたはグレースケール）。各チャネルは個別に正規化されます..
* 出力
  * `image` ([`image`](/workflows/ja/gaido/developer-guide/kinds/image.md)): ワークフロー内の画像。

</details>

<details>

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

```json
{
	    "name": "<your_step_name_here>",
	    "type": "roboflow_core/contrast_enhancement@v1",
	    "image": "$inputs.image",
	    "clip_limit": "<block_does_not_provide_example>",
	    "contrast_multiplier": "<block_does_not_provide_example>",
	    "normalize_brightness": "<block_does_not_provide_example>"
	}
```

</details>
