結城あすかの毎日電波思考 (あすか日記)

アクセスカウンタ

zoom RSS 画像認証と遊ぼう! 第1回「灰色の基礎編」

<<   作成日時 : 2013/04/17 22:11   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

 まずは画像認証の料理に用いるソフトにょ。「Visual C++ 2008 Express Edition」を用いて作った画像処理の技術検証用のツールだにょ。画像処理そのものは機能グループごとにクラスモジュール化されていて、それをフォームアプリのGUIから呼び出して処理結果の表示等を行ってるにょ。

 開発及び動作確認はWindows XPの32bit環境で行ってるにょ。この検証用ツールの実行ファイルはあすかの個人サイトからダウンロードできるので、興味ある人は記事の確認などを行なってくれにょ。
(個人サイトのサイドメニューの「あすか研究所」に本連載の記事一覧と画像ツールのダウンロードがあるにょ)

 ただし、ソースファイルは無償では配布しないので、欲しい人があれば実行ファイルのアーカイブに同梱のテキストを参照に申し込んでくれにょ。

画像


 ということで、普通に起動させた画面にょ。動作には.NET Framework 3.5SP1の環境が必要だにょ。ま、普通にWindows Updateとかしてたら入ってると思うけど、入ってない場合は各自でインストールしてくれにょ。
 このツール自体はインストール不要なので、アーカイブを解凍してエクスプローラからクリックするなりして起動してみてくれにょ。実行ファイル名が「Test.exe」とかいうのは、わざわざ名前を考える程のものではないからだけど、他と紛らわしいとかいう場合は好きにリネームでもしてくれにょ。

 さて、今回の画像認証ネタの画像を読み込むにょ。

画像


 一番上のテキストボックスにフルパスのファイル名を入力するか、その右の「参照」ボタンを押してファイルダイアログを開いてファイルを指定するかしてから、「表示」というボタンを押せば、目的の画像が読み込まれて表示されるにょ。
 あるいは、エクスプローラ等から直接ファイルをドラッグ&ドロップで検証用ツールのウインドウ内に放り込んでも同じにょ。

 画像を読み込んだらその右の方にいろいろと情報が表示されるけど、「Width」が横幅のドット数、「Height」が高さのドット数という他は、.NET Framework を用いた画像プログラミングに有用な情報というだけで、プログラミングとかしないなら気にしなくていいにょ。

 表示された画像上でマウスを左クリックすると、右側の「PixcelColor」の枠内にそのドットのピクセル値が表示されるにょ。
 今回読み込んだのは明暗の2階調のグレー画像だけど、図で表示されてるのは文字の部分の濃いグレーの値にょ。デフォルトでは「RGB」で表示されてて、グレーだから各成分の値は同じになってるにょ。

画像


 画像処理を行う場合はRGB値よりも輝度値を知りたい場合が多いので、そういう場合はラジオボタンの「YUV」を選択すると、3つの値の左端に256階調の輝度値(Y)が表示されるにょ。

画像


 同様に文字以外の薄いグレーの部分をクリックした時の値にょ。

画像


 ここでグレーの画像を、OCRで読みやすい白黒のくっきりした画像に変換するために二値化の処理を行うにょ。ここでは画像表示部分の下にある処理選択のコンボボックス(ドロップダウンリスト)から「二値化(固定閾値)」を選択するにょ。

画像


 そして入力パラメータとして閾値を設定するにょ。ここではデフォルト値のままだけど、上で見た明暗2箇所の輝度値の間の値なら何でもいいにょ。

画像


 それから「実行」ボタンを押せば、くっきりとした二値化画像に変換されるにょ。

画像


 変換結果の画像は画像形式を選択して「保存」ボタンを押せば、保存用のファイルダイアログを開いて保存することが出来るにょ。

画像


 上では「二値化(固定閾値)」の処理を用いて自分で閾値を指定して二値化したけど、例のような明暗の明確な画像なら「二値化(判別分析法)」を用いれば、パラメータの設定をしなくても自動的に閾値を判断して処理することが出来るにょ。

画像


 変換した結果をOCRで読ませてみるにょ。使っているのはCanonのプリンタ複合機に付属していた「読取革命Lite」とかいうPanasonic製のソフトにょ。「4」だけ半角で後が全角だとか、文字間にスペースが入ってるという細かいとこを除けば、こんなところかにょ。

画像


 もっとも、今回のような明暗の明確な画像だとこのOCRソフトでもちゃんと読めたりするので、わざわざ二値化処理を行ったりする必要がなかったりするにょ。

画像


 今回は基礎編ということで極簡単なものを扱ってみたけど、次回からは実践編で、そのままではOCRソフトが読み取れないような画像を扱うことにするにょ。

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
TweetsWind
画像認証と遊ぼう! 第1回「灰色の基礎編」 結城あすかの毎日電波思考 (あすか日記)/BIGLOBEウェブリブログ
文字サイズ:       閉じる