8000 GitHub - RomanStadlhuber/f3loc
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

RomanStadlhuber/f3loc

 
 

Repository files navigation

F3Loc : Fusion and Filtering for Floorplan Localization [CVPR 2024 ✨highlight✨]

teaser This repository contains the official implementation of the following paper:

F3Loc : Fusion and Filtering for Floorplan Localization
Authors: Changan Chen, Rui Wang, Christoph Vogel, Marc Pollefeys
Paper | arXiv | Project Page

Citation

If you use this project or ideas from the paper for your research, please cite our paper:

@inproceedings{chen2024f3loc,
  title={F $\^{3}$ Loc: Fusion and Filtering for Floorplan Localization},
  author={Chen, Changan and Wang, Rui and Vogel, Christoph and Pollefeys, Marc},
  booktitle={IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  year={2024}
}

Requirements

To get started with the code, clone this repository and install the required dependencies:

git clone https://github.com/romanstadlhuber/f3loc.git
# install tkinter if you havent already (required by matplotlib)
apt update && apt install -y -q python3-tk python3-virtualenv
# create venv and install dependencies
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
when using conda (shame on you)
git clone https://github.com/romanstadlhuber/f3loc.git
cd f3loc
conda env create -f environment.yml
conda activate f3loc

Download Checkpoints

You can download the model checkpoints from here.
Place the logs folder under f3loc directory:

├── f3loc 
│   ├── logs
│       ├── comp.ckpt   # checkpoint for the complementary network 
│       ├── mono.ckpt   # checkpoint for the monocular network 
│       ├── mv.ckpt     # checkpoint for the multi-view network 

Download Dataset

You can download the dataset from here.
The released Gibson Floorplan Localization Dataset contains three datasets gibson_f, gibson_g (four views of forward and geneneral motions) and gibson_t (long trajectories) as described in the paper.
The data is collected in Gibson Environment. For more detailed data organization please refer to the README of the dataset.

Place dataset under the data folder:

├── f3loc 
│   ├── data
│       ├── Gibson Floorplan Localization Dataset
│           ├── README.md
│           ├── gibson_f
│               ├── ...
│           ├── gibson_g
│               ├── ...
│           ├── gibson_t
│               ├── ...
│           ├── desdf
│               ├── ...

Usage

Evaluate the observation models

python eval_observation.py --net_type <net-type> --dataset <dataset> 

Specify the network type, and choose a dataset to evaluate on, you can use gibson_f or gibson_g, e.g.,

python eval_observation.py --net_type comp --dataset gibson_f

Help message for arguments can be listed by

python eval_observation.py -h

Evaluate the sequential filtering

python eval_filtering.py --net_type <net-type> --traj_len <traj-len> --evol_dir <evol-dir>

This evaluates the sequential filtering with the proposed histogram filter on gibson_t. Choose a network type and specify the trajectory length. Set --evol_dir to a directory if you wish to dump the figures of likelihood and posterior evolution. By default the figures are not saved. E.g.,

python eval_filtering.py --net_type comp --traj_len 100 --evol_dir ./visualization

Check the usage of the arguments by

python eval_filtering.py -h

Lincense

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Languages

  • Python 99.7%
  • Shell 0.3%
0