

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 画像データの要件
<a name="clarify-processing-job-data-format-image"></a>

SageMaker Clarify 処理ジョブは、画像の説明をサポートします。このトピックでは、画像データのデータ形式要件について説明します。画像データの処理の詳細については、「[コンピュータービジョンの説明可能性について画像データを分析する](clarify-processing-job-run.md#clarify-processing-job-run-cv)」を参照してください。

画像データセットには 1 つ以上の画像ファイルが含まれます。SageMaker Clarify 処理ジョブへの入力データセットを識別するには、[ProcessingInput](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProcessingJob.html#sagemaker-CreateProcessingJob-request-ProcessingInputs) という名前の `dataset` または分析設定 `dataset_uri` パラメータのいずれかを画像ファイルの Amazon S3 URI プレフィックスに設定します。

サポートされている画像ファイル形式とファイル拡張子を次の表に示します。


| イメージ形式 | ファイル拡張子 | 
| --- | --- | 
|  JPEG  |  jpg、jpeg  | 
|  PNG  |  png  | 

分析設定の `dataset_type` パラメーターを **application/x-image** に設定します。タイプは特定の画像ファイル形式ではないため、`content_type` を使用して画像ファイルの形式と拡張子を決定します。

SageMaker Clarify 処理ジョブは、各画像ファイルを 3 次元 [NumPy 配列](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html) に読み込み、さらに処理します。3 つの次元には、各ピクセルの高さ、幅、RGB 値が含まれます。

## エンドポイントリクエストの形式
<a name="clarify-processing-job-data-format-image-request"></a>

SageMaker Clarify 処理ジョブは、画像の RGB raw データを JPEG などの互換性のある画像形式に変換します。この処理は、予測のためにデータをエンドポイントに送信する前に行われます。サポートされている画像形式は以下のとおりです。


| データ形式 | MIME タイプ | ファイル拡張子 | 
| --- | --- | --- | 
|  JPEG  |  `image/jpeg`  |  jpg、jpeg  | 
|  PNG  |  `image/png`  |  png  | 
|  NPY  |  `application/x-npy`  |  All above  | 

分析設定パラメータ `content_type` を使用して、リクエストペイロードのデータ形式を指定します。`content_type` が指定されていない場合、データ形式はデフォルトの `image/jpeg` になります。

## エンドポイント応答の形式
<a name="clarify-processing-job-data-format-image-response"></a>

SageMaker Clarify 処理ジョブは、推論エンドポイント呼び出しのレスポンスを受信すると、レスポンスペイロードを逆シリアル化し、そこから予測を引き出します。

### 画像分類の問題
<a name="clarify-processing-job-data-format-image-response-class"></a>

レスポンスペイロードのデータ形式は、分析設定パラメータ accept\$1type で指定する必要があります。`accept_type` が指定されていない場合、データ形式はデフォルトの `application/json` になります。サポートされている形式は、表形式データセクションの「**Endpoint response for tabular data**」で説明されている形式と同じです。

単一の画像を受け入れ、各クラスごとに確率値 (スコア) の配列を返す SageMaker AI 組み込み画像分類アルゴリズムの例については、「[イメージ分類アルゴリズムによる推論](image-classification.md#IC-inference)」を参照してください。

次の表に示すように、`content_type` パラメータを `application/jsonlines` に設定すると、レスポンスは JSON オブジェクトになります。


| エンドポイントリクエストペイロード | エンドポイントレスポンスペイロード (文字列表現) | 
| --- | --- | 
|  1 つの画像  |  '\$1"prediction":[0.1,0.6,0.3]\$1'  | 

前の例では、`probability` パラメータを JMESPath 式の "prediction" に設定してスコアを抽出しています。

`content_type` パラメータを `application/json` に設定すると、次の表に示すように、レスポンスは JSON オブジェクトになります。


| エンドポイントリクエストペイロード | エンドポイントレスポンスペイロード (文字列表現) | 
| --- | --- | 
|  1 つの画像  |  '[0.1,0.6,0.3]'  | 

前の例では、`probability` を JMESPath 式の "[\$1]" に設定すると、配列のすべての要素が抽出されます。前の例では、[`0.1, 0.6, 0.3]` が抽出されます。または、`probability` 設定パラメータの設定をスキップすると、配列のすべての要素も抽出されます。これは、ペイロード全体が予測として逆シリアル化されるためです。

### オブジェクト検出の問題
<a name="clarify-processing-job-data-format-object-response-class"></a>

分析設定 `accept_type` のデフォルトは `application/json` で、サポートされている形式はオブジェクトの検出推論の形式のみです。応答の形式の詳細については、「[レスポンスの形式](object-detection-in-formats.md#object-detection-recordio)」を参照してください。

次の表は、配列を出力するエンドポイントからのレスポンスの例です。配列の各要素は、検出されたオブジェクトのクラスインデックス、信頼度スコア、境界ボックスの座標を含む値の配列です。


| エンドポイントリクエストペイロード | エンドポイントレスポンスペイロード (文字列表現) | 
| --- | --- | 
|  1 つの画像 (1 つのオブジェクト)  |  '[[4.0, 0.86419455409049988, 0.3088374733924866, 0.07030484080314636, 0.7110607028007507, 0.9345266819000244]]'  | 
|  1 つの画像 (2 つのオブジェクト)  |  '[[4.0, 0.86419455409049988, 0.3088374733924866, 0.07030484080314636, 0.7110607028007507, 0.9345266819000244],[0.0, 0.73376623392105103, 0.5714187026023865, 0.40427327156066895, 0.827075183391571, 0.9712159633636475]]'  | 

次の表は、配列を参照するキーを含む JSON オブジェクトを出力するエンドポイントからのレスポンスの例です。分析設定 `probability` を "prediction" キーに設定して値を抽出します。


| エンドポイントリクエストペイロード | エンドポイントレスポンスペイロード (文字列表現) | 
| --- | --- | 
|  1 つの画像 (1 つのオブジェクト)  |  '\$1"prediction":[[4.0, 0.86419455409049988, 0.3088374733924866, 0.07030484080314636, 0.7110607028007507, 0.9345266819000244]]\$1'  | 
|  1 つの画像 (2 つのオブジェクト)  |  '\$1"prediction":[[4.0, 0.86419455409049988, 0.3088374733924866, 0.07030484080314636, 0.7110607028007507, 0.9345266819000244],[0.0, 0.73376623392105103, 0.5714187026023865, 0.40427327156066895, 0.827075183391571, 0.9712159633636475]]\$1'  | 

## エンドポイントのリクエストとレスポンスの画像データを事前に確認する
<a name="clarify-processing-job-data-format-object-precheck"></a>

モデルを SageMaker AI リアルタイム推論エンドポイントにデプロイし、エンドポイントにリクエストを送信することをお勧めします。リクエストとレスポンスを手動で調べます。両方が「**画像データを求めるエンドポイントリクエスト**」セクションと「**画像データを求めるエンドポイントレスポンス**」セクションの要件を満たしていることを確認してください。

以下の 2 つのコード例は、画像分類とオブジェクト検出の問題の両方について、リクエストを送信してレスポンスを調べる方法を示しています。

### 画像分類の問題
<a name="clarify-processing-job-data-format-object-precheck-class"></a>

次のコード例は、エンドポイントに PNG ファイルを読み取り、それを分類するように指示します。

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-sagemaker-image-classification \
  --content-type "image/png" \
  --accept "application/json" \
  --body fileb://./test.png  \
  /dev/stderr 1>/dev/null
```

前のコード例から、レスポンス出力は次のようになります。

```
[0.1,0.6,0.3]
```

### オブジェクト検出の問題
<a name="clarify-processing-job-data-format-object-precheck-object"></a>

次のコード例は、JPEG ファイルを読み取り、その中のオブジェクトを検出するようにエンドポイントに指示します。

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-sagemaker-object-detection \
  --content-type "image/jpg" \
  --accept "application/json" \
  --body fileb://./test.jpg  \
  /dev/stderr 1>/dev/null
```

前のコード例から、レスポンス出力は次のようになります。

```
{"prediction":[[4.0, 0.86419455409049988, 0.3088374733924866, 0.07030484080314636, 0.7110607028007507, 0.9345266819000244],[0.0, 0.73376623392105103, 0.5714187026023865, 0.40427327156066895, 0.827075183391571, 0.9712159633636475],[4.0, 0.32643985450267792, 0.3677481412887573, 0.034883320331573486, 0.6318609714508057, 0.5967587828636169],[8.0, 0.22552496790885925, 0.6152569651603699, 0.5722782611846924, 0.882301390171051, 0.8985623121261597],[3.0, 0.42260299175977707, 0.019305512309074402, 0.08386176824569702, 0.39093565940856934, 0.9574796557426453]]}
```