> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-serverless-sft-revamp.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 画像

export const GitHubLink = ({url}) => <a href={url} target="_blank" rel="noopener noreferrer" className="github-source-link">
    <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
      <path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z" />
    </svg>
    GitHub source
  </a>;

<GitHubLink url="https://github.com/wandb/wandb/blob/main/wandb/sdk/data_types/image.py" />

## <kbd>class</kbd> `Image`

W\&B に画像をログ記録するためのクラスです。

### <kbd>method</kbd> `Image.__init__`

```python theme={null}
__init__(
    data_or_path: 'ImageDataOrPathType',
    mode: Optional[str] = None,
    caption: Optional[str] = None,
    grouping: Optional[int] = None,
    classes: Optional[ForwardRef('Classes'), Sequence[dict]] = None,
    boxes: Optional[Dict[str, ForwardRef('BoundingBoxes2D')], Dict[str, dict]] = None,
    masks: Optional[Dict[str, ForwardRef('ImageMask')], Dict[str, dict]] = None,
    file_type: Optional[str] = None,
    normalize: bool = True
) → None
```

`wandb.Image` オブジェクトを初期化します。

このクラスは様々な画像データ形式を処理し、必要に応じてピクセル値を \[0, 255] の範囲に自動的に正規化することで、 W\&B バックエンドとの互換性を確保します。

* \[0, 1] の範囲のデータは 255 倍され、 uint8 に変換されます。
* \[-1, 1] の範囲のデータは、 -1 を 0 に、 1 を 255 にマッピングすることで \[0, 255] にスケール調整され、 uint8 に変換されます。
* \[-1, 1] 外かつ \[0, 255] 外のデータは、 \[0, 255] にクリップされ、 uint8 に変換されます（値が \[0, 255] を超える場合は警告が表示されます）。
* すでに \[0, 255] の範囲にあるデータは、変更されずに uint8 に変換されます。

**arg:**

* `data_or_path`: 画像データの NumPy 配列 / PyTorch tensor 、 PIL 画像オブジェクト、または画像ファイルへのパスを受け取ります。 NumPy 配列または PyTorch tensor が提供された場合、画像データは指定された `file_type` で保存されます。 `normalize` が `False` に設定されていない限り、値が \[0, 255] の範囲にない、またはすべての値が \[0, 1] の範囲にある場合、画像ピクセル値は \[0, 255] の範囲に正規化されます。
  * PyTorch tensor は (channel, height, width) の形式である必要があります。
  * NumPy 配列は (height, width, channel) の形式である必要があります。
* `mode`: 画像の PIL モード。一般的なものは "L"、 "RGB"、 "RGBA" です。
* 詳細については Pillow の公式ドキュメントを参照してください: [https://pillow.readthedocs.io/en/stable/handbook/concepts.html#modes](https://pillow.readthedocs.io/en/stable/handbook/concepts.html#modes)
* `caption`: 画像表示用のキャプション（ラベル）。
* `grouping`: 画像のグループ化番号。
* `classes`: バウンディングボックスや画像マスクのラベル付けに使用される、画像のクラス情報のリスト。
* `boxes`: 画像のバウンディングボックス情報を含む辞書。
* [https://docs.wandb.ai/ref/python/data-types/boundingboxes2d/](https://docs.wandb.ai/ref/python/data-types/boundingboxes2d/) を参照してください。
* `masks`: 画像のマスク情報を含む辞書。
* [https://docs.wandb.ai/ref/python/data-types/imagemask/](https://docs.wandb.ai/ref/python/data-types/imagemask/) を参照してください。
* `file_type`: 画像を保存するファイル形式。 `data_or_path` が画像ファイルへのパスである場合、このパラメータは効果がありません。
* `normalize`: `True` の場合、画像のピクセル値を \[0, 255] の範囲に収まるように正規化します。正規化は `data_or_path` が numpy 配列または pytorch tensor の場合にのみ適用されます。

**Examples:**
NumPy 配列から `wandb.Image` を作成する

```python theme={null}
import numpy as np
import wandb

# run を初期化
with wandb.init() as run:
    examples = []
    for i in range(3):
         # ランダムな画像データを生成
         pixels = np.random.randint(low=0, high=256, size=(100, 100, 3))
         image = wandb.Image(pixels, caption=f"random field {i}")
         examples.append(image)
    # データをログ記録
    run.log({"examples": examples})
```

PILImage から `wandb.Image` を作成する

```python theme={null}
import numpy as np
from PIL import Image as PILImage
import wandb

# run を初期化
with wandb.init() as run:
    examples = []
    for i in range(3):
         pixels = np.random.randint(
             low=0, high=256, size=(100, 100, 3), dtype=np.uint8
         )
         pil_image = PILImage.fromarray(pixels, mode="RGB")
         image = wandb.Image(pil_image, caption=f"random field {i}")
         examples.append(image)
    # データをログ記録
    run.log({"examples": examples})
```

デフォルトの .png ではなく .jpg でログ記録する

```python theme={null}
import numpy as np
import wandb

# run を初期化
with wandb.init() as run:
    examples = []
    for i in range(3):
         pixels = np.random.randint(low=0, high=256, size=(100, 100, 3))
         image = wandb.Image(
             pixels, caption=f"random field {i}", file_type="jpg"
         )
         examples.append(image)
    # データをログ記録
    run.log({"examples": examples})
```

***

### <kbd>property</kbd> Image.image
