非同期光学式文字認識 (OCR) タスクを送信し、非同期 OCR 結果をクエリします。この操作を呼び出して、イメージ内のテキストを検出して取得するための OCR タスクを送信できます。
非同期操作の説明
操作: /green/image/asyncscan
この操作を呼び出して、非同期イメージ モデレーション タスクを送信できます。 HTTP リクエストを構成する方法の詳細については、リクエスト構造をご参照ください。既存の HTTP リクエストを選択することもできます。詳細については、SDK の概要をご参照ください。
課金方法:
この操作の呼び出しには料金が発生します。課金方法の詳細については、をご参照ください。
レスポンス タイムアウト:
同期モデレーション リクエストで許可される最大レスポンス時間は 6 秒です。モデレーションが 6 秒以内に完了しない場合は、タイムアウト エラーが返されます。リアルタイムでモデレーション結果が必要ない場合は、非同期モデレーション リクエストを送信できます。ほとんどの場合、同期モデレーション操作の方が呼び出しやすいため、同期モデレーション リクエストを送信することをお勧めします。同期モデレーション操作の呼び出しには、タイムアウト期間を 6 秒に設定することをお勧めします。
返される結果:
非同期モデレーション リクエストを送信した場合、モデレーション結果はリアルタイムで返されません。モデレーション結果を取得するには、モデレーション結果を定期的にポーリングするか、コールバック通知を有効にすることができます。モデレーション結果は最大 1 時間保持されます。
コールバック通知を有効にしてモデレーション結果を取得する: 非同期モデレーション タスクを送信するときに、モデレーション リクエストの callback パラメーターでコールバック URL を指定して、モデレーション結果を受信できます。 callback パラメーターの詳細については、リクエスト パラメーターをご参照ください。
定期的にモデレーション結果をポーリングする: 非同期モデレーション タスクを送信するときに、callback パラメーターを設定する必要はありません。タスクを送信した後、/green/video/results 操作を呼び出して、モデレーション結果をクエリできます。操作の詳細については、/green/image/results 操作の説明をご参照ください。
イメージの制限:
イメージの URL は、HTTP または HTTPS URL である必要があります。
イメージは、PNG、JPG、JPEG、BMP、GIF、または WEBP 形式である必要があります。
イメージのサイズは最大 20 MB です。イメージ サイズの制限は、同期および非同期モデレーション操作の両方に適用されます。
イメージのダウンロード時間は 3 秒に制限されています。イメージが 3 秒以内にダウンロードされない場合は、タイムアウト エラーが返されます。
モデレーション効果を確保するために、少なくとも 256 × 256 ピクセルのイメージを送信することをお勧めします。
イメージをモデレートする操作のレスポンス時間は、これらのイメージのダウンロード時間によって異なります。モデレートするイメージを保存するために、安定していて信頼できるストレージ サービスを使用してください。オブジェクト ストレージ サービス (OSS) またはコンテンツ配信ネットワーク (CDN) を使用することをお勧めします。
QPS 制限
この操作は、アカウントごとに 1 秒あたり最大 10 回呼び出すことができます。1 秒あたりの呼び出し数が制限を超えると、スロットリングがトリガーされます。その結果、ビジネスに影響が及ぶ可能性があります。この操作を呼び出すときは、制限に注意することをお勧めします。
リクエスト パラメーター
パラメーター | タイプ | 必須 | 例 | 説明 |
bizType | String | いいえ | default | ビジネスシナリオ。 でビジネスシナリオを作成できます。 Content Moderation コンソール。詳細については、「機械支援モデレーションのポリシーのカスタマイズ」をご参照ください。 |
scenes | StringArray | はい | ["ocr"] | モデレーション シナリオ。値を ocr に設定します。 |
callback | String | いいえ | http://www.aliyundoc.com/xx.json | 非同期モデレーション結果を通知するためのコールバック URL。HTTP および HTTPS URL がサポートされています。このパラメーターを設定しない場合は、モデレーション結果を定期的にポーリングする必要があります。 モデレーション リクエストで callback パラメーターを設定する場合は、指定した HTTP または HTTPS URL が次の要件を満たしていることを確認してください。POST メソッドをサポートしていること、送信データのエンコードに UTF-8 を使用していること、checksum パラメーターと content パラメーターをサポートしていること。指定されたコールバック URL にモデレーション結果を送信するために、コンテンツ モデレーションは次のルールと形式に基づいてコールバック通知で checksum パラメーターと content パラメーターを返します。
説明 サーバーがコールバック通知を正常に受信した場合、サーバーは HTTP 200 ステータス コードをコンテンツ モデレーションに送信します。サーバーがコールバック通知を受信できなかった場合、サーバーは他の HTTP ステータス コードをコンテンツ モデレーションに送信します。サーバーがコールバック通知を受信できなかった場合、コンテンツ モデレーションはサーバーが受信するまでコールバック通知のプッシュを続けます。コンテンツ モデレーションは、コールバック通知を最大 16 回繰り返しプッシュできます。16 回後、コンテンツ モデレーションはコールバック通知のプッシュを停止します。この場合、コールバック URL のステータスを確認することをお勧めします。 |
seed | String | いいえ | aabbcc123 | コールバック通知リクエストの署名を生成するために使用されるランダムな文字列。 文字列の長さは最大 64 文字で、文字、数字、アンダースコア (_) を含めることができます。この文字列はカスタマイズできます。コンテンツ モデレーションがサーバーにコールバック通知をプッシュするときに、コールバック通知リクエストを検証するために使用されます。 説明 このパラメーターは、callback パラメーターを設定する場合に必須です。 |
cryptType | String | いいえ | SHA256 | コールバック通知を有効にしたときに、コールバック通知コンテンツの暗号化に使用される暗号化アルゴリズム。コンテンツ モデレーションは、指定した暗号化アルゴリズムを使用して返された文字列を暗号化し、暗号化された文字列をコールバック URL に送信します。返される文字列は UID + Seed + Content 形式です。有効な値:
|
tasks | JSONArray | はい | モデレートするオブジェクトのリスト。JSON 配列には、1 つ以上の要素を含めることができます。各要素は構造体です。JSON 配列には最大 100 個の要素を含めることができます。つまり、一度に最大 100 個のモデレーション オブジェクトを送信できます。一度に 100 個のモデレーション オブジェクトを送信するには、関連する同時実行制限を 100 より大きい数に上げる必要があります。各要素の構造の詳細については、taskをご参照ください。 |
表 1. タスク
パラメーター | タイプ | 必須 | 例 | 説明 |
dataId | String | いいえ | test_data_xxxx | データ ID。リクエスト内で各 ID が一意であることを確認してください。 |
url | String | はい | https://www.aliyundoc.com/test_image_xxxx.png | インターネット経由でアクセスできる HTTP または HTTPS URL。URL の長さは最大 2,048 文字です。 |
interval | Integer | いいえ | 2 | 連続してキャプチャされる 2 つのフレームの間隔。このパラメーターは、GIF または長い画像のモデレーション専用です。
デフォルトでは、GIF 画像または長い画像の最初のフレームのみがモデレートされます。interval パラメーターを使用して、システムが連続してキャプチャする 2 つのフレームの間隔を指定できます。これにより、モデレーションコストを削減できます。 説明 interval パラメーターと maxFrames パラメーターはペアで使用する必要があります。たとえば、GIF 画像または長い画像をモデレートするために、interval パラメーターを 2 に設定し、maxFrames パラメーターを 100 に設定します。この例では、2 フレームごとに 1 フレームがモデレートされ、最大 100 フレームがモデレートされます。料金は、モデレートされたフレームの実際の数に基づいて計算されます。 |
maxFrames | Integer | いいえ | 100 | キャプチャするフレームの最大数。このパラメーターは、GIF または長い画像のモデレーション専用です。デフォルト値:1。 interval パラメーターの値に |
レスポンスパラメーター
パラメーター | タイプ | 例 | 説明 |
code | Integer | 200 | 返された HTTP ステータスコード。 詳細については、「一般的なエラーコード」をご参照ください。 |
msg | String | OK | リクエストに対して返されるメッセージ。 |
dataId | String | test_data_xxxx | モデレーションオブジェクトの ID。 説明 モデレーションリクエストで dataId パラメーターを設定した場合、dataId リクエストパラメーターの値がここに返されます。 |
taskId | String | aaa25f95-4892-4d6b-aca9-7939bc6e9baa-148619876**** | モデレーションタスクの ID。 |
url | String | https://www.aliyundoc.com/test_image_xxxx.png | インターネット経由でアクセスできる HTTP または HTTPS URL。 URL の長さは最大 2,048 文字です。 |
extras | JSONObject | xxx | モデレーションリクエストで extras パラメーターを設定した場合、extras リクエストパラメーターの値がここに返されます。 説明 このパラメーターは変更される可能性があります。このパラメーターの最新の値を使用してください。 |
例
リクエストの例
http(s)://[Endpoint]/green/image/asyncscan
&<共通リクエストパラメーター>
{
"scenes": [
"ocr"
],
"tasks": [
{
"dataId": "test_data_xxxx",
"url": "https://www.aliyundoc.com/test_image_xxxx.png"
}
]
}正常なレスポンスの例
{
"code": 200,
"msg": "OK",
"requestId": "92AD868A-F5D2-4AEA-96D4-E1273B8E074C",
"data": [
{
"code": 200,
"msg": "OK",
"dataId": "test_data_xxxx",
"taskId": "aaa25f95-4892-4d6b-aca9-7939bc6e9baa-148619876****",
"url": "https://www.aliyundoc.com/test_image_xxxx.png"
}
]
}/green/image/results 操作の説明
操作: /green/image/results
この操作を呼び出して、非同期 OCR 結果を照会できます。 HTTP リクエストを構成する方法の詳細については、「リクエスト構造」をご参照ください。既存の HTTP リクエストを選択することもできます。詳細については、「SDK の概要」をご参照ください。
課金方法:
この操作は無料です。
レスポンスタイムアウト:
非同期モデレーションリクエストを送信してから少なくとも 30 秒後にモデレーション結果を照会することをお勧めします。コンテンツモデレーションは、モデレーション結果を最大 4 時間保持します。 4 時間後、結果は削除されます。
QPS 制限
この操作は、アカウントごとに 1 秒あたり最大 10 回呼び出すことができます。1 秒あたりの呼び出し数が制限を超えると、スロットリングがトリガーされます。その結果、ビジネスに影響が生じる可能性があります。この操作を呼び出す際は、制限に注意することをお勧めします。
リクエストパラメーター
パラメーター | タイプ | 必須 | 例 | 説明 |
body | JSONArray | はい | ["aaa25f95-4892-4d6b-aca9-7939bc6e9baa-1486198766695"] | クエリを実行する非同期モデレーションタスクの ID のリスト。 配列には最大 100 個の要素を含めることができます。 モデレーションタスクを送信した後、レスポンスからタスクの ID を取得できます。 |
レスポンスパラメーター
パラメーター | タイプ | 例 | 説明 |
code | Integer | 200 | 返された HTTP ステータスコード。 詳細については、「一般的なエラーコード」をご参照ください。 |
msg | String | OK | リクエストに対して返されるメッセージ。 |
dataId | String | test_data_xxxx | モデレーションオブジェクトの ID。 説明 モデレーションリクエストで dataId パラメーターを設定した場合、dataId リクエストパラメーターの値がここに返されます。 |
taskId | String | aaa25f95-4892-4d6b-aca9-7939bc6e9baa-148619876**** | モデレーションタスクの ID。 |
url | String | https://www.aliyundoc.com/test_image_xxxx.png | インターネット経由でアクセスできる HTTP または HTTPS URL。 URL の長さは最大 2,048 文字です。 |
results | Array | 返された結果。HTTP ステータスコード 200 が返された場合、返された結果の配列には 1 つ以上の要素が含まれます。各要素は構造体です。各要素の構造の詳細については、「result」をご参照ください。 |
表 2. result
パラメーター | タイプ | 例 | 説明 |
scene | String | ocr | モデレーションシナリオ。値を ocr に設定します。 |
label | String | ocr | モデレーション結果のカテゴリ。有効な値:
|
suggestion | String | review | 推奨される後続の操作。有効な値:
|
rate | Float | 99.91 | モデレーションされた画像が検出されたカテゴリに該当する確率。OCR シナリオでは、このパラメーターを無視できます。 |
ocrLocations | Array | モデレーションされた静止画像内の単一のテキストエントリに関する情報。テキスト、テキスト領域サイズ、テキスト位置が含まれます。構造の詳細については、「ocrLocation」をご参照ください。 | |
ocrData | Array | このトピックでは、非同期画像モデレーションタスクを送信する操作を呼び出す方法について説明します。 | モデレーションされた静止画像内のすべてのテキストの組み合わせ。一般的に、テキストの組み合わせは配列の最初の要素として格納されます。 |
frames | Array | xxx | モデレーションされたアニメーション画像からキャプチャされたフレームと、各フレームで検出されたテキスト。 |
| パラメーター | タイプ | 例 | 説明 |
| text | String | hello | モデレーションされた画像で検出された単一のテキストエントリ。 |
| x | Float | 41 | テキスト領域の左上隅と Y 軸の間の距離。画像の左上隅が座標原点です。単位:ピクセル。 |
| y | Float | 84 | テキスト領域の左上隅と X 軸の間の距離。画像の左上隅が座標原点です。単位:ピクセル。 |
| w | Float | 83 | テキスト領域の幅。単位:ピクセル。 |
| h | Float | 26 | テキスト領域の高さ。単位:ピクセル。 |
表 3. ocrDetailInfo
表 4. wordsInfo
例
リクエスト例
http(s)://[Endpoint]green/image/results
&<共通リクエストパラメーター>
[
"aaa25f95-4892-4d6b-aca9-7939bc6e9baa-148619876****"
]正常応答例
{
"code": 200,
"data": [
{
"code": 200,
"dataId": "test_data_xxxx",
"extras": {
},
"msg": "OK",
"results": [
{
"label": "ocr",
"ocrData": [
"This topic describes how to call an operation to submit asynchronous image moderation tasks." // 画像非同期モデレーションタスクを送信する操作を呼び出す方法について説明します。
],
"ocrLocations": [
{
"h": 19,
"text": "This topic describes how to call an operation to submit asynchronous image moderation tasks.", // 画像非同期モデレーションタスクを送信する操作を呼び出す方法について説明します。
"w": 362,
"x": 31,
"y": 11
}
],
"rate": 99.91,
"scene": "ocr",
"suggestion": "review"
}
],
"taskId": "aaa25f95-4892-4d6b-aca9-7939bc6e9baa-148619876****",
"url": "https://www.aliyundoc.com/test_image_xxxx.png"
}
],
"msg": "OK",
"requestId": "992C7849-AA45-4055-8F82-8D44D64C15E3"
}