PowerShell WPF WinRT GUI付きOCR(文字認識)機能の実装サンプル

PowerShell

Windows ランタイム (WinRT) API  にOCRの機能が存在することを知ったため、なんとか使えないかを調べていたら、すでに先駆者がPowershell用のモジュールを開発されていた。そこでWindows ランタイム (WinRT) API ,WPF(Xaml),非同期処理の勉強のため、プレーンなPowerShellで実行できることを目的とした OCR(文字認識)のサンプルを作成した。

サンプルコード

中核になる機能は、Psocrをそのまま使わせてもらった。Convert-PsoImageToTextを実行すると、結果が取得できるまで少し時間がかかり画面が固まるため、DispatcherTimerを使って、DispatcherTimerのTickイベント起動でコマンド実行させる非同期処理とした。

実行画面イメージ(一部抜粋)

google画像検索をペイントにキャプチャした画像を作成し、実行した結果

はっきりとした字体については、しっかり文字認識できている。

ここでは、『マザー・テレサの言葉』

実行画面(ポジティブな言葉の画像集)

実行結果(名言 英語)

今回の結果だと、意外と日本語の方がよく解析できていた。

参考サイト

TobiasPSP/PsOcr: Home of the PowerShell module “PsOcr” which uses the native Windows 10 OCR engine to convert image files to text (github.com)

PowerShell Gallery | PsOcr 1.1.0

Windows UWP 名前空間 – Windows UWP applications | Microsoft Docs

参考になりました。

コメント

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