読込中

読込中

目次

  1. 概要
  2. マニュアルなど

    まずはこちらで自分の用途にあったマニュアルを読むことを推奨します.
    マニュアルでわからない言葉などがあれば説明書で調べるというのが一番理解しやすいのではないかと思っています.

  3. 基本機能
  4. 画像認識タブ
  5. 文字認識タブ
  6. 画像処理タブ

概要

ポケなえ製ツールの自動化を製作者からもユーザーからもできるだけ簡単にするために,汎用型自動認識ツール「poic_2305」を開発しました.

本ツールは基本的な画像,文字認識機能を搭載しており,本ホームページから配布するツールの自動化をサポートします.

基本的な部分は共通となりますので,1つ扱い方を学べば,他のツールも同様に扱うことができます.

本説明書とマニュアルが参考になればと思います.

マニュアルなど

基本機能

下図の各ボタンなどをクリックすると対応した説明書にとびます.

写真
  1. 最前面チェックボックス

    チェックを入れるとツールを最前面に配置することができ,他のウィンドウの下に隠れなくなります.

  2. ImageNo.

    本ツールでは画像認識をする際,静止画を新しいものから順に数枚を保持しています.

    フェードアウトするものを画像認識する際に,消えかかったものをうまくキャプチャしたいときに数値を変えながら調整してみてください.
    ex.)ポケットモンスターソードシールドの能力値のキャプチャ

    数値が小さいほど,新しい画像を選択したことになります.

  3. OCRボタン

    文字認識を行います.

  4. 開始/停止ボタン

    押すと自動認識を開始/停止します.

    ツールによっては本認識とは別でテスト認識が用意されているものもあり,その場合このボタンには「テスト開始/停止」と表記されています.

  5. フォルダボタン

    ツールを入れているフォルダを開きます.

    設定ファイルなどを別途入手して,本ツールに反映させたいときなどに活用してください.

  6. Prt Scボタン

    スクリーンショットを撮ります.

    撮った画像は基本的にはexeファイル直下のcustomフォルダ>使用している設定ファイル名のフォルダ or templateフォルダ内にあるimagesフォルダに保存されるので,フォルダボタンを押すなどしてアクセスしてください.

  7. FPS

    本ツールの画像認識などを毎秒何回するかを指定できます.

    数値を大きくするほど処理の回数を増やすことができますが,PCのスペックに合っていないとかえって処理が遅くなってしまうので,各自で調整をお願いします.

  8. 設定ファイル名

    設定を保存する際に,設定ファイルの名前をこのテキストボックスで指定します.

  9. 設定保存ボタン

    本ツールの一連の設定内容をファイルに保存し,後で読み込むことができます.

  10. ビューアモード

    • デフォルト

      デフォルトのビューアです.

      実際に処理を行う領域をトリミングし,特に何も処理していない画像を表示します.

      一番負荷のないビューアなので,実際にRTAなどでツールを使うときなどはこのビューアを推奨します.

    • 認識結果

      画像認識の結果を表示します.

      マッチング画像と一致している部分は赤枠で表示されます.(追加幅が全て0に設定されている場合は青枠)

      赤枠を基準に,画像認識タブの追加幅で指定された領域は青枠で表示されます.

      本ツールでは赤枠の領域が画像認識の結果を示し,青枠の領域を実際に画像処理し文字認識します.

      赤枠も青枠も表示されていないときは,一致率が閾値よりも下のときです.
      認識させたいものを映しても枠が表示されないときは閾値を調整してください.

      画像認識ができているかを確認するときはこのビューアを推奨します.

    • 処理結果

      画像処理の結果を表示します.

      また,実際に文字認識する領域が緑枠で表示されます.

      文字認識や画像合成する座標,2値化の調整をするときなどはこのビューアを見ながら行うことを推奨します.

  11. ダウンロードリンク

    本ツールはスプレッドシートより自動認識の設定を取得することができます.
    自分の使いたい自動認識の設定用スプレッドシートを検索し,そのリンクを入力します.

  12. ダウンロードボタン

    ダウンロードリンクに入力されたスプレッドシートから設定ファイルをダウンロードします.

  13. アップロードリンク

    設定ファイルをアップロードしたスプレッドシートのリンクを入力します.
    アップロードするためには,p.o.ke.nae.tooldev@gmail.comがアップロードするのに使うスプレッドシートを編集できるようにする必要があります.

  14. アップロードボタン

    アップロードリンクに入力されたスプレッドシートに設定ファイルをアップロードします.
    アップロードされたスプレッドシートに,Propertyシート,Learningシート,Settingsシートが追加されたら成功です.

    Propertyシートの各種項目を入力してください.
    ここで各項目を埋めないとダウンロードするときにエラーが発生してしまいます.
    また,更新日はyyyy/M/dの形式で,対象サイズ幅と対象サイズ高は1以上の整数で入力する必要があります.

    名前:設定の名前
    ファイル名:設定をダウンロードしたとき,ローカルに保存されるファイルの名前
    製作者:設定を作成した人の名前(ハンドルネーム)
    更新日:設定を最後に更新した日付
    対象サイズ幅:OBSの設定から見ることのできる出力サイズの幅
    対象サイズ高:OBSの設定から見ることのできる出力サイズの高さ
    写真
    対象作品:設定を使用できるゲーム作品名
    対象ハード:設定を使用できるハード名
    説明:設定をどのようなときに使えるかなどを書く

    疑似学習を使用しているとLearningシートに画像のパスが入力されます.
    疑似学習データも設定と共に共有したい場合は,
    自分で疑似学習したもの(主にimagepathにcustomが含まれているもの)について,その画像をGoogleDriveなどにアップロードし,その共有リンクをimagepathに対応した行の隣のB列に入力してください.

  15. 設定ファイルリスト

    選択することで,自分が保存した設定や他の人があらかじめ作った設定を読み込むことができます.

    読み込まれるのは,基本的にexeファイル直下のcustomフォルダ(主に自分が保存した設定)とtemplateフォルダ内のsettingsフォルダ(主にポケなえが作成したものをダウンロードした設定)に保存したファイルです.

    特にtemplateに保存されるテンプレートと呼ばれる設定ファイルは,ポケなえがあらかじめ自動認識ができるように調整をした設定ファイルです.
    このテンプレートを使用した場合,各種パラメータが触れなくなります.
    個人で調整したい場合は,任意の設定ファイル名を入力して,保存ボタンを押して自分の設定ファイルを作成すると,パラメータを触れるようになります.

    基本的には設定ファイルリストで選択したらすぐに使える状態になりますが,キャプチャボードの種類などPCの環境次第では個人での調整が必要かもしれません.

  16. 再読込ボタン

    設定ファイルを追加したのにリストに含まれていない場合は,このボタンを押して再読み込みしてください.

  17. ビューア

    ビューアモードで指定したビューを表示します.

  18. OCR結果

    文字認識した結果を表示します.

  19. ログ

    文字認識の結果などの履歴を見ることができます.

  20. シェルユニット

    自動認識を行っているときなどに光り,ツールの状態を示します.

    光る色はツールによって異なっており,ものによってはツールのモードを示している場合もあります.

画像認識タブ

下図の各ボタンなどをクリックすると対応した説明書にとびます.

写真
  1. マッチング画像

    本ツールで言うマッチング画像とは,画像認識する際の認識させたい画像のことを指しています.

    認識させたい画像をテキストボックスにドラッグ&ドロップするか,参照ボタンを押して指定することで画像認識できます.

    本ツールで扱う画像認識は現在(2024/03/17),テンプレートマッチングを使用しています.
    テンプレートマッチングではマッチング画像との重ね合わせで判断が行われるらしいので,メインの画像の幅と高さが,マッチング画像の幅と高さよりもそれぞれ大きい,または小さい必要があります.(メイン幅>比較幅かつメイン高さ<比較高さのような例がだめ)

    また,テキストボックス左にマッチング画像のサイズが表示されます.

    テンプレートマッチングに失敗したとメッセージが出た際は,マッチング画像のサイズよりも,CapDeviceやCapFormの幅と高さが大きくor小さくなるように調整してください.

  2. 閾値

    画像認識をする際にマッチング画像との一致率がこの値以上のものになると「一致」と判定します.

    右側に一致率が表示されるので,それを参考にしながら調整を行ってください.

  3. Re Prt Scボタン

    画像認識で一致と判定されているときに使うことができます.

    マッチング画像と同じ座標,同じ大きさのスクリーンショットをキャプチャします.

    ここでキャプチャした画像をマッチング画像として選択することで,各々の環境(キャプチャボードの違いなど)に合わせて画像認識の精度を上げることができます.

    元の画像を使用した時の一致率が著しく低く(状況にもよるがおよそ0.8未満)画像認識の動作が不安定なときなどに使ってください.

  4. CapDevice,CapForm切り替え

    映像の取り込みをCapDeviceから取得するのか,CapFormから取得するのかを選択することができます.

    CapDeviceの方が安定して動作するので,本番環境ではそちらを使用することをおすすめします.

  5. CapDevice

    映像をキャプチャする方法の一つです.

    こちらの方法では,キャプチャボードなどのCapDeviceから直接映像を取り込むことができます.
    本ツールを使う場合はOBSの仮想カメラを用いて映像を取り込むことを推奨しています.

    特に配信や録画をする画面で自動認識をしたい場合は仮想カメラを使う必要があります.

    キャプチャボードなどを指定してしまうと,配信画面に表示できなくなってしまう恐れがあり,最悪配信ツールの再起動が必要になるので注意してください.

    直接映像を取り込むのでCapFormと異なり,PCの表示スケールには依存していません.
    CapDeviceの出力解像度に依存しています.

    CapFormと比べて画像の大きさが大きくなる傾向にあるので,負荷が大きくなりやすいです.

    本ツールには解像度を下げたり,キャプチャ領域を狭める機能があるのでそれらを使って負荷を軽くしましょう.

    またツールによっては下図のような別ウィンドウが出てくるものがあります.
    ex.)個体値特定ツール

    写真

    これは複数の汎用自動認識ツールを使う場合に,一つのCapDeviceから複数の自動認識をするためのものでCPU使用率を抑えることができます.

    またこの場合,ツール本体に子機を使用というチェックボックスがあります.

    写真

    個別でCapDeviceを選択したいときはこちらにチェックを入れて,ツール本体の子機を使用してください.

  6. 読込ボタン

    下図のようなメニューが出てくるので,取り込みたいCapDeviceや解像度などを選択してOKしましょう.

    写真

    CapDeviceのビューアが下図のようにConnecting...を表示し続けている場合は,映像が表示されるまで選択を繰り返しましょう.
    一度別のデバイスを選択してから選択し直すとできる場合もあります.

    写真
  7. 切断ボタン

    CapDeviceを使わなくなったときは切断することができます.

  8. CapDeviceビューア

    CapDeviceで取り込んだ映像が表示されます.

    ビューアに表示される映像のアスペクト比は保たれていませんが,実際には正しいものがキャプチャされています.

  9. 解像度

    CapDeviceで映像を取り込んでキャプチャする際,映像のサイズを小さくすることができます.

    文字認識の精度は下がる傾向にありますが,画像認識を少しでもはやく行いたいときやPCのスペックが足りていないときに使ってください.

  10. CapDevice左幅上高さ

    CapDeviceで取り込んだ映像からどの領域をキャプチャするかを決めるパラメータです.

    どの部分が取り込まれているかを実際に確認したいときは,テスト開始して,ビューアを認識結果モードにしてください.

  11. 子機切り替えチェックボックス

    親機があるツールの場合,CapDeviceの親機と子機を切り替えることができます.

  12. CapForm

    写真

    映像をキャプチャする方法の一つです.

    下図のような透明なウィンドウがCapFormです.

    写真

    CapFormが表示されていない場合は表示ボタンを押してください.
    また,再位置ボタンを押すことでディスプレイの左5,上5の座標に位置させることができます.

    CapFormをキャプチャしたい部分に重ねるとその部分をキャプチャし,画像認識などを行うことができるようになります.

    この方法はディスプレイ上の映像をそのまま使うので,PCの表示スケールや他アプリのウィンドウの大きさに依存してしまいます.
    なので,これを使った設定を再度使う場合は設定を保存した時のウィンドウのサイズにあわせる必要があり,また他のウィンドウと重ならないようにする必要があります.

    上の枠が邪魔になったりCapFormの位置を固定したりしたいときは×ボタンを押すと,非表示にすることができます.

    再度表示さえたいときは,表示ボタンを押しましょう.

    このようにかなり制約のある機能ですが,反面CapFormを動かすだけで任意の映像を取り込めるので,簡単に画像認識を始めることができます.

    主にツール上のPrt Scボタンで取得したスクリーンショットを用いて,設定を調整するときに使用します.

  13. CapForm幅,高さ

    CapFormの幅と高さを指定できます.

  14. 再位置ボタン

    CapFormの位置をディスプレイのLeft:5,Top:5に指定できます.

    CapFormを枠外に置いてしまったなどで見失った時に使ってください.

  15. 表示ボタン

    非表示になったCapFormを再度表示させます.

  16. 追加幅左幅上高さ

    実際に文字認識などに使う領域を指定します.

    ビューア上では,認識結果モードのときに青枠で表示されています.

    下図のオレンジで囲んだところのようにマイナスの値を指定することも可能で,文字認識をする際マッチング画像の領域を含む必要がありません.
    ex.)ポケモンソードシールドの能力値のキャプチャでHPこうげき...の領域がマッチング画像で,数値部分のみを青枠で囲うために追加幅左にマイナスの値を指定している.

    写真

文字認識タブ

下図の各ボタンなどをクリックすると対応した説明書にとびます.

写真

文字認識について

文字認識のことを本ツール上でOCRとも呼んでいます.

ツールによっては文字認識を使わないものもあります.

そういったツールは文字認識リストにOCRが一つも入っていませんので,リストが空でも気にしないでください.

文字認識を使うツールなのに,リストが空の場合はお手数ですが連絡を宜しくお願いいたします.

文字認識する領域については,ビューアを処理結果モードにしてマッチング画像を認識したときに,ビューア上で緑枠で表示されます.

  1. 文字認識リスト

    文字認識(OCR)の一覧表です.

    OCR毎に文字認識する領域や使用する学習データを選択することができるので,設定を変更したいOCRをリストで選択してください.

    複数のOCRを選択することでまとめて設定を変更することもできます.

  2. OCR左幅上高さ

    取り込んでトリミングした映像からどの領域を文字認識するかを決めるパラメータです.

    実際に文字認識する領域を確認したいときは,テスト開始して,ビューアを処理結果モードにしてマッチング画像を認識させてください.

  3. OCR認識制限

    文字認識する際に,あらかじめ読み込みたい文字が決まっている場合,それ以外の文字を読み込まないように設定することができます.
    ex.)数字のみなど

    読み込んでほしい文字をテキストボックスに入力してチェックボックスにチェックを入れると反映することができます.

  4. 割算

    本ツールでは画像合成機能があり,「0」の画像を合成して桁数を増やし文字認識の精度を上げるというテクニックがあります.

    そういったときに実際の数値にあわせるために割り算機能があります.
    ex.)12 0で120と認識したなら10を指定して12とする

    ほとんどの場合10の倍数で割り算すると思いますが,仕様としては指定した値で割り算して余りが0になったときに割り算した結果を認識したことにし,余りが0以外のときは割り算する前の値を認識したことにします.

  5. TesseractOCRを有効にする

    文字認識でTesseractOCRを使用したいときにチェックを入れてください.

  6. 学習データ

    本ツールで導入しているTesseractでは学習データを使って環境にあわせてカスタマイズすることができます.

    学習データリストで学習データを選択すると,OCRリストで選択しているOCRに対して使用する学習データが反映されます.

    全反映ボタンを押すと選択されている学習データを全てのOCRに反映し,再読込ボタンを押すと学習データのリストの再読み込みを行います.

    学習データはexeファイル直下のtessdataフォルダの中にあります.

    自分で用意した学習データを使いたいときはフォルダにその学習データを入れて,exe直下にあるtessdataList.txtに自分が判別できるような名前と学習データのファイル名(拡張子なし)を半角空白区切りで入力してください.

  7. テンプレートマッチングによる文字認識

    画像認識を利用して文字認識を行います.

    写真

    有効にするにチェックを入れると使用できます.

    設定を変更したいOCRをリストで選択した後,上図のコンボボックスでフォルダを選択します.

    選択されたフォルダの画像全てに対して一致しているかどうかテンプレートマッチングして,指定した閾値以上の一致率になったとき,その画像の名前を文字認識の結果として扱います.

    同じ名前で別の画像を読み込めるように語尾に「 (数字)」が含まれますがこちらは文字認識の結果に含まれません.

    画像が増えるほど文字認識ができるようになりますが,その分処理時間が長くなるので基本的にはTesseractOCRで読み取れなかったものを文字認識させる使い方となります.

画像処理タブ

下図の各ボタンなどをクリックすると対応した説明書にとびます.

写真

画像処理について

本ツールでは文字認識の精度向上のために画像処理を行います.

本ツールで使われているTesseractOCRでは大津の2値化という技術が使われており,自動で2値化が行われています.

しかし,ポケモンSVなどで見られる透け背景は場合によっては背景と文字が混ざり,文字認識を失敗してしまうことがあります.

こうしたときに自分で白と黒を分ける閾値を決めてあげると背景を消すことができることもあるので試してみてください.

また,白背景黒文字を前提に学習データが作られているので,黒背景白文字の画面を文字認識するときは白黒反転を行います.

リサイズの機能は画像が極端に小さすぎたり大きすぎたりするときに調整に使うことができます.

また,2つリサイズを設けているので,簡易的なノイズ除去などもできます.

  1. 画像合成リスト

    合成したい画像をリストにドラッグ&ドロップするか追加ボタンを押して選ぶと,メインの画像に合成されます.

    リストで画像を選択して,複製ボタンを押すと同じ画像を別で合成することができます.

    リストで画像を選択して,削除ボタンを押すと合成を解除することができます.

    画像を合成した結果を見たいときは,ビューアを画像処理モードにしてマッチング画像を認識させてください.

  2. 画像合成位置

    リストで選択した合成画像の位置を指定できます.

    複数選択しているとまとめて位置を指定することができます.

  3. 画像合成拡大

    リストで選択した合成画像を拡大,縮小することができるので微調整に使ってください.

  4. 2値化

    白と黒をわける閾値を任意の値に指定することができます.

    背景が透けて文字認識が安定しないときなどに使ってみてください.

    使うときはチェックボックスにチェックを入れて値を入力してください.

    画像処理した結果を見たいときは,ビューアを画像処理モードにしてマッチング画像を認識させてください.

  5. 白黒反転

    チェックボックスにチェックを入れて白黒反転することができます.

    黒背景白文字のゲームを文字認識したいときに,白背景黒文字にするのに使ってください.

    画像処理した結果を見たいときは,ビューアを画像処理モードにしてマッチング画像を認識させてください.

  6. リサイズ

    文字認識する画像を拡大,縮小させることができます.

    文字認識するときに画像の大きさで結果が変わることがあるので,微調整に使ってください.

    使うときはチェックボックスにチェックを入れて値を入力してください.

    2つリサイズを用意しているので,簡易的なノイズ除去に利用することもできなくはありません.

  7. 塗潰し

    画像認識で用いるマッチング画像の領域を任意の色で塗潰します.

    下図のように文字認識でマッチング画像が文字認識を妨げる場合に使用します.

    写真 写真

    使うときはチェックボックスにチェックを入れてください.

    ボタンを押すと色を選択することができます.