# IMFOA-OFT: Semantic and Optical-Flow SLAM for Dynamic Indoor Environments ## Description This project implements a dynamic monocular SLAM system using improved Mask R-CNN with CFPN for dynamic object segmentation and Elite Moth–Flame Optimization Algorithm (EMFOA) for feature tracking via optical flow. ## Dataset Information - **Dataset**: TUM RGB-D Dataset - **URL**: [https://vision.in.tum.de/data/datasets/rgbd-dataset](https://vision.in.tum.de/data/datasets/rgbd-dataset) - **Scenes**: rgbd_dataset_freiburg3_sitting_xyz, walking_xyz, etc. ## Code Information - `DynamicSLAM`: Full SLAM pipeline. - `ImprovedMaskRCNN`: Semantic segmentation using Mask R-CNN + CFPN. - `OpticalFlowTracker`: Feature tracking using optical flow and EMFOA. - `EMFOA`: Metaheuristic optimization algorithm. - Dependencies include: `torch`, `opencv-python`, `scikit-learn`, `numpy`. ## Usage Instructions ```bash # Install dependencies pip install -r requirements.txt # Run the SLAM system on a video python run_slam.py --input dynamic_scene.mp4 ``` ## Requirements - Python 3.8+ - Required libraries: numpy, opencv-python, torch, torchvision, scikit-learn ## Methodology - **Segmentation**: Improved Mask R-CNN with CFPN for dynamic object detection. - **Tracking**: EMFOA-optimized optical flow. - **Geometric validation**: Fundamental matrix estimation with polar constraint. - **Evaluation**: TUM RGB-D benchmark using RPE and APE metrics. ## Citations > Chen et al. (2022). A Monocular-visual SLAM system with semantic and optical-flow fusion for indoor dynamic environments. *Micromachines*, 13(11), 2006. ## License & Contribution Guidelines This project is licensed under the MIT License. Contributions are welcome via pull requests.