Google Cloud Vision Api でOCRをためす

前回のつづきでGoogle Cloud Vision APIをためしています。
今回はOCRをためしてみました。

リクエストの作成

以下のjsonのリクエストを作成します。
基本的には前回のLABEL_DETECTIONと同じですが”type”をTEXT_DETECTIONとします。
base64のエンコードも前回の記事のとおり。

{
  "requests":[
    {
      "image":{
        "content":"base64-encoded file data"
      },
      "features":[
        {
          "type":"LABEL_DETECTION",
          "maxResults":5
        }
      ]
    }
  ]
}

使用画像

今回は英語と日本語の画像でためしてみます。
galactic

imgres

リクエストの送信

以下のコマンドでリクエストを送ります。

$ curl -v -k -s -H "Content-Type: application/json" https://vision.googleapis.com/v1/images:annotate?key=browser_key --data-binary @test_text_detection.json

結果は以下のjson

英語の画像の結果

{
  "responses": [
    {
      "textAnnotations": [
        {
          "locale": "en",
          "description": "Way out man\nNORWOOD INTERGALACTIC\n",
          "boundingPoly": {
            "vertices": [
              {
                "x": 107,
                "y": 26
              },
              {
                "x": 424,
                "y": 26
              },
              {
                "x": 424,
                "y": 259
              },
              {
                "x": 107,
                "y": 259
              }
            ]
          }
        }
      ]
    }
  ]
}

日本語の画像の結果

{
  "responses": [
    {
      "textAnnotations": [
        {
          "locale": "ja",
          "description": "さっぽろ\n札幌 (01\nSapporo\nそうえん\nなえぽ\nSoen\nNaebo\n",
          "boundingPoly": {
            "vertices": [
              {
                "x": 31,
                "y": 59
              },
              {
                "x": 229,
                "y": 59
              },
              {
                "x": 229,
                "y": 153
              },
              {
                "x": 31,
                "y": 153
              }
            ]
          }
        }
      ]
    }
  ]
}

結果

日本語・英語ともにうまくいっています。

英語の画像は上部の
“Way out man”

中央の
“NORWOOD INTERGALACTIC”
ともにうまくいっています。

日本語の画像は

“さっぽろ”
“札幌”
“Sapporo”
“そうえん”
“なえぼ”
“Soen”
“Naebo”

7単語の文字列が全て検出できています。

実行にかかる時間じゃどちらも約2秒。
かなり速いと思います。

これはすごい!

ただし結果のjsonは文字が存在する4頂点が表示されていますが一個一個の枠は得られていません。

これなにか方法あるのかな。

Author: miyamoto

Tech & Japanese Rap music

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です