From 2337ea69a12e5146af4d9d228ea5692a318bc12a Mon Sep 17 00:00:00 2001 From: Dakota Benjamin Date: Tue, 20 Dec 2016 11:14:52 -0500 Subject: [PATCH] Update README to reflect UI changes Former-commit-id: cefb0d08aef5888083740753529350f36cef0ff8 --- README.md | 38 ++++++++++---------------------------- run.py | 4 ++++ 2 files changed, 14 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 0b9a052c..6abb162f 100644 --- a/README.md +++ b/README.md @@ -50,22 +50,13 @@ For Ubuntu 15.10 users, this will help you get running: ### Run OpenDroneMap -First you need a set of images, taken from a drone or otherwise. - -Create a project folder and places your images in an "images" directory: - - |-- /path/to/project/ - |-- images/ - |-- img-1234.jpg - |-- ... - -Example data can be cloned from https://github.com/OpenDroneMap/odm_data +First you need a set of images, taken from a drone or otherwise. Example data can be cloned from https://github.com/OpenDroneMap/odm_data Then run: - python run.py --project-path /path/to/project - -There are many options for tuning your project. See the [wiki](https://github.com/OpenDroneMap/OpenDroneMap/wiki/Run-Time-Parameters) or run `python run.py -h` + python run.py --project-path /path/to/project -i /path/to/images + +The images will be copied over to the project path so you only need to specify the `-i /path/` once. There are many options for tuning your project. See the [wiki](https://github.com/OpenDroneMap/OpenDroneMap/wiki/Run-Time-Parameters) or run `python run.py -h` ### View Results @@ -106,7 +97,7 @@ Any file ending in .obj or .ply can be opened and viewed in [MeshLab](http://mes ![](https://raw.githubusercontent.com/alexhagiopol/OpenDroneMap/feature-better-docker/toledo_dataset_example_mesh.jpg) -You can also view the orthophoto GeoTIFF in QGIS or other mapping software: +You can also view the orthophoto GeoTIFF in [QGIS](http://www.qgis.org/) or other mapping software: ![](https://raw.githubusercontent.com/OpenDroneMap/OpenDroneMap/master/img/bellus_map.png) @@ -126,22 +117,13 @@ like so: docker build -t packages -f packages.Dockerfile . docker build -t odm_image . docker run -it --user root\ - -v $(pwd)/images:/code/images\ - -v $(pwd)/odm_orthophoto:/code/odm_orthophoto\ - -v $(pwd)/odm_texturing:/code/odm_texturing\ - --rm odm_image + -v /path/to/images:/project/images \ + -v $(pwd)/project:/project \ + -v /path/to/gcp_list.txt:/code/gcp_list.txt \ + --rm odm_image --project-path /project Using this method, the containerized ODM will process the images in the OpenDroneMap/images directory and output results -to the OpenDroneMap/odm_orthophoto and OpenDroneMap/odm_texturing directories as described in the **Viewing Results** section. -If you want to view other results outside the Docker image simply add which directories you're interested in to the run command in the same pattern -established above. For example, if you're interested in the dense cloud results generated by PMVS and in the orthophoto, -simply use the following `docker run` command after building the image: - - docker run -it --user root\ - -v $(pwd)/images:/code/images\ - -v $(pwd)/pmvs:/code/pmvs\ - -v $(pwd)/odm_orthophoto:/code/odm_orthophoto\ - --rm odm_image +to the OpenDroneMap/odm_orthophoto and OpenDroneMap/odm_texturing directories as described in the **Viewing Results** section. To pass in custom parameters to the run.py script, simply pass it as arguments to the `docker run` command. diff --git a/run.py b/run.py index eaaf0bbb..d118d5da 100644 --- a/run.py +++ b/run.py @@ -3,6 +3,7 @@ from opendm import log from opendm import config from opendm import system +from opendm import io import sys import ecto @@ -26,6 +27,9 @@ if __name__ == '__main__': # Force to provide the images path if args.project_path is None: usage() + elif not io.dir_exists(args.project_path): + log.ODM_WARNING('Directory %s does not exist. Creating it now.' % args.project_path) + system.mkdir_p(os.path.abspath(args.project_path)) #If user asks to rerun everything, delete all of the existing progress directories. # TODO: Move this somewhere it's not hard-coded