サポートされる画像

ファイル形式

Vision API は、以下の画像形式をサポートします。

  • JPEG
  • PNG8
  • PNG24
  • GIF
  • アニメーション GIF(最初のフレームのみ)
  • BMP
  • WEBP
  • RAW
  • ICO
  • PDF
  • TIFF

これらの画像形式の中には、「ロッシー(lossy)」な性質のものがあります(たとえば JPEG)。このようなロッシー形式のファイルサイズを縮小すると、画質が低下することがあり、その結果として Vision API の精度が低下します。

画像のサイズ設定

Vision API で正確な画像検出ができるようにするには、画像のサイズが基本的に 640 x 480 ピクセル(約 30 万ピクセル)以上であることが必要です。Vision API 機能リクエストの種類別に詳しい説明を次に示します。

Vision API 機能 推奨されるサイズ * 備考
FACE_DETECTION 1600 x 1200 両目の間の距離が最も重要です。
LANDMARK_DETECTION 640 x 480
LOGO_DETECTION 640 x 480
LABEL_DETECTION 640 x 480
TEXT_DETECTION と DOCUMENT_TEXT_DETECTION 1024 x 768 OCR で文字を検出するには、さらに高い解像度が必要です。
SAFE_SEARCH_DETECTION 640 x 480

これらの推奨サイズは、検出対象の特徴によって変化します。たとえば、FACE_DETECTION リクエストには一般的に大きな画像が必要です。検出対象の特徴(顔)は画像そのものよりも小さいからです。一方、LABEL_DETECTION リクエストでは、基本的に画像全体が評価されます。

実務では、標準サイズである 640 x 480 ピクセルでもほとんどの場合は問題ありません。サイズをこれより大きくしても、精度が大きく向上するとは限りませんが、スループットは大幅に低下します。可能であれば、画像を前処理して前述の最小標準サイズまで縮小してください。

ファイルサイズ

Vision API に送信される画像ファイルは 20 MB を超えないようにしてください。20 MB を超えるファイルはエラーになります。このサイズを超えていた場合に、Vision API がファイルのサイズ変更を行うことはありません。ファイルサイズを小さくするとスループットを大幅に改善できますが、プロセスの中で画質を低下させないように注意してください。Vision API では、10 MB の JSON リクエスト サイズ上限が課せられます。それよりも大きいファイルは、JSON 自体で Base64 でエンコードされたコンテンツとして渡されるのではなく、Cloud Storage やウェブ上でホストされる必要があります。