Calibration Process - Camera Calibration

From RidgeRun Developer Wiki

Follow Us On Twitter LinkedIn Email Share this page






Web Calibration and Tunning Tool

The web calibration and tuning tool provides a simple UI for camera calibration, IMU calibration, and tuning for the stabilisation library. These tools can be used through CLI following the instructions under |Calibration process/IMU Calibration. Nevertheless the web UI provides a more guided approach and video preview for these tools.

Tested platforms:

  • Target
    • NVIDIA Jetson Xavier (AGX and NX), Jetson Orin (AGX, Nano, NX) with Jetpack >= 5.x
  • Web UI host
    • x86 Ubuntu 24.04

Pre-requierements

  • The host and target platform must be reachable over the same local network.
  • The host must be able to connect to the target platform through SSH.
  • The host must have at least the RVS repository cloned.
  • The target requires at least an evaluation version of RidgeRun Browser Sink.
  • The target platform must have install the RVS library and all its dependencies as well as env variables in its .bashrc (Go to: NVIDIA Jetson Setup to install all the dependencies).

Launching the server on the host

Using docker:

# Build the image
docker build -f ./docker/web-calibrator/Dockerfile -t ridgerun/video-stabilization-library:webcalibrator .

# Run the container
docker run --rm --network host -v "$PWD":/root/host-volume -v /tmp/rvs-output:/tmp/rvs-output ridgerun/video-stabilization-library:webcalibrator

Natively:

# Install dependencies
sudo apt-get update && apt-get install -y \
     git \
     python3 \
     python3-pip \
     curl \
     wget \
     build-essential \
     libgl1 \
     libglib2.0-0 \
     iputils-ping

# Install npm and uv
curl -fsSL https://deb.nodesource.com/setup_18.x | bash - \
    && apt-get install -y nodejs
curl -LsSf <nowiki>https://astral.sh/uv/install.sh</nowiki> | sh
 
# Go to the repository path
cd ridgerun-video-stabilizer/tools/calibration-tool/frontend

# Install pm2
npm install -g pm2

# Install npm packages
npm install
 
# Start the web browser (backend/frontend)
pm2 start "npm run dev" --name web-frontend --cwd "${PWD}/tools/calibration-tool/frontend"
pm2 start "uv run manage.py" --name web-backend --cwd "${PWD}/tools/calibration-tool/backend"

Now open http://127.0.0.1:5173/ in your browser. You should see the Welcome screen for the browser tool.