DroneDB icon indicating copy to clipboard operation
DroneDB copied to clipboard

Free and open source software for aerial data storage.

ddb-logo-banner

license commits languages Docs C/C++ CI NodeJS CI .NET CI

DroneDB is free and open source software for aerial data storage. It provides a convenient location to store images, orthophotos, digital elevation models, point clouds or any other file.

image

See it in action: https://hub.dronedb.app/r/pierotofy/brighton-beach

Documentation

https://docs.dronedb.app

Roadmap

We welcome feedback from the community to decide what to implement or prioritize next. Here's the current list of features that are going to be implemented soon:

  • [X] Support for parsing/display of 360/180 panoramic images
  • [ ] Support for adding annotations to maps
  • [ ] Persistent annotations/measurements on point clouds
  • [X] Support for adding measurements to maps
  • [ ] 1.0 release on Registry (expected mid 2022)
  • [ ] User management UI
  • [X] Logo/brand customizations
  • [X] Organizational accounts
  • [ ] STAC catalog generation
  • [ ] Improve Documentation
  • [ ] Processing (ability to perform operations on point clouds, orthophotos, images, etc.)
  • [ ] Plugins framework

Building From Source

Requirements:

  • sqlite3
  • spatialite
  • cmake
  • libgeos
  • g++ >= 10.1.0 (very important! :warning: g++ 8 has a bug in the stdc++fs library that will prevent the software from running properly)
  • GDAL >= 2.1

On Ubuntu you can simply execute this script to install the dependencies:

scripts/ubuntu_deps.sh

Then:

git clone --recurse-submodules https://github.com/DroneDB/DroneDB ddb
cd ddb
mkdir build && cd build
cmake .. && make

On Windows you should install Visual Studio (the free Community Edition works great), Git and CMake. Then:

git clone --recurse-submodules https://github.com/DroneDB/DroneDB ddb
cd ddb
md build && cd build
cmake ..
cmake --build . --config Release --target ALL_BUILD -- /maxcpucount:14

Building NodeJS bindings

After you've made a successful build (see above), make sure the build directory is empty (remove it) and that you have npm installed. Then:

npm install

Should be sufficient to build the NodeJS bindindgs.

You can test that they work by issuing:

scripts\setup_windows_env.bat (Windows only)
npm test