両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン 次のリビジョン両方とも次のリビジョン |
opencv_dnn:segmentation [2018/09/28 20:40] – [動かしてみよう] baba | opencv_dnn:segmentation [2019/06/27 09:26] – [Enet] baba |
---|
| {{indexmenu_n>6}} |
====== Semantic Segmentation ====== | ====== Semantic Segmentation ====== |
ここではOpenCVに実装された,領域分割(Semantic Segmentation)に関して使い方を解説します. | ここではOpenCVに実装された,領域分割(Semantic Segmentation)に関して使い方を解説します. |
https://wiki.tum.de/display/lfdv/Image+Semantic+Segmentation | https://wiki.tum.de/display/lfdv/Image+Semantic+Segmentation |
| |
===== 動かしてみよう ===== | OpenCVで確認できるセグメンテーションの手法として,下記の2つが利用できるのを確認しました. |
$ ./example_dnn_segmentation --classes=pascal-classes.txt --config=fcn8s-heavy-pascal.prototxt --model=fcn8s-heavy-pascal.caffemodel --width=500 --height=500 --rgb --mean=100 | * FCN(Fully Conncected Network):https://github.com/shelhamer/fcn.berkeleyvision.org |
| * 一般的な全結合型ネットワークを領域分割に応用したもの. |
| * Enet:https://github.com/TimoSaemann/ENet |
| * 領域分割をリアルタイム処理をするためのアルゴリズム |
| ===== FCN ===== |
| https://github.com/shelhamer/fcn.berkeleyvision.org に一通りの情報がまとまっています.このページではFCN-32s PASCAL を使ってみます.FCN-32s PASCALへのリンクをたどり次のサイトにいくといろいろデータもらえます. |
| * {{ :opencv_dnn:fcn32s-heavy-pascal.caffemodel |}} |
| * {{ :opencv_dnn:fcn32s-heavy-pascal.prototxt |}} |
| * {{ :opencv_dnn:pascal-classes.txt |}} |
| |
| |
| $ ./example_dnn_segmentation --classes=pascal-classes.txt --config=fcn8s-heavy-pascal.prototxt --model=fcn8s-heavy-pascal.caffemodel --width=500 --height=500 --rgb --mean=1 |
| |
| ===== Enet ===== |
| 高速で動作可能な領域分割です.https://www.pyimagesearch.com/2018/09/03/semantic-segmentation-with-opencv-and-deep-learning/ も参考にすると良いでしょう. |
| * {{ :opencv_dnn:categories.txt |}} |
| * {{ :opencv_dnn:enet-model-best.net |}} |
| |
| |
| $ ./example_dnn_segmentation --classes=categories.txt --model=Enet-model-best.net --width=1024 --height=512 --rgb --mean=1 |
| |
| Enetを学習させるには下記のEnet作者による github ページを参照しましょう。 |
| * https://github.com/TimoSaemann/ENet/tree/master/Tutorial |