diff --git a/README.md b/README.md index cdf8650d..598e2ac8 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,11 @@ instructions through "Create a Docker group". The Docker image workflow has equivalent procedures for Mac OS X and Windows found at [docs.docker.com](docs.docker.com). Then run the following command which will build a pre-built image and run on images found in `$(pwd)/images` (you can change this if you need to, see the [wiki](https://github.com/OpenDroneMap/OpenDroneMap/wiki/Docker) for more detailed instructions. ``` -docker run -it --rm -v $(pwd)/images:/code/images -v $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing opendronemap/opendronemap +docker run -it --rm \ + -v "$(pwd)/images:/code/images" \ + -v "$(pwd)/odm_orthophoto:/code/odm_orthophoto" \ + -v "$(pwd)/odm_texturing:/code/odm_texturing" \ + opendronemap/opendronemap ``` ### Native Install (Ubuntu 16.04) @@ -155,12 +159,20 @@ installed on your machine. Docker software is free to install and use in this co see the [Docker Ubuntu installation tutorial](https://docs.docker.com/engine/installation/linux/ubuntulinux/) and follow the instructions through "Create a Docker group". Once Docker is installed, the fastest way to use OpenDroneMap is to run a pre-built image by typing: - docker run -it --rm -v $(pwd)/images:/code/images -v $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing opendronemap/opendronemap + docker run -it --rm \ + -v "$(pwd)/images:/code/images" \ + -v "$(pwd)/odm_orthophoto:/code/odm_orthophoto" \ + -v "$(pwd)/odm_texturing:/code/odm_texturing" \ + opendronemap/opendronemap If you want to build your own Docker image from sources, type: docker build -t my_odm_image . - docker run -it --rm -v $(pwd)/images:/code/images -v $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing my_odm_image + docker run -it --rm \ + -v "$(pwd)/images:/code/images" \ + -v "$(pwd)/odm_orthophoto:/code/odm_orthophoto" \ + -v "$(pwd)/odm_texturing:/code/odm_texturing" \ + my_odm_image 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](https://github.com/OpenDroneMap/OpenDroneMap/wiki/Output-and-Results) section. @@ -168,19 +180,40 @@ If you want to view other results outside the Docker image simply add which dire 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 --rm -v $(pwd)/images:/code/images -v $(pwd)/odm_georeferencing:/code/odm_georeferencing -v $(pwd)/odm_orthophoto:/code/odm_orthophoto my_odm_image + docker run -it --rm \ + -v "$(pwd)/images:/code/images" \ + -v "$(pwd)/odm_georeferencing:/code/odm_georeferencing" \ + -v "$(pwd)/odm_orthophoto:/code/odm_orthophoto" \ + my_odm_image If you want to get all intermediate outputs, run the following command: - docker run -it --rm -v $(pwd)/images:/code/images -v $(pwd)/odm_georeferencing:/code/odm_georeferencing -v $(pwd)/odm_meshing:/code/odm_meshing -v $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing -v $(pwd)/opensfm:/code/opensfm -v $(pwd)/pmvs:/code/pmvs opendronemap/opendronemap + docker run -it --rm \ + -v "$(pwd)/images:/code/images" \ + -v "$(pwd)/odm_georeferencing:/code/odm_georeferencing" \ + -v "$(pwd)/odm_meshing:/code/odm_meshing" \ + -v "$(pwd)/odm_orthophoto:/code/odm_orthophoto" \ + -v "$(pwd)/odm_texturing:/code/odm_texturing" \ + -v "$(pwd)/opensfm:/code/opensfm" \ + -v "$(pwd)/pmvs:/code/pmvs" \ + opendronemap/opendronemap To pass in custom parameters to the run.py script, simply pass it as arguments to the `docker run` command. For example: - docker run -it --rm -v $(pwd)/images:/code/images v $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing opendronemap/opendronemap --resize-to 1800 --force-ccd 6.16 + docker run -it --rm \ + -v "$(pwd)/images:/code/images" \ + -v "$(pwd)/odm_orthophoto:/code/odm_orthophoto" \ + -v "$(pwd)/odm_texturing:/code/odm_texturing" \ + opendronemap/opendronemap --resize-to 1800 --force-ccd 6.16 If you want to pass in custom parameters using the settings.yaml file, you can pass it as a -v volume binding: - docker run -it --rm -v $(pwd)/images:/code/images v $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing -v $(pwd)/settings.yaml:/code/settings.yaml opendronemap/opendronemap + docker run -it --rm \ + -v "$(pwd)/images:/code/images" \ + -v "$(pwd)/odm_orthophoto:/code/odm_orthophoto" \ + -v "$(pwd)/odm_texturing:/code/odm_texturing" \ + -v "$(pwd)/settings.yaml:/code/settings.yaml" \ + opendronemap/opendronemap When building your own Docker image, if image size is of importance to you, you should use the ```--squash``` flag, like so: @@ -203,7 +236,7 @@ A web interface and API to OpenDroneMap is currently under active development in ## Video Support -Currently we have an experimental feature that uses ORB_SLAM to render a textured mesh from video. It is only supported on Ubuntu 14.04 on machines with X11 support. See the [wiki](https://github.com/OpenDroneMap/OpenDroneMap/wiki/Reconstruction-from-Video)for details on installation and use. +Currently we have an experimental feature that uses ORB_SLAM to render a textured mesh from video. It is only supported on Ubuntu 14.04 on machines with X11 support. See the [wiki](https://github.com/OpenDroneMap/OpenDroneMap/wiki/Reconstruction-from-Video) for details on installation and use. ## Examples