KDL BLOG
Depth Anything V2でzero-shot単眼深度推定
こんにちは!データインテリジェンスチームの吉田です。
今回は、2024年6月に公開された単眼深度推定モデル「Depth Anything V2*1」について詳しく紹介します。
本記事は連載記事です。Depth Anything*2の解説編と実践編、そして本記事の三部構成となっています!Depth Anythingの連載記事を執筆中にDepth Anything V2が公開されたため、せっかくなのでDepth Anything V2の解説もしよう!ということで追加の連載記事を書いています。以後、モデルを明確に区別するため従来のDepth Anythingを”V1″、Depth Anything V2を”V2″と呼称する場合があります。
本記事ではDepth Anything V2にバージョンアップしたことによって何が変わったのかを中心に解説してきたいと思います。
要約
Depth Anything V2になって変わった所
- 学習用データに合成画像を採用
- 学習方法を調整
- 新しい評価用データを作成(今回は省略)
- 推論速度そのままに精度がUP
Depth Anything V2になっても変わらない所
- 基本的なモデル構造
Depth Anything V2とは
Depth Anythingとは、Zero-shotで動作可能な単眼深度推定モデルです。ライセンスもApache-2.0 licenseと商用利用しやすいため、画像分析に活用することが可能です。前々回の記事で詳しく解説しているので、そもそも単眼深度推定とは?Depth Anythingとは?という方はこちらをご覧ください。
Depth Anything V2とは、V1同様、Zero-shotで動作可能な単眼深度推定モデルです。ライセンスは一部Apache-2.0 licenseとなっていますが、大部分がCC-BY-NC-4.0 licenseとなっているため、画像分析で活用する際には注意が必要です。
モデル構造
Depth Anything V2のモデル構造はV1と同じ構造です。EncoderにDINOv2 *3、DecoderにDPT(dence prediction transformer) *4を採用しています。つまり、Depth Anything V2は学習用データとその学習方法に工夫を凝らし単眼深度推定の精度を向上させています。
*1:https://depth-anything-v2.github.io/
*2:https://depth-anything.github.io/
*3:DINOv2: A Self-supervised Vision Transformer Model
*4:Vision Transformers for Dense Prediction
(つづきは、ブログ「神戸のデータ活用塾!KDL Data Blog」へ)