/Boundary-Detection-Evaluation-Tools

A user-friendly evaluation tool that encompasses all necessary components for boundary detection on PASCAL-Context and NYUD-v2 datasets.

Primary LanguageC++MIT LicenseMIT

🔥 Boundary Detection Evaluation Tools

📜 Introduction

The repository offers a user-friendly evaluation tool that encompasses all necessary components for boundary detection on PASCAL-Context and NYUD-v2 datasets.

The implementation is based on the Matlab-based SEISM project to compute the optimal dataset F-measure scores.

Identical to ATRC, we use maxDist=0.0075 for PASCAL-Context and maxDist=0.011 for NYUD-v2. Thresholds for HED (under seism/parameters/HED.txt) are used. read_one_cont_png is used as IO function in SEISM.

Useage

1. Build recommended environment

The code is tested under Python 3.7 and Matlab 8.6.0.267246 (R2015b)

2. Set up SEISM

  • Go to ./seism
  • Run matlab -nojvm -nodisplay -r "install"
  • Go to ./seism/src/gt_wrappers/db_root_dir.m, and set your ground-truth dataset paths of PASCAL-Context and NYUD-v2.

3. Run evaluation codes

PASCAL-Context:

python eval_edge_pascal.py

NYUD-v2

python eval_edge_nyud.py

Before that, set the prediction_path in python files to the directory containing the saved boundary detection prediction results. The expected folder for these predictions is named "edge".

For example, if your saved directory is structred as somepath/edge, you should set prediction_path as somepath.

You can assign any unique name of your choice to exp_name.

🤗 Cite

Please check our works on multi-task scene understanding as this evaluation tool was initially developed for that purpose:

Hanrong Ye and Dan Xu, TaskPrompter: Spatial-Channel Multi-Task Prompting for Dense Scene Understanding. ICLR 2023

Hanrong Ye and Dan Xu, Inverted Pyramid Multi-task Transformer for Dense Scene Understanding. ECCV 2022

Please do consider 🌟 star our project to share with your community if you find this repository helpful!

😊 Contact

Please contact Hanrong Ye if any questions.

👍 Acknowledgement

This repository is a wrapper of SEISM. It is developed with partial code reference from MTI-Net.