latinet:unicaes:opendronemap:start
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
latinet:unicaes:opendronemap:start [2023/08/24 23:11] – jan.sonntag | latinet:unicaes:opendronemap:start [2023/08/25 02:10] – jan.sonntag | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | OpenDroneMap | + | ====== |
- | - Docker | + | On this page, we are explaining |
+ | The source code of ODM can be found in this GitHub Repo: [[https:// | ||
- | Create | + | ===== Installation ===== |
+ | We are installing ODM on a Google Machine which is provided by the UNICAES. It is only turned on when needed. | ||
+ | As some prerequisites: | ||
+ | |||
+ | ==== Install Docker and Docker Compose ==== | ||
+ | |||
+ | We followed the official documentation: | ||
+ | [[https:// | ||
+ | |||
+ | ==== Getting WebODM ==== | ||
+ | |||
+ | Download the git repository: | ||
< | < | ||
- | docker network create nginx-network | + | git clone https:// |
+ | cd WebODM | ||
</ | </ | ||
- | <file yml docker-compose.yml> | + | Then WebODM can be started with the following: |
- | version: " | + | <code> |
+ | ./webodm.sh restart | ||
+ | </ | ||
- | services: | + | ===== Preparing Drone Images from DJI Mavic 3 Multispectral ===== |
- | app: | + | |
- | image: ' | + | |
- | container_name: | + | |
- | restart: always | + | |
- | ports: | + | |
- | # These ports are in format < | + | |
- | - ' | + | |
- | - ' | + | |
- | - ' | + | |
- | # Add any other Stream port you want to expose | + | |
- | # - ' | + | |
- | # Uncomment | + | After taking |
- | # environment: | + | We already prepared a script for that: |
- | # Uncomment this if you want to change | + | <file sh correct_filenames.sh> |
- | # the SQLite DB file within | + | #!/bin/bash |
- | # DB_SQLITE_FILE: "/data/database.sqlite" | + | |
- | | + | # Process images in the specified directory |
- | # DISABLE_IPV6: | + | process_images() { |
+ | local target_dir=" | ||
+ | |||
+ | mkdir " | ||
+ | mkdir " | ||
- | | + | |
- | # Make sure this config.json file exists as per instructions above: | + | |
- | - ./ | + | |
- | - data:/ | + | echo "Found first image: $first_image" |
- | - letsencrypt:/ | + | |
- | | + | |
- | - nginx-proxy | + | echo " |
- | | + | |
- | | + | |
- | db-nginx: | + | |
- | image: | + | |
- | container_name: | + | |
- | restart: always | + | |
- | environment: | + | |
- | MYSQL_ROOT_PASSWORD: | + | |
- | | + | |
- | | + | |
- | | + | |
- | volumes: | + | |
- | | + | |
- | networks: | + | |
- | - nginx-proxy | + | |
- | volumes: | + | |
- | mysql: | + | |
- | data: | + | |
- | | + | |
- | # Connect to existing nginx-network: `docker network create nginx-network` | + | |
- | networks: | + | number=$(echo " |
- | nginx-proxy: | + | echo " |
- | | + | |
- | name: nginx-network | + | |
- | </ | + | |
- | < | + | |
- | docker compose up -d | + | |
- | </ | + | |
+ | mv " | ||
- | Just in case: | + | for ext in " |
+ | echo " | ||
+ | |||
+ | image_to_rename=$(ls " | ||
+ | |||
+ | if [ -n " | ||
+ | new_ext=$(echo " | ||
+ | new_name=" | ||
+ | echo " | ||
+ | mv " | ||
+ | else | ||
+ | echo "No matching ${ext}.TIF files found for number: $number" | ||
+ | fi | ||
+ | done | ||
+ | done | ||
+ | } | ||
- | <file json config.json> | + | # Check if an argument is provided |
- | { | + | if [ $# -ne 1 ]; then |
- | " | + | |
- | "engine" | + | |
- | | + | fi |
- | " | + | |
- | " | + | # Call the function to process images |
- | " | + | process_images |
- | "port": 3306 | + | |
- | } | + | |
</ | </ | ||
+ | Just save this file somewhere you will be able to find it later as well. | ||
- | - NGINX Manager | + | We are running this script on Ubuntu. Do make it executable Don´t forget to: |
- | - OpenDroneMap | + | < |
+ | sudo chmod +x ./ | ||
+ | </ | ||
- | [[https://github.com/OpenDroneMap/WebODM/# | + | You can then execute the script by giving the folder with pictures inside as an argument. Example: |
+ | < | ||
+ | ./correct_filenames.sh ./pictures | ||
+ | </code> |