見出し画像

M-LSD : 軽量かつリアルタイムな線分検出

「M-LSD」を試してみました。

1. M-LSD

M-LSD」(Mobile LSD)は、リソースに制約のある環境でのリアルタイムで軽量な線分検出の深層学習モデルです。非常に効率的な「LSD」アーキテクチャと、「SoL補強」や「幾何学的学習スキーム」などの新しい学習スキームを組み合わせています。このモデルは、GPUやCPU、さらにはモバイルデバイス上でリアルタイムに実行することができます。

2. Webデモ

このサイトでWebデモを試すことができます。

画像1

利用手順は、次のとおりです。

(1) 画像を選択。
(2) SUBMITボタンを押す。

3. ローカルデモ

ローカルマシンにインストールして試す手順は、次のとおりです。

(1) mlsdリポジトリのクローン。

$ git clone https://github.com/navervision/mlsd.git

(2) macOSではGPUが使えないので、requirements.txtの「tensorflow-gpu」を「tensorflow」に変更。
(3) mlsdのインストール。

$ pip install -r requirements.txt

(4) 「demo_MLSD.py」の実行。

$ cd mlsd
$ python demo_MLSD.py
 * Debug mode: off
  * Running on all addresses.
    WARNING: This is a development server. Do not use it in a production deployment.
  * Running on http://192.168.11.4:5000/ (Press CTRL+C to quit)

(5) URLが表示されるので、ブラウザで開く。
ファイルを選択して、Submitすると、結果が表示されます。

画像2

4. M-LSD-warpPerspective-Example

「Kazuhito00」さんのM-LSDの検出結果の射影変換を表示するサンプルプログラムも試してみました。

利用手順は、次のとおりです。

$ git clone https://github.com/Kazuhito00/M-LSD-warpPerspective-Example.git
$ pip install opencv-python==4.5.2.54
$ pip install tensorflow==2.5.0
$ cd M-LSD-warpPerspective-Example
$ python example.py

画像3


この記事が気に入ったらサポートをしてみませんか?