ディープラーニングの単眼画像Depth推定を試す

公開日: : Python, ディープラーニング, 画像処理

スポンサーリンク

前々から気になっていた写真から立体を推定するCNNのディープラーニングの技術をオープンソースになっているコードで試してみました。OSはWindows10です。

環境構築

ソースコード

 ソースコートは「FCRN-DepthPrediction」のtensorflow版を使わせていただきました。任意のフォルダでcloneしてきます。

git clone https://github.com/iro-cp/FCRN-DepthPrediction.git

Anaconda環境構築

 AnacondaでPythonのバージョンは3.5とした仮想環境を新規に作成して、次のコマンドでtensorflowの環境を準備しました。バージョンの指定は見当たらなかったので指定はしませんでしたがちゃんと動きました。とりあえずトレーニングはしないのでCPU版をインストール。私は今回Anacondaを使いましたが、ここは各々好きにしてください。

pip install numpy
pip install matplotlib
pip install tensorflow

Anacondaの仮想環境は以前にも利用したことがあるので、もしわからなければこちらを参考にしてみてください。

モデルファイルダウンロード

 学習済みモデルとなるNYU_FCRN.ckptはGithubのreadmeのModelsの「TensorFlow model (.ckpt)」からダウンロードできます。NYU_FCRN-checkpoint.zipを解凍すると以下のファイルが出てきますのでそれらを先ほどクローンしてきた「FCRN-DepthPrediction/tensorflow」に移動します。

NYU_FCRN.ckpt.data-00000-of-00001
NYU_FCRN.ckpt.index
NYU_FCRN.ckpt.meta

実行

 tensorflowのフォルダへ移動してpredict.pyに学習済みモデルパスと画像ファイルパスを指定して実行します。モデルのパスはpredict.pyと同層であれば以下のようになります。

cd FCRN-DepthPrediction/tensorflow
python predict.py NYU_FCRN.ckpt [画像ファイルパス]

 tensorflowはほとんど使ったことがなかったので知らなかったのですが、NYU_FCRN.ckptというファイルはありませんが、predict.pyに指定するパスは「NYU_FCRN.ckpt」でOKです。

結果

元画像

デプス推定画像

なんとなくちゃんとデプスが推定できました。

まとめ

 オープンソースコードを利用することでただの写真(RGB画像)からデプスを推定することができました。次はこの結果がどのくらいの出来なのかある程度分かるようにしたいと思います。

次→「2D写真から立体視画像を作成してみた

スポンサーリンク
Amazon

  • このエントリーをはてなブックマークに追加

関連記事

[Python3]Webスクレイピングで繰り返し構造のデータを取得する

Python3のBeautifulSoup4でWebスクレイピングをし

2D写真から立体視画像を作成してみた

 カメラなどで撮影した写真からデプス(距離)画像を推定する技術でステレ

ディープラーニングの単眼画像Depth推定を試す

前々から気になっていた写真から立体を推定するCNNのディープラーニン

PyCharmとAnacondaの仮想環境を連携する手順

 PyCharmはデフォルトで仮想環境はVirtualenvを使うよう

【Python】正規表現で括弧で特定の文字列を抽出する方法

Pythonの正規表現で括弧を使って文字列を抽出するサンプルを作成しま

→もっと見る

  • Author : ががんぼ
    プログラミングやWeb関係で気付いたことについてメモしていく予定。だいたいが備忘録ですが、自分でサンプルを作って動かしてみたりしています。