Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

ParthS007/Architect3D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

15 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Architect3D: Improving the Mask Quality for Open-Vocabulary Pipelines

Architect3D Python PyTorch CUDA

Advanced 3D instance segmentation specifically designed for architectural scene understanding

๐Ÿ“Š Baselines โ€ข ๐Ÿ“‹ Summary โ€ข ๐ŸŽจ Visualization โ€ข ๐Ÿ“‘ Report


๐ŸŽฏ Overview

Architect3D adapts the state-of-the-art Mask3D model to work with the ScanNet++ dataset, enabling fine-grained 3D instance segmentation for architectural scenes with 2,753 classes - a 10x increase from standard datasets.

โœจ Key Features

  • ๐Ÿ›๏ธ Architectural Focus: Specialized for building and indoor architectural scenes
  • ๐Ÿ“ˆ Massive Scale: Handles 2,753 fine-grained architectural classes
  • ๐Ÿ” High Resolution: Optimized for 0.02m voxel precision
  • ๐Ÿ”— OpenMask3D Ready: Prepared for open-vocabulary integration
  • ๐Ÿ“Š Comprehensive Evaluation: Detailed architectural scene analysis

๐Ÿšจ Project Status

Note: Due to computational constraints (GPU limitations, 200GB storage limit), full evaluation is pending. The model has been successfully adapted and the framework is complete.


๐Ÿ“Š Performance Overview

Model Dataset Classes AP AP50 AP25 Status
Mask3D ScanNet200 200 26.9 36.2 41.4 โœ… Baseline
OpenMask3D ScanNet200 200 15.4 19.9 23.1 โœ… Baseline
Architect3D ScanNet++ 2,753 Pending Pending Pending ๐Ÿ”„ Ready

See baseline.md for detailed comparisons


๐Ÿš€ Quick Start

Prerequisites

# System requirements
CUDA >= 11.3
Python >= 3.8
GPU Memory >= 8GB

Installation

# Clone repository
git clone [your-repo-url]
cd Architect3D

# Install dependencies
pip install -r requirements.txt

# For detailed MinkowskiEngine setup, see below โฌ‡๏ธ

Basic Usage

# 1. Preprocess ScanNet++ data
cd Architect3D/Mask3D/
sbatch preprocessing.sh

# 2. Run evaluation
sbatch scannetpp_eval.sh

# 3. Generate visualizations
python vis.py

๐Ÿ“ Repository Structure

๐Ÿ“‚ Click to expand detailed structure
Architect3D/
โ”œโ”€โ”€ ๐Ÿ“„ README.md                               # This file
โ”œโ”€โ”€ ๐Ÿ“‹ PROJECT_SUMMARY.md                      # Executive summary
โ”œโ”€โ”€ ๐Ÿ“Š baseline.md                             # Performance baselines
โ”œโ”€โ”€ ๐ŸŽจ vis.py                                  # t-SNE visualization generator
โ”œโ”€โ”€ ๐ŸŒ interactive_tsne_visualization.html     # Interactive class embeddings
โ”œโ”€โ”€ ๐Ÿ“‘ Architect3D.pdf                         # Comprehensive project report
โ”‚
โ”œโ”€โ”€ ๐Ÿ—๏ธ Architect3D/                            # Core implementation
โ”‚   โ”œโ”€โ”€ Mask3D/                               # Adapted Mask3D for ScanNet++
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿš€ main_instance_segmentation.py  # Main training/evaluation script
โ”‚   โ”‚   โ”œโ”€โ”€ โš™๏ธ conf/                          # Hydra configurations
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“Š benchmark/                     # Evaluation framework
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ—ƒ๏ธ datasets/                      # Data loaders & preprocessing
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿง  models/                        # Neural network architectures
โ”‚   โ”‚   โ”œโ”€โ”€ ๐ŸŽฏ trainer/                       # Training pipeline
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ’พ saved/final/                   # Model checkpoints
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ˆ jobs/                          # Training logs
โ”‚   โ””โ”€โ”€ ๐Ÿ“‹ requirements.txt
โ”‚
โ”œโ”€โ”€ ๐Ÿ” openmask3d/                             # OpenMask3D integration
โ”‚   โ””โ”€โ”€ openmask3d/                           # Core modules
โ”‚       โ”œโ”€โ”€ ๐ŸŽญ class_agnostic_mask_computation/
โ”‚       โ”œโ”€โ”€ ๐Ÿ”ฎ mask_features_computation/
โ”‚       โ”œโ”€โ”€ ๐Ÿ“Š evaluation/
โ”‚       โ””โ”€โ”€ ๐Ÿ‘๏ธ visualization/
โ”‚
โ”œโ”€โ”€ ๐Ÿ  scannetpp/                              # ScanNet++ dataset
โ”‚   โ”œโ”€โ”€ metadata/                             # Class definitions
โ”‚   โ”œโ”€โ”€ scannetpp_ply/                        # 3D scenes
โ”‚   โ””โ”€โ”€ splits/                               # Train/val/test splits
โ”‚
โ””โ”€โ”€ ๐Ÿ“Š eval_results_architectural_classes/     # Evaluation results

๐Ÿ”ง Technical Implementation

Architecture Adaptations

graph TB
    A[ScanNet++ Dataset<br/>2,753 classes] --> B[Sparse 3D CNN<br/>MinkowskiEngine]
    B --> C[Multi-scale Features]
    C --> D[Transformer Decoder]
    D --> E[Enhanced Head<br/>2,753 outputs]
    E --> F[Instance Masks]
    
    G[RGB Images] --> H[CLIP Features]
    H --> I[Multi-view Fusion]
    I --> J[OpenMask3D Pipeline]
    
    F --> K[Architectural<br/>Predictions]
    J --> K
    
    style A fill:#e1f5fe
    style E fill:#f3e5f5
    style K fill:#e8f5e8
Loading

Key Modifications

Component Original Architect3D Improvement
Classes 200 2,753 ๐Ÿ”ฅ 13.8x scaling
Voxel Size 0.05m 0.02m ๐ŸŽฏ 2.5x precision
Domain General Architectural ๐Ÿ›๏ธ Specialized
Head Architecture Standard Scaled โšก Optimized

๐Ÿ› ๏ธ Detailed Installation

๐Ÿ”ง Complete MinkowskiEngine Setup (ETH Cluster)
# STEP 1: Load modules
module load gcc/8.2.0 python_gpu/3.8.5 cuda/11.3.1 cudnn/8.2.1.32

# STEP 2: Create environment
python -m venv architect3d_env
source architect3d_env/bin/activate

# STEP 3: Install PyTorch
pip install torch==1.12.1 torchvision==0.13.1 -f https://download.pytorch.org/whl/cu113/torch_stable.html

# STEP 4: Install dependencies
pip install ninja pytorch-lightning==1.7.2 hydra-core==1.0.5

# STEP 5: Setup MinkowskiEngine
git clone https://github.com/NVIDIA/MinkowskiEngine.git
cd MinkowskiEngine
# Edit setup.py (uncomment CUDA_HOME configuration)
python setup.py install

# STEP 6: Install additional packages
pip install -r requirements.txt

# STEP 7: Install CLIP & SAM
pip install git+https://github.com/openai/CLIP.git --no-deps
pip install git+https://github.com/facebookresearch/segment-anything.git --no-deps

๐Ÿ“ˆ Evaluation & Results

Visualization

๐ŸŽจ Interactive t-SNE: Explore 2,753 architectural class embeddings

  • Open interactive_tsne_visualization.html in browser
  • Visualize class relationships and clusters
  • Understand architectural taxonomy

Metrics

๐Ÿ“Š Comprehensive Evaluation:

  • AP Metrics: Standard instance segmentation evaluation
  • Class Analysis: Head/Common/Tail performance breakdown
  • Architectural Focus: Building-specific evaluation protocols

๐Ÿค Acknowledgments

Core Technologies

Development

This project was developed for the 3D Vision course at ETH Zurich. Special thanks to supervisors for guidance and the unofficial OpenMask3D codebase.


๐Ÿ“š Resources

Resource Description Link
๐Ÿ“‘ Full Report Comprehensive documentation PDF
๐Ÿ“Š Baselines Performance comparisons Markdown
๐Ÿ“‹ Summary Executive overview Summary
๐ŸŽจ Visualization Interactive t-SNE HTML
โš™๏ธ Configs Hydra configuration Directory

๐Ÿ—๏ธ Built for advancing 3D architectural scene understanding ๐Ÿ—๏ธ

ETH Zurich 3D Vision

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •