content.raw: Explaining a new state-of-the-art monocular depth estimation model: Depth Anything ✨ 🧶
content.type: text
content.value: Explaining a new state-of-the-art monocular depth estimation model: Depth Anything ✨ 🧶
content.type: new_line
content.raw: Before we begin: Depth Anything is recently integrated to 🤗 transformers and you can use it with three lines of code! ✨ 
content.type: text
content.value: Before we begin: Depth Anything is recently integrated to 🤗 transformers and you can use it with three lines of code! ✨ 
content.type: new_line
content.code: from transformers import pipeline
  
  pipe = pipeline(task="depth-estimation", model="LiheYoung/depth-anything-small-hf")
  depth = pipe(image)["depth"]
content.lang: python
content.raw: ```python
  from transformers import pipeline
  
  pipe = pipeline(task="depth-estimation", model="LiheYoung/depth-anything-small-hf")
  depth = pipe(image)["depth"]
  ```
content.type: code_fence
content.type: new_line
content.raw: We have also built an app for you to compare different depth estimation models 🐝 🌸  
content.type: text
content.value: We have also built an app for you to compare different depth estimation models 🐝 🌸  
content.raw: https://huggingface.co/spaces/merve/compare_depth_models
content.id: merve/compare_depth_models
content.type: space
content.type: resource
content.url: https://huggingface.co/spaces/merve/compare_depth_models
content.type: new_line
content.raw: Check out Depth Anything in Web by 
content.type: text
content.value: Check out Depth Anything in Web by 
content.raw: @Xenova
content.type: mention
content.user: Xenova
content.type: text
content.raw: https://huggingface.co/spaces/Xenova/depth-anything-web
content.id: Xenova/depth-anything-web
content.type: space
content.type: resource
content.url: https://huggingface.co/spaces/Xenova/depth-anything-web
content.type: new_line
content.type: new_line
content.raw: The model's success heavily depends on unlocking the use of unlabeled datasets, although initially the authors used self-training and failed.
content.type: text
content.value: The model's success heavily depends on unlocking the use of unlabeled datasets, although initially the authors used self-training and failed.
content.type: new_line
content.raw: What the authors have done:
content.type: text
content.value: What the authors have done:
content.type: new_line
content.raw: ➰ Train a teacher model on labelled dataset
content.type: text
content.value: ➰ Train a teacher model on labelled dataset
content.type: new_line
content.raw: ➰ Guide the student using teacher and also use unlabelled datasets pseudolabelled by the teacher
content.type: text
content.value: ➰ Guide the student using teacher and also use unlabelled datasets pseudolabelled by the teacher
content.type: new_line
content.raw: However, this was the cause of the failure, as both architectures were similar, the outputs were the same.
content.type: text
content.value: However, this was the cause of the failure, as both architectures were similar, the outputs were the same.
content.type: new_line
content.raw: So the authors have added a more difficult optimization target for student to learn additional knowledge on unlabeled images that went through color jittering, distortions, Gaussian blurring and spatial distortion, so it can learn more invariant representations from them.
content.type: text
content.value: So the authors have added a more difficult optimization target for student to learn additional knowledge on unlabeled images that went through color jittering, distortions, Gaussian blurring and spatial distortion, so it can learn more invariant representations from them.
content.type: new_line
content.raw: The architecture consists of DINOv2 encoder to extract the features followed by DPT decoder. At first, they train the teacher model on labelled images, and then they jointly train the student model and add in the dataset pseudo-labelled by ViT-L.
content.type: text
content.value: The architecture consists of DINOv2 encoder to extract the features followed by DPT decoder. At first, they train the teacher model on labelled images, and then they jointly train the student model and add in the dataset pseudo-labelled by ViT-L.
content.type: new_line
content.raw: Thanks to this, Depth Anything performs very well! I have also benchmarked the inference duration of the model against different models here. I also ran torch.compile benchmarks across them and got nice speed-ups 🚀 
content.type: text
content.value: Thanks to this, Depth Anything performs very well! I have also benchmarked the inference duration of the model against different models here. I also ran torch.compile benchmarks across them and got nice speed-ups 🚀 
content.href: https://huggingface2.notion.site/DPT-Benchmarks-1e516b0ba193460e865c47b3a5681efb?pvs=4
content.raw: https://huggingface2.notion.site/DPT-Benchmarks-1e516b0ba193460e865c47b3a5681efb?pvs=4
content.type: link
content.type: new_line
rawContent: Explaining a new state-of-the-art monocular depth estimation model: Depth Anything ✨ 🧶
  Before we begin: Depth Anything is recently integrated to 🤗 transformers and you can use it with three lines of code! ✨ 
  ```python
  from transformers import pipeline
  
  pipe = pipeline(task="depth-estimation", model="LiheYoung/depth-anything-small-hf")
  depth = pipe(image)["depth"]
  ```
  We have also built an app for you to compare different depth estimation models 🐝 🌸  https://huggingface.co/spaces/merve/compare_depth_models
  Check out Depth Anything in Web by @Xenova https://huggingface.co/spaces/Xenova/depth-anything-web
  
  The model's success heavily depends on unlocking the use of unlabeled datasets, although initially the authors used self-training and failed.
  What the authors have done:
  ➰ Train a teacher model on labelled dataset
  ➰ Guide the student using teacher and also use unlabelled datasets pseudolabelled by the teacher
  However, this was the cause of the failure, as both architectures were similar, the outputs were the same.
  So the authors have added a more difficult optimization target for student to learn additional knowledge on unlabeled images that went through color jittering, distortions, Gaussian blurring and spatial distortion, so it can learn more invariant representations from them.
  The architecture consists of DINOv2 encoder to extract the features followed by DPT decoder. At first, they train the teacher model on labelled images, and then they jointly train the student model and add in the dataset pseudo-labelled by ViT-L.
  Thanks to this, Depth Anything performs very well! I have also benchmarked the inference duration of the model against different models here. I also ran torch.compile benchmarks across them and got nice speed-ups 🚀 https://huggingface2.notion.site/DPT-Benchmarks-1e516b0ba193460e865c47b3a5681efb?pvs=4
  
reactions.reaction: ❤️
reactions.users: osanseviero clem Xenova Ar4ikov tusk3d marooz
reactions.reaction: 👍
reactions.users: alvarobartt osanseviero clem valcore
reactions.reaction: 🤯
reactions.users: Ar4ikov