This is a microservice created for the university project Maps-x-Markets. The idea of Maps-x-Markets was to provide users with searchable indoor maps of hardware stores, making it easier for them to find what they are looking for.
During the development, this microservice was named scan_processing. The purpose of scan_processing is to make generating a map of a store and storing categories, such as vegetables, milk, pasta, etc., on this map as easy as taking a video.
- Generate a floorplan from the data of a point cloud scan from the 3DScanner app (https://3dscannerapp.com/) for iOS devices.
- Compute intersection points of the floor plan and the camera views of the images taken during the lidar scan.
- An ML model can then classify the images, and the classification value can be mapped to the intersection point.
Disclaimer: it does not make much sense to run this application locally without having the data from a scan and the point cloud of that scan uploaded to cloud storage
- Docker installation
- Local Postgres server
- Python 3.10
- Cloud Storage & Service Account Key file
-
Clone the repo
-
Copy the service accout key file into your local repo, MAKE SURE TO ADD IT TO .git-ignore!
-
Use example.env to generate a .env file, change the POSTGRES values & the path to the service account key file
-
Run
docker-compose build
-
Run
docker-compos up
The Application should now run!
-
Start the application with
docker-compose up
-
Run
docker-compose exec scan_processing_service pytest