6章の画像クラスタリングを含めて7-9章は画像認識を扱っている章になっている。10章はOpenCVを触り程度に紹介。
7章は画像から記述子を取り出してきて、テキストマイニングするような感じで画像検索を行う。というよりtf-idf法を使っているだけなのでわかりやすい。最終的にCherryPyを使ってWebアプリを作っているが、色々応用が効きそうなヒントが得られた。
8章は画像認識で、これまた面白い。最初にkNNを使ってSIFT特徴量から手話画像の認識をさせる。でこれの精度を改良するためにいくつかのアルゴリズムを試す。
最初はベイズ分類+SIFTをPCAで次元削減したものを利用するが精度が改善しない。しかしこの手法の良いところは元のデータを保持しなくていいところ。
次にSVMを使って精度が改善するという流れ。次元を減らしても精度がそれほど落ちないとか、よくある話に持っていく。
今時なら、このあとにRandomForestが出てきて云々がはじまるのが定番なんだけど、この本ではそこまでは説明していないので、興味があればRFまでやってみるのがいいかもしれない。
最後に多クラスSVMとして数独の写真を認識する例がある。3章でやった射影変換を利用して斜めに移った写真でもきちんと正方形になおしてから分類するという内容で興味深かった。
9章は画像の領域分割で「背景を分離する」みたいな話。最大フローとかそういう話題。最初ベイズ分類器が出てくるのがよく分からなかくて悩んだんだけど、図9.2を見ながらよく考えたら理解した。
10章はOpenCVの基本なので。興味を持ったらドキュメントを読むか他の本をあたれというところか。
まとめ
あまり手を動かしてないので、次は章末の演習問題も解きながらやってみるかもしれない。入門機械学習の次に読む本としても面白いかも(Pythonを書けることが前提になるかもしれないが)。
OpenCVとScipyのドキュメントはひと通り目を通しておく。
他に気になる本
Gary Bradski
Oreilly & Associates Inc / 6309円 ( 2013-06 )
Daniel Lelis Baggio
Packt Publishing / 4752円 ( 2012-11-30 )