レトロでハードな物語

レトロなゲーム機・マイコン・中古デバイスなどをArduinoやAVRで再活用する方法を模索しています。

雑誌のプログラムリストのOCR読み取りについて検証してみた(その5)

2023年04月06日 | 自作プログラム

DumpFormater.exeのマシン語ダンプリスト修正機能について説明します。

マシン語ダンプリストを修正するときは右側の項目の"I/O"~"ASCII"を選択します。それぞれ前回説明のダンプリストタイプに対応しています。
「OCRエンジン選択」の項目はProgramListOCRなら"Tesseract"を、GoogleドライブのOCRなら"Google"を選択します。
次に「OPEN」ボタンでOCRでテキストに変換したファイルを読み込むとテキストボックスに修正されたダンプリストが表示されます。

修正済みのリストは「SAVE」ボタンで保存します。

ProgramListOCRで読み取ったダンプリストはあまり修正するところはありません。I/Oタイプのダンプリストのヘッダーや表示位置のずれやダンプリストで使用されない誤変換の文字を直すだけです。

GoogleドライブのOCRで読み取ったデータは、DumpCutter.exeで入れた改行目印のドットの位置で改行したり削除したスペースの復元、ダンプリストでは使われない誤変換された文字の修正などを行っています。
ただし、GoogleのOCRでは改行目印が認識されなかったり、似たような数値の並びを区切りとされて勝手に改行されていることもあるので、修正できない箇所も出てきます。この部分はもとの雑誌リストと比べながら手作業で修正するしかありません。

ログインタイプのダンプリストはアスキータイプのダンプリストに256バイトごとにチェックサムの数字が付加されたものですが、ProgramListOCRやGoogleのOCRで読み取るとフォーマットの乱れが多くなるので、トリミングの際に排除して下さい。

256バイトのチェックサムは無くてもDumpListEditorのチェックには支障ありません。「雑誌アスキー(ADRS加算)」でチェックします。256バイトのチェックサムを使いたいときはDumpListEditorで手入力してください。256バイトごとに1バイトの数字を入れるだけなのでそれほどの手間にはならないでしょう。この場合のチェックは「LOGiN(A加算+256サム)」で行います。

DumpFormater.exeの説明は以上です。

今回テストした他にも無料で利用できるOCRはいくつかあります。

今はEasyOCRが気になっています。ホームページに自分で用意した画像(サイズ制限あり)を読み取るデモがあるので、BASICやマシン語のダンプリストの一部を読み取らせてみたところ完璧に読み取ってくれました。
これが大量のリストを読み込んでも正しく認識してくれるのか気になります。

後で機会があったら試してみたいですね。


最新の画像もっと見る

コメントを投稿