FE2E / README.md
nielsr's picture
nielsr HF Staff
Add model card for FE2E
ca1ddb3 verified
|
raw
history blame
2.78 kB
---
license: mit
pipeline_tag: depth-estimation
---
# FE2E: From Editor to Dense Geometry Estimator
FE2E is a Diffusion Transformer (DiT)-based foundation model for monocular dense geometry prediction. It adapts an advanced image editing model to dense geometry tasks, achieving strong zero-shot performance on both monocular depth and normal estimation.
[[Project Page](https://amap-ml.github.io/FE2E/)] [[Paper](https://huggingface.co/papers/2509.04338)] [[GitHub](https://github.com/AMAP-ML/FE2E)]
![teaser](https://github.com/AMAP-ML/FE2E/raw/main/assets/demo.png)
## Introduction
FE2E (From Editor to Dense Geometry Estimator) adapts an advanced image editing model based on Diffusion Transformer (DiT) architecture for dense geometry prediction. Key features include:
- **Consistent Velocity Objective**: Reformulates the editor's original flow matching loss for deterministic tasks.
- **Logarithmic Quantization**: Resolves precision conflicts between the editor's native BFloat16 format and the high precision demands of geometry tasks.
- **Joint Estimation**: Leverages DiT's global attention for joint estimation of depth and normals in a single forward pass.
FE2E achieves impressive performance improvements in zero-shot monocular depth and normal estimation, notably achieving over 35% gains on the ETH3D dataset and outperforming models trained on significantly more data.
## 🕹️ Inference
### 1. Setup
```bash
pip install -r requirements.txt
```
### 2. Prepare Model Weights
1. Download the base weights from the official [Step1X-Edit](https://github.com/stepfun-ai/Step1X-Edit) release.
2. Download the FE2E LoRA [checkpoint](https://huggingface.co/exander/FE2E/blob/main/LDRN.safetensors) from this repository.
### 3. Run Evaluation
To run evaluation for **depth estimation**:
```bash
python -u evaluation.py \
--model_path ./pretrain \
--eval_data_root ./infer \
--output_dir ./infer/eval_results \
--num_gpus 8 \
--lora ./lora/LDRN.safetensors \
--single_denoise \
--prompt_type empty \
--norm_type ln \
--task_name depth \
--depth_eval_datasets [dataset]
```
To run evaluation for **normal estimation**:
```bash
python -u evaluation.py \
--model_path ./pretrain \
--eval_data_root ./infer \
--output_dir ./infer/eval_results \
--num_gpus 8 \
--lora ./lora/LDRN.safetensors \
--single_denoise \
--prompt_type empty \
--norm_type ln \
--task_name normal \
--normal_eval_datasets [dataset]
```
## Citation
```bibtex
@article{wang2025editor,
title={From Editor to Dense Geometry Estimator},
author={Wang, JiYuan and Lin, Chunyu and Sun, Lei and Liu, Rongying and Nie, Lang and Li, Mingxing and Liao, Kang and Chu, Xiangxiang and Zhao, Yao},
journal={arXiv preprint arXiv:2509.04338},
year={2025}
}
```