質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%

Q&A

解決済

1回答

4784閲覧

MNISTで学習後、実際の手書き文字を認識するために必要なこと

Takamu2445

総合スコア13

0グッド

0クリップ

投稿2017/10/22 04:04

MNISTで学習後、実際の手書き文字を認識したいと考えています。
下記のようなステップが必要と思いますが、合ってますでしょうか。
また、それぞれの方法を学ぶのに役立つサイトなどがありましたら
教えていただけないでしょうか。(これらの技術を表す用語もわからず
どうやって調べたらいいのかがわかりません)

1.画像の中にある全ての数字を1文字単位で抜き出す。
・理想をいうと数字以外の文字があっても無視したい。
・理想をいうと枠などの文字でない情報は無視したい。
2.1文字を28x28dotに変換する

以上、よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

MNISTで学習後、実際の手書き文字を認識したいと考えています。

下記のようなステップが必要と思いますが、合ってますでしょうか。

Step.1が広大なのに対して、Step.2はかなり小さい話なので、やるとすればこのステップは逆になります。

それぞれの方法を学ぶのに役立つサイトなどがありましたら教えていただけないでしょうか。

(これらの技術を表す用語もわからずどうやって調べたらいいのかがわかりません)


初めにすること)
今ここで、"手書きひらがなの認識で99.78%の精度をディープラーニングで"の記事に沿って処理をして数字だけ抜き出せば!だとか、直線を認識するならハフ変換だ!だとか言葉を並べてもなかなか実感がわかないと思います。

なので、まずは気になるブログをひたすら読み、気になる解説ページをひたすら読み、それらから出てきた気になる言葉をひたすら調べてください。ここで出てきた気になる言葉は、かなり高い確率で今探し求めている技術用語です。調べるにはGoogle検索が一番おススメです。

70億人中男は35億ですが、日本語でMNISTのことを公開している技術者は恐らく数百人も居ません。その貴重な人たちは、Qiitaにたくさんいらっしゃるので、彼らの記事を優先的に読むと分かりやすいと思います。

一方、英語でMNISTのことを公開している技術者は、恐らく日本語で公開している技術者の数よりも何桁か増えます。なので、もし余力があれば、先ほど出てきた気になる言葉を英語に切り替えてGoogle検索してください。この中で、Stackoverflowが出てきたら優先的に読んだ方が良いと思います。

次にすること)

  • 実践

tensroflowのMNISTサンプルがありますよね。あれはいじり倒してもRaspberry Piのように焼けませんので、とにかくパラメータを触ってみる、動かしてみる、エラーが出たらエラーを調べる、を繰り返してください。

  • 文献

必要であれば本を買った方が良いと思います。MNIST等に興味のある方の話を読む限り、一番見た率が高そうなのはオライリーの「ゼロから作るディープラーニング」です。


ここまでやってこればたぶん何とかなると思います。それでも分からないことがあれば、実際のコードを示しながらここで質問を投稿すると、皆様からあれこれ実のあるアドバイスをもらえると思います。

投稿2017/10/22 05:55

編集2017/10/22 05:58
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Takamu2445

2017/10/23 12:50

回答ありがとうございます。 言葉足らずな部分があったのと、数字以外の文字や枠を無視したいというのは大きすぎたので、 もう少し限定させていただきます。 例えばあるモノクロ画像中に5~10桁の数字のみが書かれていることがわかっていてこの数字を 認識したいとすると、  ①1文字毎に切り出す(1文字を含む長方形領域のx,y,width,heightを明らかにする)   ②各切り出し画像を数字として識別する が必要と思います。googleで「画像 数字 抜き出し」等で調べるとOCR関係の情報 は見つかるのですがこれは①②を同時に行ってしまいます。この①だけを行う ための方法や用語を知りたいのですがご存知でしたら教えていただけないでしょうか。
退会済みユーザー

退会済みユーザー

2017/10/23 22:44 編集

文字の話) 下のサイトだとノイズの取り除き方から文字の抜き取り方までのっていますね。 http://linx.jp/casestudy/halcon-character ここで"Python" "文字抽出"のような感じで調べると、"tesseract-ocr"に突き当たります。 http://independence-sys.net/main/?p=1777 "tesseract-ocr"について調べると、以下のサイトが見つかります。 http://no89.hatenablog.com/entry/2017/03/25/114925 用語ってほどの用語ではなさそうですが、もうこれで実装できそうですね。 汎用的な話) 画像 抽出 pythonと探すと色々な抽出方法が出てきます。 文字だと区切る場所が重要になってくると思うので、チョッと工夫が必要かもしれませんね。
Takamu2445

2017/10/23 22:45

tesseract-ocrは文字認識まで行ってしまいそうなので避けていました。 文字抽出のみ行うのはなかなか情報見つかりませんでしたが http://linx.jp/casestudy/halcon-character こちらのサイトを参考にしてみようと思います。 ありがとうございました。
退会済みユーザー

退会済みユーザー

2017/10/24 09:54

文字の抽出はやったことがありませんが、たぶんモノの抽出以上に癖がありそうなので、いろいろ試してみてくださいね。
Takamu2445

2017/10/25 12:08

C#しか経験ありませんが興味本位でAIを始め、tensorflowを使えるようになれば色々できるようになると期待してチュートリアルまで理解したつもりですが、tensorflow以上に前処理(と言っていいのかわかりませんが今回質問させていただいたようなこと)が重要ではないかと思い始めました。tensorflowに比べて情報が少ないので、まずは色々試してみようと思います。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問