本日はクリスマス。もうすぐ今年も終わりです。でも仕事はちっとも終わらない。。。

さてさて。ディープラーニングを用いた一般画像認識技術には、分類、検知、セグメンテーションの三つがあるといういうことになっています。このうちセグメンテーションの手法のひとつのRefineNetの実装をChainer上で行なったものを公開しました。
https://github.com/ponta256/chainer_refinenet

セグメンテーションはピクセルクラスタリングとも言われていて、画面を構成するピクセルごとにその所属するクラスを推定するものです。結果として画像上の各クラス(オブジェクト)の領域を区分けして表示することができます。

ディープラーニングを使ったセグメンテーションはFCNとよばれる手法にはじまり、SegNet、UNetなどいくつかの手法が提案されています。RefineNetはそうした手法のひとつで比較的最近発表されたものです。
https://arxiv.org/abs/1611.06612

SigfossではRefineNetをセグメンテーションを用いるプロジェクトの主な手法として使っています。その実装をざざっとまとめて公開してみました。あまりキレイになってませんし、もともと論文読みながらこんな感じだろかと実装したのでどこか間違っているかもしれません。

時間見つけてキレイにしてみます&間違いなど指摘していただけるとうれしいです。