题目要求:了解Depth Anything (以及Depth Anything v2)基本原理,创新点。
Depth Anything 论文:Depth Anything: Unleashing the Power of Large-Scale Unlabeled Data
参考代码:Depth-Anything-Android GitHub
分析:
1)了解MonoDepthv2的基本原理和代码理解
2)将模型转化为小米手机端可以适配的推理模型
-
前言
赶在乒乓大满贯樊正东成功拿下男单冠军,部署完毕了Depth Anything模型,耗时3天,正如小胖那过去三个奥运会砥砺,虽迟但到,这该死的总冠军!!!
-
结果展示:
[注:由于Depth Anything模型较大,通常时间耗费大概在200~300 ms之间,即使输入尺寸为256x256以及做了resize操作] -
配置过程
[说明:为啥花了3天呢,因为这个配置过程确实是麻烦,主要是版本兼容性太差,很多需要自己摸索,找原因,逐个定位]
所以特别强调一下配置的环境信息:
1 Andorid Studo version: Android Studio Electric Eel | 2022.1.1 Patch 2
2 Graddle version: 7.4-bin
3 JDK version: 11
4 others: NDK and so on
-
需要修改的内容如下:
-
小结
1)Android Studio 配置过程会出现各种问题,需要耐心解决。如网络问题,SDK,NDK等路径配置问题,按照以上版本配置,大概率是可以运行成功,但是换个版本需要相应的适配;
2)相比于单目深度估计如MonoDepthV2, DepthAnything模型复杂很多,也大很多,也有可能是因为加载的是ONNX文件,相较于NCNN优化程度更大(工程应用的话,这里更倾向于前者);
3)后面将继续进行NCNN转换工作,想能转成功,之前尝试一直有问题~sad.