Please refer to the Stereo Camera Design folder for the implementation of the stereo camera design experiment, and the Monocular Camera Design folder for the implementation of the monocular camera design experiment.
We use the CARLA Simulator version 0.9.15 as the virtual environment, please follow the official installation instructions to install the simulator.
To start the optimization, first start to run the CARLA simulator then run main.py. The pretrained PSMNet can be downloaded from their GitHub repository.
The simulator that procedurally generates virtual indoor environments is placed in the ProceduralGeneration folder. To build this project, the following steps need to be performed:
- Download Unreal Engine 5.3 from the official website
- Download the ProceduralGeneration folder of this repository to a preferred disk location, make sure the location has a disk space of a minimum of 30GB.
- Download the assets used for this project from Unreal Engine Marketplace and add them to the project. However, other preferred application-specific assets can be added to this project if required. The assets we used include:
- Download the TCP Socket Plugin to communicate with Python programs
- Run the .unproject file or build from source code by generating project files with this file.
The codes that optimize the camera are placed in the CameraOptimization folder. To start the camera optimization, first click the Run button in the Unreal Engine Editor and then run GeneticAlgorithmMain.py.
If you find our work useful, please cite the below paper:
@inproceedings{yan2025tacos,
title={{TaCOS}: Task-Specific Camera Optimization with Simulation},
author={Yan, Chengyang and Dansereau, Donald G},
booktitle={Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV)},
year={2025}
}