> 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/roboflow/roboflow-jp/datasets/adding-data/image-metadata.md).

# Image Metadata

Metadataを使うと、Roboflow workspace内の画像にカスタムのキー・バリュー対を付与できます。メタデータを使えば、撮影条件、デバイス識別子、品質スコア、その他ドメイン固有の属性などの構造化情報を画像と一緒に保存し、それらの属性を軸にデータを検索、フィルタリング、整理できます。

## 概要

各画像には、任意の数のメタデータ項目を保持できます。1項目は **キー** （たとえば `camera_id`）と、 **値** （文字列、数値、または真偽値）です。

| 値の型 | 例                                           |
| --- | ------------------------------------------- |
| 文字列 | `location: "warehouse-3"`, `shift: "night"` |
| 数値  | `temperature: 72.5`, `quality_score: 95`    |
| 真偽値 | `reviewed: true`, `is_night: false`         |

### ユースケース

* **撮影コンテキストの記録** — カメラID、GPS座標、天候、照明条件を記録
* **品質追跡** — 信頼度スコア、レビュー状態、アノテーターIDを付与
* **データの切り分け** — 任意の属性でデータセットを絞り込み、目的別のトレーニングセットを作成
* **外部システム連携** — 画像を社内ツールに紐づける識別子を保存

## メタデータの追加

Web UI、Python SDK、REST API、または以下を介して自動的に画像へメタデータを追加できます： [S3 Bucket Mirror](broken://pages/87c50bd7cb92166a04e9a1e880e692b122ef9297).

### Web Application

{% stepper %}
{% step %}

#### 画像を開く

プロジェクト内の任意の画像を開きます。
{% endstep %}

{% step %}

#### キーと値を入力

メタデータ欄で、最初の入力欄に **キー** キーを入力し、2つ目の入力欄に **値** 値を入力します。
{% endstep %}

{% step %}

#### Add

押して **Enterキー** で保存するか、Addをクリックします
{% endstep %}
{% endstepper %}

値は型ごとに自動的に解析されます：

| 入力した値            | 保存形式                   |
| ---------------- | ---------------------- |
| `front`          | `"front"` (文字列)        |
| `95`             | `95` (数値)              |
| `3.14`           | `3.14` (数値)            |
| `true` / `false` | `true` / `false` (真偽値) |

<figure><img src="/files/9e32629a005dc64e4665ccb8fecc587ed638ae30" alt=""><figcaption><p>Annotation Toolのメタデータエディタ</p></figcaption></figure>

### Python SDK

次の `metadata` 辞書を画像アップロード時に渡します：

```python
import roboflow

rf = roboflow.Roboflow(api_key="YOUR_API_KEY")
project = rf.workspace("your-workspace").project("your-project")

project.upload(
    image_path="image.jpg",
    metadata={
        "camera_id": "cam001",
        "location": "warehouse-3",
        "temperature": 72.5,
        "is_night": False
    }
)
```

### CLI

次の `roboflow image metadata` コマンドを使うと、既存画像のメタデータとタグを更新できます：

```bash
# 単一画像にメタデータを設定
roboflow image metadata <image_id> -m '{"camera_id": "cam001", "location": "warehouse-3"}'

# 画像にタグを追加
roboflow image metadata <image_id> --tags "reviewed,v2"

# メタデータキーを削除
roboflow image metadata <image_id> --remove-metadata "old_key,deprecated_field"

# タグを削除
roboflow image metadata <image_id> --remove-tags "draft"

# 組み合わせ：1回の呼び出しでメタデータを設定し、タグを追加し、タグを削除
roboflow image metadata <image_id> -m '{"quality_score": 95}' --tags "reviewed" --remove-tags "pending"

# 複数画像を一括更新（非同期）
roboflow image metadata img1,img2,img3 -m '{"batch": "june-2026"}' --tags "processed" --poll
```

単一の画像IDは同期的に更新されます。カンマ区切りの複数ID（最大1,000件）はバッチ非同期エンドポイントを使用します。 `--poll` を付けるとバッチ完了まで待機します。付けない場合、コマンドは `taskId` を返し、後で次のコマンドで確認できます： `roboflow asynctasks get <task-id>`.

| フラグ                    | 説明                          |
| ---------------------- | --------------------------- |
| `-m`, `--metadata`     | 設定するキー・バリュー対のJSON文字列        |
| `--remove-metadata`    | 削除するメタデータキーをカンマ区切りで指定       |
| `--tags`               | 追加するタグをカンマ区切りで指定            |
| `--remove-tags`        | 削除するタグをカンマ区切りで指定            |
| `--poll` / `--no-poll` | バッチ完了まで待機（バッチモードのみ）         |
| `--timeout`            | ポーリングのタイムアウト（秒、デフォルト: 1800） |

### REST API

#### アップロード時にメタデータを追加

次の `metadata` フィールド（JSON文字列化したもの）を、画像アップロード時のmultipart form dataに含めます：

```bash
curl -X POST "https://api.roboflow.com/dataset/your-dataset/upload?api_key=YOUR_API_KEY" \
  -F "name=image.jpg" \
  -F "split=train" \
  -F "file=@image.jpg" \
  -F 'metadata={"camera_id":"cam001","temperature":72.5}'
```

### S3 Bucket Mirror

次の場合は [Datasources](broken://pages/87c50bd7cb92166a04e9a1e880e692b122ef9297) S3 bucketから画像を同期する際、メタデータは各画像の横に置かれたJSON sidecarファイルを通じてインポートされます。 [Datasources](broken://pages/87c50bd7cb92166a04e9a1e880e692b122ef9297) sidecarファイルの形式、制約、更新戦略については

## メタデータで検索

メタデータはインデックス化され、次の場所で検索可能です： [Asset Library](/roboflow/roboflow-jp/workspaces/asset-library.md)。検索バーを使って、メタデータ値で画像を絞り込めます：

```
metadata.camera_id:"cam001"
metadata.quality_score>80
metadata.reviewed:true
```

メタデータフィルタは、他の検索フィルタと組み合わせられます：

```
metadata.location:"warehouse-3" AND class:forklift
```

Asset Libraryでは、workspace内に存在する内容に基づいてメタデータのキーと値のオートコンプリートも利用できます。

## キー命名規則

メタデータキーは次の規則に従う必要があります：

| 規則      | 詳細                                               |
| ------- | ------------------------------------------------ |
| 使用可能な文字 | 文字（`a-z`, `A-Z`）、数字（`0-9`）、アンダースコア（`_`）、ドット（`.`) |
| 先頭文字    | 英字、数字、またはアンダースコアである必要があります                       |
| 禁止文字    | スラッシュ（`/`）は使用できません                               |

有効なキー： `camera_id`, `capture.temperature`, `_internal_ref`, `v2_score`

無効なキー： `camera/id` （含む `/`), `.starts_with_dot` （先頭が `.`), `スペースを含む` （スペースを含む）

## Metadata と Tags の比較

メタデータと [タグ](/roboflow/roboflow-jp/datasets/manage-datasets/add-tags-to-images.md) はどちらも画像整理に役立ちますが、用途は異なります：

|             | タグ                                   | メタデータ                                      |
| ----------- | ------------------------------------ | ------------------------------------------ |
| **構造**      | 単純なラベル                               | キー・バリュー対                                   |
| **値**       | 値はなく、名前のみ                            | 文字列、数値、または真偽値                              |
| **適している用途** | 分類、ワークフローの状態                         | 構造化された属性、計測値                               |
| **例**       | `reviewed`, `v2`, `needs-annotation` | `temperature: 72.5`, `camera_id: "cam001"` |

同じ画像に両方を使えます。たとえば、画像に `reviewed` とタグ付けし、さらに `reviewer: "alice"` および `confidence: 0.95` をメタデータとして保存できます。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.roboflow.com/roboflow/roboflow-jp/datasets/adding-data/image-metadata.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
