ユーザーローカルの無料手書きOCRをPHPで試してみた。

PHP

先日、手書きOCRのAPIを無料で提供開始というニュースが入ってきました。

手書き文字を認識できるAIを無償公開 自社サービスでAI OCRが利用可能に | Ledge.ai
株式会社ユーザーローカルは6月28日から、手書き文字を含む画像からディープラーニング(深層学習)で文字を読み取る「ユーザーローカル 手書き文字認識AI」を無償で提供開始した。日本語の手書き文字をAIで認識し、テキストデータに変換できる。
User Local 手書き文字認識AIの動作デモから、canvasに入力した文字を認識してくれる体験はできるものの自身でアップロードして試してみました。
>動作デモ自体はこちらです。
手書き文字認識AI 無料でOCR by 株式会社ユーザーローカル
手書き文字認識AIは、撮影した文書から入力内容を読み取り企業のデジタル化の手助けを行う、ユーザーローカルの無料で使えるAIです。

PHPで書いてみた

まんまサンプルコード通りですが、自身でアップロードしたファイルをチェックにかけてみたかったので作ってみました。

フォルダ構成は、
|-img/
|-index.php
です。下記の内容はindex.phpに貼り付ければ完了です。

<?php
$output = [];
$outputFlag = 0;
if(isset($_FILES)){
 if(isset($_FILES['file'])){
  $outputFlag = 1;
  $output = userLocalOcr();
  }
}
function userLocalOcr(){
 $fileExtension ="";
 if(preg_match("/^image/", $_FILES['file']['type']) == 1){
  $imgArr = explode("/",$_FILES['file']['type']);
  if($imgArr[1] == "jpeg"){
   $fileExtension = "jpeg";
  }elseif($imgArr[1] == "png"){
   $fileExtension = "png";
  }elseif($imgArr[1] == "gif"){
   $fileExtension = "gif";
 }
}else{
 die;
}
$fileNameKey = uniqid(rand().rand());
$fileName = "./img/".$fileNameKey.".".$fileExtension;
move_uploaded_file($_FILES['file']['tmp_name'],$fileName);

$url = '手書きOCRのAPI URL';
$curl = curl_init();
$postData = [
 'imgData' => new CURLFile("$fileName")
];
$options = [
 CURLOPT_URL => $url,
 CURLOPT_POST => true,
 CURLOPT_POSTFIELDS => $postData,
 CURLOPT_RETURNTRANSFER => true
];
curl_setopt_array($curl, $options);
$response = curl_exec($curl);
curl_close($curl);
$data = json_decode($response, true);
 return $data;
}
?>
<!DOCTYPE html>
<html lang="ja">
 <head>
  <meta charset="UTF-8">
  <title>OCR PHPテスト</title>
 </head>
 <body>
  <form method="POST" id="submitForm" action="./" enctype="multipart/form-data">
   <input type="submit" value="SUBMIT"/>
   <input type="file" name="file">
 </form>
 <div class="output">
 <?php
  if($outputFlag):
   var_dump($output);
  endif;
 ?>
  </div>
 </body>
</html>

ちなみに、APIのURLやサンプルコードが載っている資料を手に入れるには、名前やメールアドレスの入力が必要だったため、念の為、こちらには記載いたしません。

手書き文字認識AI 無料でOCR by 株式会社ユーザーローカル
手書き文字認識AIは、撮影した文書から入力内容を読み取り企業のデジタル化の手助けを行う、ユーザーローカルの無料で使えるAIです。

上のリンクで必要事項を入力して送信すると、pdf形式のocr資料をダウンロードできます。

試してみた

手書きで書いた「あいうえお」をアップロードして試してみました。

きちんと、正しい文字列で返ってきました。

簡単な日本語や数字なら精度高いイメージです。
ただ、無償枠のリミット回数が不明で、繰り返しの使用や大規模データで実行する場合は、有償枠が必要そうですね。

単価0.5円程度の名刺データ入力バイトで、このOCR使って無限にまわして稼げそ・・・。

おわりに

せっかくならとフロントから非同期で直接APIリクエストを送りたくfetch APIを使ってリクエストを実行しようと試みましたが、CORSでハマって、うまくいきませんでした・・

仕方なく、サンプルコード通りに書きました。

”今のところ”無料枠でも間隔時間をある程度、設ければ十分に使えそうな気がしました。

コメント

タイトルとURLをコピーしました