Deyan Deng¹, Rongjun Qin¹*
¹ The Ohio State University
* Corresponding author
This repository contains the official implementation for the 3DGS point measurement tool.
We provide a comprehensive suite of resources for this project:
- Project Page: https://gdaosu.github.io/3dgs_measurement_tool/
- Interactive Demo: https://huggingface.co/spaces/GDAOSU/3dgs_measurement_tool
- Paper: https://arxiv.org/abs/2603.24716
- PDF: ISPRS_Congress_2026_Full_paper_point_measurement_in_3DGS.pdf
Watch the demonstration video:
Try the interactive demo on HuggingFace Spaces: 3DGS Measurement Tool
- Interactive 3D Visualization: Navigate and explore 3DGS models using Cesium
- Point Measurement: Measure 3D points via multi-ray triangulation for high accuracy, with uncertainty ellipsoids.
- Geometry Creation: Create polylines and polygons from measured points.
- Standard Data Export: Export points, polylines, and polygons to GeoJSON, KML, and CSV.
- Node.js (v16 or higher)
- npm or yarn package manager
- Modern web browser with WebGL support
-
Clone the repository:
git clone https://github.com/GDAOSU/3dgs_measurement_tool.git cd 3dgs_measurement_tool -
Install dependencies:
npm install
-
Set up environment variables:
- This step is optional for local development. The application works out-of-the-box.
- To configure the application for deployment or to use the "Custom S3 Model" feature, create a
.env.localfile by copying the provided.env.example. - See
.env.examplefor a list of available variables and their descriptions.
Start the development server:
npm run devThe application will be available at http://localhost:5173
Build for production:
npm run buildPreview the production build:
npm run preview- Load a 3DGS Model: Upload or select a 3D Gaussian Splatting model
- Create Measurement Points: Click multiple times in the 3D scene to cast rays and compute an intersection point. The tool will visualize the rays and the resulting 3D point with its uncertainty ellipsoid.
- Create Geometries: Use the created points to define polylines and polygons.
- Export Results: Download measurement data in supported formats
├── src/
│ ├── components/ # React components
│ │ ├── CesiumViewer.jsx # 3D visualization component
│ │ ├── GeometryCreatorPanel.jsx # Geometry creation tools
│ │ └── MeasurePanel.jsx # Measurement interface
│ ├── pages/ # Application pages
│ │ └── Home.jsx # Main application page
│ ├── utils/ # Utility functions
│ │ └── awsConfig.js # AWS S3 configuration
│ ├── App.jsx # Main application component
│ └── main.jsx # Application entry point
├── index.html # HTML template
├── vite.config.js # Vite configuration
└── package.json # Project dependencies
Core dependencies include:
react- UI frameworkcesium&resium- 3D visualization@mui/material- Component libraryreact-router-dom- Routing
See package.json for complete dependency list and versions.
If you use this tool or the methodology in your research, please cite our paper:
@misc{deng2026accurate,
title={Accurate Point Measurement in 3DGS -- A New Alternative to Traditional Stereoscopic-View Based Measurements},
author={Deyan Deng and Rongjun Qin},
year={2026},
eprint={2603.24716},
archivePrefix={arXiv},
primaryClass={cs.CV}
}