IntentDrive / backend /README.md
sajith-0701
Deploy FastAPI backend to HF Spaces (Docker SDK)
98075af

Backend (Phase 1)

This backend exposes your existing CV + trajectory prediction pipeline through FastAPI.

Folder Structure

backend/
    app/
        api/
            dependencies.py
            routes/
                health.py
                live.py
                predict.py
        core/
            serialization.py
            uploads.py
        ml/
            inference.py
            model.py
            model_fusion.py
            sensor_fusion.py
        legacy/
            dataset.py
            dataset_fusion.py
            data_loader.py
            cv_perception.py
            map_renderer.py
            visualization.py
        services/
            pipeline.py
        main.py
        schemas.py
    scripts/
        training/
        evaluation/
        data/
        tools/
        legacy/
    requirements.txt

Notes:

  • Runtime model and fusion logic is now under backend/app/ml.
  • Legacy helper modules were moved under backend/app/legacy.
  • Training, evaluation, and data scripts were moved under backend/scripts/*.
  • Root-level inference.py, model.py, model_fusion.py, and sensor_fusion.py remain as compatibility wrappers.

Run

From the repository root:

.\\venv\\Scripts\\python.exe -m pip install -r backend/requirements.txt
.\\venv\\Scripts\\python.exe -m uvicorn backend.app.main:app --reload --host 0.0.0.0 --port 8000

Endpoints

  • GET /api/health
  • GET /api/live/frames?channel=CAM_FRONT&limit=200
  • GET /api/live/frame-image?path=<dataset_frame_path>
  • POST /api/predict/two-image (multipart form)
  • POST /api/predict/live-fusion (JSON body)

Phase 2 Scene Geometry

Prediction responses now include scene_geometry with image-grounded BEV primitives:

  • road_polygon: camera-derived drivable area in BEV coordinates.
  • lane_lines: lane candidates projected into BEV.
  • elements: projected actor footprints from detections.
  • quality: confidence score in [0, 1] for extracted scene structure.

Notes:

  • The backend keeps using existing model files at repository root.
  • Keep running from repo root so relative data paths remain stable.