# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2020, OpenDroneMap
# This file is distributed under the same license as the OpenDroneMap package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: OpenDroneMap 2.0.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-12-15 09:17-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: ../../../tutorials.rst:5
#: 154e27339a6d4d5ab135b254b41cff2e
msgid "Tutorials"
msgstr ""

#: ../../../tutorials.rst:7
#: 39d60310918740b0a556e8c10dc56eba
msgid "Below you will find instructions for some common use cases."
msgstr ""

#: ../../../tutorials.rst:11
#: b5fbaa44520f44cb9da623043f6ed848
msgid "Creating High Quality Orthophotos"
msgstr ""

#: ../../../tutorials.rst:17
#: 14bdaa6fa5b44666b70643faf4d90748
msgid "Without any parameter tweaks, ODM chooses a good compromise between quality, speed and memory usage. If you want to get higher quality results, you need to tweak some parameters:"
msgstr ""

#: ../../../tutorials.rst:19
#: bd6465ef1c014f89b19a45933fbc61cf
msgid "``--orthophoto-resolution`` is the resolution of the orthophoto in cm/pixel. Decrease this value for a higher resolution result."
msgstr ""

#: ../../../tutorials.rst:20
#: 1aa11b4438b346ddbaa4a002e908e022
msgid "``--ignore-gsd`` is a flag that instructs ODM to skip certain memory and speed optimizations that directly affect the orthophoto. Using this flag will increase runtime and memory usage, but may produce sharper results."
msgstr ""

#: ../../../tutorials.rst:21
#: 3502bb2d2f444fe496c8e6201f2de1e7
msgid "``--texturing-nadir-weight`` should be increased to ``29-32`` in urban areas to reconstruct better edges of roofs. It should be decreased to ``0-6`` in grassy / flat areas."
msgstr ""

#: ../../../tutorials.rst:22
#: 11523879c49e48399e4a1103edb203d0
msgid "``--texturing-data-term`` should be set to `area` in forest areas."
msgstr ""

#: ../../../tutorials.rst:23
#: 44565af981be4cbd9a67774ea5519b45
msgid "``--mesh-size`` should be increased to ``300000-600000`` and ``--mesh-octree-depth`` should be increased to ``10-11`` in urban areas to recreate better buildings / roofs."
msgstr ""

#: ../../../tutorials.rst:27
#: a27a81fd6ffd486ca2f05fe69646b76a
msgid "Calibrating the Camera"
msgstr ""

#: ../../../tutorials.rst:29
#: cf97b5ad2ba140f88bf384c02a30c250
msgid "Camera calibration is a special challenge with commodity cameras. Temperature changes, vibrations, focus, and other factors can affect the derived parameters with substantial effects on resulting data. Automatic or self calibration is possible and desirable with drone flights, but depending on the flight pattern, automatic calibration may not remove all distortion from the resulting products. James and Robson (2014) in their paper `Mitigating systematic error in topographic models derived from UAV and ground‐based image networks <https://onlinelibrary.wiley.com/doi/full/10.1002/esp.3609>`_ address how to minimize the distortion from self-calibration."
msgstr ""

#: ../../../tutorials.rst:35
#: 40cb75662eba4e36b6c3efdd75431b71
msgid "*Bowling effect on point cloud over 13,000+ image dataset collected by World Bank Tanzania over the flood prone Msimbasi Basin, Dar es Salaam, Tanzania.*"
msgstr ""

#: ../../../tutorials.rst:37
#: 6ebe5d5afb3340bf90a2009a9111f821
msgid "To mitigate this effect, there are a few options but the simplest are as follows: fly two patterns separated by 20°, and rather than having a nadir (straight down pointing) camera, use one that tilts forward by 5°."
msgstr ""

#: ../../../tutorials.rst:45
#: db74d99b40aa4952a60b2e4cf7bb1ef3
msgid "As this approach to flying can be take longer than typical flights, a pilot or team can fly a small area using the above approach. OpenDroneMap will generate a calibration file called cameras.json that then can be imported to be used to calibrate another flight that is more efficiently flown."
msgstr ""

#: ../../../tutorials.rst:47
#: 526630b420ec44b0a0c13866269d2887
msgid "Alternatively, the following experimental method can be applied: fly with much lower overlap, but two *crossgrid* flights (sometimes called crosshatch) separated by 20° with a 5° forward facing camera."
msgstr ""

#: ../../../tutorials.rst:49
#: 3ae511a32e6947d7ae085a4f1de2f7f7
msgid "Crossgrid overlap percentages can be lower than parallel flights. To get good 3D results, you will require 68% overlap and sidelap for an equivalent 83% overlap and sidelap."
msgstr ""

#: ../../../tutorials.rst:50
#: 483b77a388c84386b94c19e0f2562522
msgid "To get good 2D and 2.5D (digital elevation model) results, you will require 42% overlap and sidelap for an equivalent 70% overlap and sidelap."
msgstr ""

#: ../../../tutorials.rst:56
#: df776679c8cf4097b85b0da0e0f4411c
msgid "Vertically separated flight lines also improve accuracy, but less so than a camera that is forward facing by 5°."
msgstr ""

#: ../../../tutorials.rst:62
#: b537c02fe3634f62bcff294e00d4d16b
msgid "From James and Robson (2014), `CC BY 4.0 <https://creativecommons.org/licenses/by/4.0>`_"
msgstr ""

#: ../../../tutorials.rst:66
#: f40b44f6f30d488ea908e57170e0acbd
msgid "Creating Digital Elevation Models"
msgstr ""

#: ../../../tutorials.rst:68
#: b4867123759d4fa28ea755c3d52adee9
msgid "By default ODM does not create DEMs. To create a digital terrain model, make sure to pass the ``--dtm`` flag. To create a digital surface model, be sure to pass the ``--dsm`` flag."
msgstr ""

#: ../../../tutorials.rst:74
#: 8670708d10e948c2a81962297f5f22f3
msgid "For DTM generation, a Simple Morphological Filter (smrf) is used to classify points in ground vs. non-ground and only the ground points are used. The ``smrf`` filter can be controlled via several parameters:"
msgstr ""

#: ../../../tutorials.rst:76
#: 1f352bbe0ddf4984bb5f8f8de3cdbbbe
msgid "``--smrf-scalar`` scaling value. Increase this parameter for terrains with lots of height variation."
msgstr ""

#: ../../../tutorials.rst:77
#: 094fbe49d38d459e950d471083464abf
msgid "``--smrf-slope`` slope parameter, which is a measure of \"slope tolerance\". Increase this parameter for terrains with lots of height variation. Should be set to something higher than 0.1 and not higher than 1.2."
msgstr ""

#: ../../../tutorials.rst:78
#: 364530ec6fa9450b92fabf65d6c9b6da
msgid "``--smrf-threshold`` elevation threshold. Set this parameter to the minimum height (in meters) that you expect non-ground objects to be."
msgstr ""

#: ../../../tutorials.rst:79
#: a80686f0f5d94d7fb7a023db4473f853
msgid "``--smrf-window`` window radius parameter (in meters) that corresponds to the size of the largest feature (building, trees, etc.) to be removed. Should be set to a value higher than 10."
msgstr ""

#: ../../../tutorials.rst:81
#: 5426c555e3ef4e409163e6ba60e9f257
msgid "Changing these options can affect the result of DTMs significantly. The best source to read to understand how the parameters affect the output is to read the original paper `An improved simple morphological filter for the terrain classification of airborne LIDAR data <https://www.researchgate.net/publication/258333806_An_Improved_Simple_Morphological_Filter_for_the_Terrain_Classification_of_Airborne_LIDAR_Data>`_ (PDF freely available)."
msgstr ""

#: ../../../tutorials.rst:83
#: d535fa2fd949447aad230dba6124d40d
msgid "Overall the ``--smrf-threshold`` option has the biggest impact on results."
msgstr ""

#: ../../../tutorials.rst:85
#: 734e36487b4f4063b1c4e56b0f3463e8
msgid "SMRF is good at avoiding Type I errors (small number of ground points mistakenly classified as non-ground) but only \"acceptable\" at avoiding Type II errors (large number non-ground points mistakenly classified as ground). This needs to be taken in consideration when generating DTMs that are meant to be used visually, since objects mistaken for ground look like artifacts in the final DTM."
msgstr ""

#: ../../../tutorials.rst:91
#: f1744b35184a4247811dc07a1c2b828e
msgid "Two other important parameters affect DEM generation:"
msgstr ""

#: ../../../tutorials.rst:93
#: 302822e5dd514203bf2f50f7457b9b5e
msgid "``--dem-resolution`` which sets the output resolution of the DEM raster (cm/pixel)"
msgstr ""

#: ../../../tutorials.rst:94
#: 292076c15137494e9172fa94da313132
msgid "``--dem-gapfill-steps`` which determines the number of progressive DEM layers to use. For urban scenes increasing this value to `4-5` can help produce better interpolation results in the areas that are left empty by the SMRF filter."
msgstr ""

#: ../../../tutorials.rst:96
#: 87d49644e3374c07a2011d3a307742e2
msgid "Example of how to generate a DTM::"
msgstr ""

#: ../../../tutorials.rst:102
#: 50501074905a4fc8b08b24ba132de8c5
msgid "Using Docker"
msgstr ""

#: ../../../tutorials.rst:104
#: 6e4131a5a3384ae285f37d221ae9810a
msgid "Since many users employ docker to deploy OpenDroneMap, it can be useful to understand some basic commands in order to interrogate the docker instances when things go wrong, or we are curious about what is happening. Docker is a containerized environment intended, among other things, to make it easier to deploy software independent of the local environment. In this way, it is similar to virtual machines."
msgstr ""

#: ../../../tutorials.rst:106
#: 49b5ab7e8c044080bd1d0aee1d2f2826
msgid "A few simple commands can make our docker experience much better."
msgstr ""

#: ../../../tutorials.rst:109
#: df53139cd5264dea8fceb65cdf4f63c5
msgid "Listing Docker Machines"
msgstr ""

#: ../../../tutorials.rst:111
#: 3c3c8828b27e4b67b8d05aa146ec54ec
msgid "We can start by listing available docker machines on the current machine we are running as follows:"
msgstr ""

#: ../../../tutorials.rst:120
#: 537c71956706401fb8e3c3124d44b653
msgid "If we want to see machines that may not be running but still exist, we can add the `-a` flag:"
msgstr ""

#: ../../../tutorials.rst:133
#: 5e8cd571a3c9482f91a6c1a43fae75e5
msgid "Accessing logs on the instance"
msgstr ""

#: ../../../tutorials.rst:135
#: bad3417f919e4a0f8f94fb1c105f24e1
msgid "Using either the `CONTAINER ID` or the name, we can access any logs available on the machine as follows:"
msgstr ""

#: ../../../tutorials.rst:141
#: b4fd6da1500a4e4fb5115c6406890e65
msgid "This is likely to be unwieldy large, but we can use a pipe `|` character and other tools to extract just what we need from the logs. For example we can move through the log slowly using the `more` command:"
msgstr ""

#: ../../../tutorials.rst:157
#: aa0b31cbf49b491fbd452fcf711a9d74
msgid "Pressing `Enter` or `Space`, arrow keys or `Page Up` or `Page Down` keys will now help us navigate through the logs. The lower case letter `Q` will let us escape back to the command line."
msgstr ""

#: ../../../tutorials.rst:159
#: 1ba3bd1e726a4536b0f2cca5b938d9f1
msgid "We can also extract just the end of the logs using the `tail` commmand as follows:"
msgstr ""

#: ../../../tutorials.rst:170
#: 3be85244a688441ea866aa743ddcb394
msgid "The value `-5` tells the tail command to give us just the last 5 lines of the logs."
msgstr ""

#: ../../../tutorials.rst:173
#: 596c3a847e2f453ea2b730c1a896cc90
msgid "Command line access to instances"
msgstr ""

#: ../../../tutorials.rst:175
#: af607c2d3f3a4fb6858de895a7812e15
msgid "Sometimes we need to go a little deeper in our exploration of the process for OpenDroneMap. For this, we can get direct command line access to the machines. For this, we can use `docker exec` to execute a `bash` command line shell in the machine of interest as follows:"
msgstr ""

#: ../../../tutorials.rst:182
#: da298a4efd4b4c1b9d61db283059f8dc
msgid "Now we are logged into our docker instance and can explore the machine."
msgstr ""

#: ../../../tutorials.rst:185
#: b46b370208e043909e244bbc723d11d3
msgid "Cleaning up after Docker"
msgstr ""

#: ../../../tutorials.rst:187
#: 9d63a1f16cbb41d1b04f8779235aae72
msgid "Docker has a lamentable use of space and by default does not clean up excess data and machines when processes are complete. This can be advantageous if we need to access a process that has since terminated, but carries the burden of using increasing amounts of storage over time. Maciej Łebkowski has an `excellent overview of how to manage excess disk usage in docker <https://lebkowski.name/docker-volumes/>`_."
msgstr ""

#: ../../../tutorials.rst:191
#: f96d9ce9d05d4f8881cd2e6a73a6dfa8
msgid "Using ODM from low-bandwidth location"
msgstr ""

#: ../../../tutorials.rst:194
#: a26912094ee74fe0b94e0d4e9bb63a68
msgid "What is this and who is it for?"
msgstr ""

#: ../../../tutorials.rst:196
#: 9c1aeead615c41d58afe5baaaa2e9365
msgid "Via `Ivan Gayton's repo <https://github.com/ivangayton/GDAL_scripts/>`_."
msgstr ""

#: ../../../tutorials.rst:198
#: b1fedebae1c644d49867e82d82dd7d32
msgid "`OpenDroneMap <https://www.opendronemap.org/>`__ can’t always be effectively set up locally—it takes a fairly powerful machine to process large datasets—so a cloud machine can sometimes be the answer for people in the field. However, bandwidth is a problem in many low-income settings. This constraint can’t be solved completely, but the following method does a reasonable job of reducing the bandwidth needed to process drone imagery datasets on the cloud from African locations."
msgstr ""

#: ../../../tutorials.rst:206
#: 27bb2ac3f43647178743b213b56d1e0a
msgid "Here we present a tricky but workable process to create an OpenDroneMap cloud machine (*not* CloudODM, mind you, just a cloud-based instance of ODM that you run from the command line) and use it to remotely process large photo sets. It requires familiarity with Unix command line use, ssh, a Digital Ocean account (Amazon AWS would work as well, possibly with slight differences in the setup), and a moderate level of general computer literacy. If you aren’t fairly computer-savvy and willing to fuss with a slightly tricky setup, `CloudODM <https://www.opendronemap.org/cloudodm/>`__ is what you should be looking at."
msgstr ""

#: ../../../tutorials.rst:217
#: cab2d4e8c9364938a4af6c5257cb2055
msgid "The whole process is mostly targeted at someone flying substantial missions in an African or similar location looking to process data ASAP while still in a field setting. Therefore it emphasizes a workflow intended to reduce bandwidth/data transfer, rather than just the simplest way of running ODM."
msgstr ""

#: ../../../tutorials.rst:224
#: d8d8597785b84f678cfaa8bcc310bfe2
msgid "Steps"
msgstr ""

#: ../../../tutorials.rst:227
#: 323632131a7a475996e0f4157f28adf3
msgid "Install"
msgstr ""

#: ../../../tutorials.rst:229
#: 92fc4a7110ec42388c4ab2def52c2977
msgid "Create a Digital Ocean droplet with at least 4GB of RAM. That’ll cost about $20/month. Less than 4GB of RAM and the install will probably fail. When we actually run the ODM process we’ll resize it to a much larger—and more expensive—cloud machine, but between runs you can downsize it between runs to the second-cheapest droplet which costs only $10/month (the cheapest droplet, at $5/month, comes with such a small drive that you can’t downsize back to it)."
msgstr ""

#: ../../../tutorials.rst:237
#: 548dc42ce8ee453f9a7d4b501e7f3522
msgid "Should be an Ubuntu 18.04 instance to ensure dependency compatibility"
msgstr ""

#: ../../../tutorials.rst:239
#: 7f25f7675fe04c2d8a4e7f52011f99e1
msgid "Create a user with sudo privileges. `Digital Ocean’s insanely good documentation <https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-18-04>`__ can help you figure this out. In our case we set up a user called ``odm``, so connecting to it is via the command ``ssh odm@xxx.xxx.xxx.xxx`` (where the x’s stand for the IPv4 address of your server). If you want to follow this example closely, *do* use the username ``odm``; then your install path will be ``/home/odm/ODM/`` and will match all of the examples in this document."
msgstr ""

#: ../../../tutorials.rst:248
#: 814ee561aa4148d0bd7ffc94055102a2
msgid "Go ahead and execute ``sudo apt update`` and ``sudo apt upgrade`` to ensure your server isn’t dangerously without updates. Make sure to stay with Ubuntu 18.04."
msgstr ""

#: ../../../tutorials.rst:252
#: 8893bbe316534e44935a919da6029759
msgid "Download and install ODM on it from the `ODM Github <https://github.com/OpenDroneMap/ODM>`__ (regular, not WebODM) with the following commands:"
msgstr ""

#: ../../../tutorials.rst:262
#: ba7617c6598547498e17397d734a6dfe
msgid "If you do this from the default home folder of your user (i.e. ``odm``) the path to the install will be ``/home/odm/ODM`` (abbreviated as ``~/ODM/``)."
msgstr ""

#: ../../../tutorials.rst:265
#: 305d825d2b5d4c69aef06fcd95f711ea
msgid "There are some environmental variables that need to be set. Open the ~/.bashrc file on your machine and add the following 3 lines at the end (From `the ODM github <https://github.com/OpenDroneMap/ODM>`__). The file can be opened with ``nano ~/.bashrc`` (or whatever text editor you use in lieu of nano). Be sure to replace ``/home/odm/`` with the correct path to the location where you extracted OpenDroneMap if you didn’t do everything exactly as in our example (for example if you used a different username in your server setup):"
msgstr ""

#: ../../../tutorials.rst:280
#: 15cee43639104a5da7ef02613ebdf3da
msgid "Note that the ODM github readme contains a slight error, the install directory name will be ODM, not OpenDroneMap (you’ll see this if you compare the above instructions to the ones on the ODM GitHub)."
msgstr ""

#: ../../../tutorials.rst:284
#: 9dc7c9d9047c45bea929642b5110b2c5
msgid "In order to prevent a crash wherein the split-merge process fails to locate its own executable, we add the following lines to ``~/.bashrc`` (adjust paths if you’ve set things up differently from our example):"
msgstr ""

#: ../../../tutorials.rst:294
#: 10a2fdc7efb74df0acc55d38fe9514c6
msgid "Now you’ll need a second cloud hard drive (a “Volume” in Digital Ocean jargon) big enough to manage your project. Rule of thumb seems to be 10 times the size of your raw image set; we’ve got a 100GB image set and set up a 1000GB volume (once the run is done you should be able to get rid of most of this expensive drive capacity, but it’s needed to complete the process). Set up the volume, attach it to your droplet, and `configure its mount point <https://www.digitalocean.com/docs/volumes/how-to/mount/>`__ (in this example we’re setting it to ``/mnt/odmdata/``)."
msgstr ""

#: ../../../tutorials.rst:305
#: 20f755d7f03341529e48b584e1b0e55e
msgid "Prep data and project"
msgstr ""

#: ../../../tutorials.rst:307
#: cef334da8d1d41d4ba595fdfcba1f97b
msgid "Now push your images onto the server. You can use `Secure Copy (scp) <https://en.wikipedia.org/wiki/Secure_copy>`__ like so: ``scp -r /path/to/my/imagefolder odm@xxx.xxx.xxx.xxx:/mnt/odmdata/``."
msgstr ""

#: ../../../tutorials.rst:311
#: caec6177a1f049d78ab535505d62b1c9
msgid "This pushes the entire folder full of images (that’s what the ``-r`` option does, “recursive”) into the remote location (in our example, into the volume we attached to the cloud machine at ``/mnt/odmdata/``."
msgstr ""

#: ../../../tutorials.rst:315
#: eb7294a6609b4efdb3cd3119c93f736b
msgid "This will take some bandwidth. No way around the size of the files.\\ `1 <#footnote1>`__, \\ `2 <#footnote2>`__\\"
msgstr ""

#: ../../../tutorials.rst:319
#: 1f8557711eb34544ba19af21e5684d3a
msgid "Directory structure"
msgstr ""

#: ../../../tutorials.rst:321
#: 381bc53afeb24707a36c6641acff96d8
msgid "ODM requires the directories on the machine to be set up just so. The critical bits are the install folder (if you installed as above, it’s ``/home/odm/ODM/``) and the project folder (i.e. ``/mnt/odmdata/myproject/``)"
msgstr ""

#: ../../../tutorials.rst:326
#: ff4d530d45e743fcba32ecf322e1201a
msgid "ODM’s settings.yaml file specifies a single parent directory containing all projects. This is what goes in the project path line of the settings.yaml file (slightly confusingly, this is actually the *parent* directory of the individual project directories, which are specified by the project name parameter when calling ODM). Edit settings.yaml and set the project_path parameter to (as per our example setup) ``/mnt/odmdata/``, which in this case points to the Volume we created. Individual project directories are created within that."
msgstr ""

#: ../../../tutorials.rst:335
#: 1503b3f631e04941b5738d4d544faebf
msgid "Individual project directories, i.e. ``/mnt/odmdata/myproject/`` contain the gcp_list.txt file, the image_groups.txt file, and the images folder for each project``\\`"
msgstr ""

#: ../../../tutorials.rst:338
#: bc6b6d2ec2774bd9819ac092ac6e620b
msgid "The images folder, i.e. ``/mnt/odmdata/myproject/images/`` contains all of the images. If you set it up like this, the images don’t get re-copied because they’re already in the directory that ODM wants them in."
msgstr ""

#: ../../../tutorials.rst:342
#: 6f7fb819b1de4edb9ee6a1a381ea5d91
msgid "Modify settings.yaml to specify the parent directory of the project folder (in this case the Volume we created, ``/mnt/odmdata/``). Make sure the images are in the correct spot, i.e. ``/mnt/odmdata/myproject/images`` and the other ancillary files (gcp_list.txt and image_groups.txt) are in the root folder ``/mnt/odmdata/myproject/``"
msgstr ""

#: ../../../tutorials.rst:348
#: 19d1b994192e430783ec441057978515
msgid "if you have the images in separate folders for individual AOI blocks or flights (which you will if your flight management was organized), you can create an image_groups.txt file with the incantations ``for i in *; do cd $i; for j in *; do echo \"$j $i\" >> ../$i.txt; done; cd ../; done;`` and ``cd ../``, ``for i in myproject/*.txt; do cat $i >> image_groups.txt; done;``. That should create a file with the correct structure: a list of all image files and a “group name” after each one (which in this case will simply be the name of the folder it came from). Then move all of the image files into a single directory called images in the project root dir (so ``/mnt/odmdata/myproject/images/``). The image_groups.txt file will allow ODM to keep track of which images belong to the same batch, even though they’re all in a single directory."
msgstr ""

#: ../../../tutorials.rst:364
#: cc0ff87ac21745aa8ee81ec4fc1ed3e9
msgid "Resize droplet, pull pin, run away"
msgstr ""

#: ../../../tutorials.rst:366
#: fe544c97b5f54e388dd5647cd8d45016
msgid "Shut down and resize your machine to an appropriately monstrous number of CPUs and amount of memory. I use the memory-optimized machine with 24 dedicated vCPUs and 192GB of RAM (which costs about $1.60/hr—which adds up fast, it’s over $1000/month). Restart, and get to work quickly so as not to waste expensive big-droplet time."
msgstr ""

#: ../../../tutorials.rst:371
#: b2ce2ab6d9f04668a30f9d23cc47e27f
msgid "Launch the ODM process via ssh using nohup (so that if you’re cut off, processing will continue)"
msgstr ""

#: ../../../tutorials.rst:374
#: ce20de89099c4629a2a6b7b9f452e715
msgid "Alternately you can use GNU screen to launch the process from a screen session which won’t stop if your connection is interrupted; launch ``screen``, and use ``<ctrl> a <ctrl> d`` to detach, ``screen -r`` to re-attach. But using screen won’t get you a log file of all of the console output unless you do something specific to capture that, while nohup gives you a file with all of the console output, including error messages, for free."
msgstr ""

#: ../../../tutorials.rst:381
#: 3c35097b84c648e7a3454804588d8411
msgid "Note: as of 2020-03 the normal incantation ``python run.py -i /path/to/image/folder project_name`` seems *not* to work; the ``-i`` or ``--image`` parameter causes a weird error. So we drop the -i parameter, and rely on the project directory line in the settings.yaml file to direct ODM to the right place. Now using (including a split-merge):"
msgstr ""

#: ../../../tutorials.rst:392
#: dc1939fdcad6409a9242b537beec7b64
msgid "This points ODM at the folder (in this example) ``/mnt/odmdata/myproject/``. Provided the image_groups.txt and gcp_list.txt are in this folder, the images are in ``/mnt/odmdata/myproject/images/``, and the project path in settings.yaml is ``/mnt/odmdata/`` it will not waste time and space copying images."
msgstr ""

#: ../../../tutorials.rst:399
#: c99e7f74b20d43b9ab8995c42a0050f6
msgid "Note that this assumes you have an image_groups.txt file. If not, this ``-split-overlap 0`` will probably fuck things up, and the ``--split 1`` is literally a random number that will be ignored after the image_groups.txt file is loaded (I think it normally controls how many groups it splits a set of images into, but in our case we’re assuming the images are already grouped sensibly). If you don’t have a large dataset (>1000 images), omit the ``--split`` and ``--split-overlap`` options."
msgstr ""

#: ../../../tutorials.rst:408
#: 5d4a1c95f8cb4b8faea6418a8427c318
msgid "Follow the progress using tail (so that you’ll know when it’s done)"
msgstr ""

#: ../../../tutorials.rst:414
#: d47d6ae7516c4f09b87480cbde8787f4
msgid "You may want to keep an eye on htop (to get a sense of the resource usage so that in future you can only spin up a machine as large as necessary)"
msgstr ""

#: ../../../tutorials.rst:419
#: 4622af635b084049888da4994e2577cd
msgid "After it finishes (assuming you survive that long)"
msgstr ""

#: ../../../tutorials.rst:421
#: 737dba0bee8d4b0b8ea300971cf451f7
msgid "As soon as processing is done, shut down the machine and resize it back down to the inexpensive minimum capacity."
msgstr ""

#: ../../../tutorials.rst:423
#: ff4a20334b164e7fb3f66717203e1046
msgid "Start the machine back up, and log in via ssh."
msgstr ""

#: ../../../tutorials.rst:424
#: 2fe88a5e5c7a4cf9a6a0d4cf7eeeb75e
msgid "If you want to save download bandwidth, you can compress the orthophoto using GDAL. Don’t add overviews, do that on your local machine to avoid making the file bigger before downloading it."
msgstr ""

#: ../../../tutorials.rst:432
#: cf523f232f6642deafbb485c5b243486
msgid "Download using scp: ``scp odm@xxx.xxx.xxx.xxx:/mnt/odmdata/myproject/odm_orthophoto/odm_orthophoto.tif`` (or grab the compressed version you created in the last step)"
msgstr ""

#: ../../../tutorials.rst:436
#: 45f3eb83df8249a380cc13bb16e198c0
msgid "Once you get the file on your local computer, you can use QGIS to add overviews (“pyramids”) or use the GDAL command ``gdaladdo -r average /path/to/image.tif 2 4 8 16 32 64 128 256 512 1024``."
msgstr ""

#: ../../../tutorials.rst:440
#: 2611b4d17c384fee8d1d9905c7a52525
msgid "You can archive the odm_texturing, odm_georeferencing, and odm-dem folders using tar to make them easier to download in one piece (and maybe smaller)."
msgstr ""

#: ../../../tutorials.rst:450
#: 196099e256ee41d7938031c930bd326d
msgid "`Learn to edit <https://github.com/opendronemap/docs#how-to-make-your-first-contribution>`_ and help improve `this page <https://github.com/OpenDroneMap/docs/blob/publish/source/tutorials.rst>`_!"
msgstr ""
