ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

詳解3次元点群処理

貴重な点群関係の書籍ということで、発売と同時に買ってちょっとずつ読みながら最後まで読みました。

www.kspub.co.jp

どんな本

点群についてPythonとOpen3Dというライブラリを使って、基本的な操作やアルゴリズムを学びます。 最後の方は最近のトピックとしてdeep learningの応用が載っています。

今まで点群が載っている本というと、ROSの1章でPCL使っているだけだったり、英語で論文を集めただけだけのような本しかなかったのですが、ようやく入門から応用までしっかりと押えた本がでてきました。

ボリュームの関係上、いろいろあるアルゴリズムのうち代表的なアルゴリズムだけ理論の説明があり、残りは紹介のみになっています。その場合でもリファレンスがしっかりしているので困ることはないと思います。RANSACみたいにすごく重要なんだけど、他の本見れば良いんじゃない?みたいな所はあっさりしています。

例えば、こんな感じで公開されているデータセットについて、平面検出のやり方がアルゴリズムの説明と、実際のライブラリの使い方がペアで説明されています。

実際にやった結果はここ。 natsutan.hatenablog.com

点群のライブラリインストールから始まり、基本的な数式、実際に動かしてみて結果を見る、理解確認の練習問題、これだけをこのボリュームに詰め込んだのは素晴らしい。

点群やる人に手放しでおすすめです。

本書で触れているトピック

1章、2章がチュートリアル的な点群の考え方と、基本的な数式、ライブラリの使い方の説明になっています。

3章から、点群独特の考え方やアルゴリズムを学びます。3章で特徴点、特徴量から入り、4章でレジストレーション、5章が物体認識、マッチング、プリミティブ検出、セグメンテーション(クラスタリング)と順番に読むとわかりやすく説明されています。

6章からdeep learningに入り、点群固有の問題点と解決策について説明あります。

7章はそこからもれたトピックです。RGBDデータや筆者の研究紹介などが軽く紹介されています。

感想

仕事で点群を使っていることもありちょうど良いタイミングで読めました。 3章、4章、5章で説明している点群アルゴリズムは大事な物に絞って考え方とライブラリの使い方が説明されていて、欲しかった本はこれなんだよなと一人感動していました。 こうやって順番に読んで点群の理解が深まる本は他にないです。(あったら教えて欲しい)

今までのPCLのチュートリアルを見る、検索して断片的に理解する、論文もよく分からない、結局PCLのソースがドキュメントみたいな状態をようやく脱出できました。ライブラリとしてPCLではなくOpen3Dを使っているところも、書籍という形態を考えると良かったと思います。PCLとC++に比べると余計な記述がなく、すっきりと理解しやすくなっていました。点群の処理の様子を オールカラーで印刷してあるのも嬉しい。こんな値段で出して大丈夫なのかなと思いました。

ここに同じ事をする2つソースがあるので興味ある人は比べて欲しい。

natsutan.hatenablog.com

Deep learningについては、コンピュータビジョン最前線 Winter 2022も一緒に読むと最新情報が補完できると思う。

www.kyoritsu-pub.co.jp