diff --git a/.tx/config b/.tx/config index 15bb4b332d..767900c212 100644 --- a/.tx/config +++ b/.tx/config @@ -73,14 +73,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_debug] -file_filter = source/locale//LC_MESSAGES/arguments/debug.po -source_file = source/locale/pot/arguments/debug.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_dem-decimation] file_filter = source/locale//LC_MESSAGES/arguments/dem-decimation.po source_file = source/locale/pot/arguments/dem-decimation.pot @@ -113,14 +105,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_depthmap-resolution] -file_filter = source/locale//LC_MESSAGES/arguments/depthmap-resolution.po -source_file = source/locale/pot/arguments/depthmap-resolution.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_dsm] file_filter = source/locale//LC_MESSAGES/arguments/dsm.po source_file = source/locale/pot/arguments/dsm.pot @@ -217,14 +201,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_matcher-distance] -file_filter = source/locale//LC_MESSAGES/arguments/matcher-distance.po -source_file = source/locale/pot/arguments/matcher-distance.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_matcher-neighbors] file_filter = source/locale//LC_MESSAGES/arguments/matcher-neighbors.po source_file = source/locale/pot/arguments/matcher-neighbors.pot @@ -377,14 +353,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_pc-geometric] -file_filter = source/locale//LC_MESSAGES/arguments/pc-geometric.po -source_file = source/locale/pot/arguments/pc-geometric.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_pc-las] file_filter = source/locale//LC_MESSAGES/arguments/pc-las.po source_file = source/locale/pot/arguments/pc-las.pot @@ -417,14 +385,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_pc-tile] -file_filter = source/locale//LC_MESSAGES/arguments/pc-tile.po -source_file = source/locale/pot/arguments/pc-tile.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_primary-band] file_filter = source/locale//LC_MESSAGES/arguments/primary-band.po source_file = source/locale/pot/arguments/primary-band.pot @@ -473,14 +433,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_resize-to] -file_filter = source/locale//LC_MESSAGES/arguments/resize-to.po -source_file = source/locale/pot/arguments/resize-to.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_skip-3dmodel] file_filter = source/locale//LC_MESSAGES/arguments/skip-3dmodel.po source_file = source/locale/pot/arguments/skip-3dmodel.pot @@ -569,14 +521,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_texturing-data-term] -file_filter = source/locale//LC_MESSAGES/arguments/texturing-data-term.po -source_file = source/locale/pot/arguments/texturing-data-term.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_texturing-keep-unseen-faces] file_filter = source/locale//LC_MESSAGES/arguments/texturing-keep-unseen-faces.po source_file = source/locale/pot/arguments/texturing-keep-unseen-faces.pot @@ -585,14 +529,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_texturing-outlier-removal-type] -file_filter = source/locale//LC_MESSAGES/arguments/texturing-outlier-removal-type.po -source_file = source/locale/pot/arguments/texturing-outlier-removal-type.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_texturing-skip-global-seam-leveling] file_filter = source/locale//LC_MESSAGES/arguments/texturing-skip-global-seam-leveling.po source_file = source/locale/pot/arguments/texturing-skip-global-seam-leveling.pot @@ -601,22 +537,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_texturing-skip-local-seam-leveling] -file_filter = source/locale//LC_MESSAGES/arguments/texturing-skip-local-seam-leveling.po -source_file = source/locale/pot/arguments/texturing-skip-local-seam-leveling.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - -[o:americanredcross:p:opendronemap_docs:r:arguments_texturing-tone-mapping] -file_filter = source/locale//LC_MESSAGES/arguments/texturing-tone-mapping.po -source_file = source/locale/pot/arguments/texturing-tone-mapping.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_tiles] file_filter = source/locale//LC_MESSAGES/arguments/tiles.po source_file = source/locale/pot/arguments/tiles.pot @@ -625,14 +545,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_time] -file_filter = source/locale//LC_MESSAGES/arguments/time.po -source_file = source/locale/pot/arguments/time.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_use-3dmesh] file_filter = source/locale//LC_MESSAGES/arguments/use-3dmesh.po source_file = source/locale/pot/arguments/use-3dmesh.pot @@ -665,14 +577,6 @@ type = PO replace_edited_strings = false keep_translations = false -[o:americanredcross:p:opendronemap_docs:r:arguments_verbose] -file_filter = source/locale//LC_MESSAGES/arguments/verbose.po -source_file = source/locale/pot/arguments/verbose.pot -source_lang = en -type = PO -replace_edited_strings = false -keep_translations = false - [o:americanredcross:p:opendronemap_docs:r:arguments_version] file_filter = source/locale//LC_MESSAGES/arguments/version.po source_file = source/locale/pot/arguments/version.pot diff --git a/Makefile b/Makefile index fe3196a67e..b095dd2d0a 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ help: .PHONY: help Makefile # this is for testing, it will only build the EN version of the docs -livehtml: +livehtml: autogenerate sphinx-autobuild --open-browser --host 0.0.0.0 -b dirhtml "$(SOURCEDIR)" "$(BUILDDIR)/html" # this will update `arguments.rst` to match arguments in the ODM code @@ -24,6 +24,9 @@ livehtml: # all user contributed content from files in `source/arguments_edit/` autogenerate: python scripts/extract_odm_strings.py https://raw.githubusercontent.com/OpenDroneMap/ODM/master/opendm/config.py + @$(SPHINXBUILD) -b gettext "$(SOURCEDIR)" "source/locale/pot" + sphinx-intl update --pot-dir "source/locale/pot" --language ar,cs,es,fil,fr,id,sw,te,zh + @$(MAKE) cleanobsolete # update main EN pot files that serve as the source for translation process updatepot: @@ -31,7 +34,20 @@ updatepot: # update the po files for each target language from the EN pot files updatelangpo: - sphinx-intl update --pot-dir "source/locale/pot" --language cs,es,fil,fr,id,sw,te,zh + sphinx-intl update --pot-dir "source/locale/pot" --language ar,cs,es,fil,fr,id,sw,te,zh + @$(MAKE) cleanobsolete + +# remove obsolete entries from all .po files +cleanobsolete: + @echo "Removing obsolete entries from .po files..." + @for lang in ar cs es fil fr id sw te zh; do \ + for po in source/locale/$$lang/LC_MESSAGES/*.po source/locale/$$lang/LC_MESSAGES/*/*.po; do \ + if [ -f "$$po" ]; then \ + msgattrib --no-obsolete --no-fuzzy -o "$$po.tmp" "$$po" 2>/dev/null && mv "$$po.tmp" "$$po" || rm -f "$$po.tmp"; \ + fi; \ + done; \ + done + @echo "Done cleaning obsolete entries." # push new and changed strings to Transifex pushlang: @@ -39,7 +55,7 @@ pushlang: # push translated strings from Transifex pulllang: - tx pull --language "cs,es,fil,fr,id,sw,te,zh" + tx pull --language "ar,cs,es,fil,fr,id,sw,te,zh" build: @$(SPHINXBUILD) -b dirhtml "$(SOURCEDIR)" "$(BUILDDIR)/html" -nW diff --git a/scripts/extract_odm_strings.py b/scripts/extract_odm_strings.py index e9cddc41fc..cd45ec3cd7 100644 --- a/scripts/extract_odm_strings.py +++ b/scripts/extract_odm_strings.py @@ -1,6 +1,11 @@ #!/usr/bin/python3 -import argparse, os, urllib.request, ast, sys +import argparse +import os +import urllib.request +import ast +import sys +import glob from io import StringIO from pathlib import Path from string import Template @@ -16,6 +21,12 @@ tmplfile = os.path.join(os.path.dirname(__file__), "arguments.template.rst") argstmplfile = os.path.join(os.path.dirname(__file__), "arguments.arg.template.rst") argsoutdir = os.path.join(os.path.dirname(__file__), "..", "source", "arguments") +argspotdir = os.path.join(os.path.dirname(__file__), "..", "source", "locale", "pot", "arguments") +localedir = os.path.join(os.path.dirname(__file__), "..", "source", "locale") +txconfigfile = os.path.join(os.path.dirname(__file__), "..", ".tx", "config") + +# List of supported languages (should match Makefile) +LANGUAGES = ['ar', 'cs', 'es', 'fil', 'fr', 'id', 'sw', 'te', 'zh'] strings = [] print("Fetching %s ..." % url) @@ -91,6 +102,37 @@ def ODM_ERROR(s): keys = list(options.keys()) keys.sort(key=lambda a: a.replace("-", "")) + # Clean up the output directory - remove all existing .rst files + print("Cleaning up %s ..." % argsoutdir) + for old_file in glob.glob(os.path.join(argsoutdir, "*.rst")): + try: + os.remove(old_file) + print("Removed %s" % old_file) + except (OSError, PermissionError) as e: + print("Warning: Could not remove %s: %s" % (old_file, e)) + + # Clean up old .pot files for deprecated arguments + if os.path.isdir(argspotdir): + print("Cleaning up %s ..." % argspotdir) + for old_pot in glob.glob(os.path.join(argspotdir, "*.pot")): + try: + os.remove(old_pot) + print("Removed %s" % old_pot) + except (OSError, PermissionError) as e: + print("Warning: Could not remove %s: %s" % (old_pot, e)) + + # Clean up old .po files for deprecated arguments in all languages + for lang in LANGUAGES: + argspodir = os.path.join(localedir, lang, "LC_MESSAGES", "arguments") + if os.path.isdir(argspodir): + print("Cleaning up %s ..." % argspodir) + for old_po in glob.glob(os.path.join(argspodir, "*.po")): + try: + os.remove(old_po) + print("Removed %s" % old_po) + except (OSError, PermissionError) as e: + print("Warning: Could not remove %s: %s" % (old_po, e)) + with open(argstmplfile) as f: argstmpl = Template(f.read()) @@ -150,6 +192,63 @@ def get_opt_choices(opt): print("Wrote %s" % outfile) + # Clean up orphaned files in arguments_edit/ directory + arguments_edit_dir = os.path.join(argsoutdir + "_edit") + if os.path.isdir(arguments_edit_dir): + print("Cleaning up orphaned files in %s ..." % arguments_edit_dir) + current_opt_names = set(get_opt_name(opt) for opt in keys) + for edit_file in glob.glob(os.path.join(arguments_edit_dir, "*.rst")): + edit_opt_name = os.path.splitext(os.path.basename(edit_file))[0] + if edit_opt_name not in current_opt_names: + try: + os.remove(edit_file) + print("Removed orphaned %s" % edit_file) + except (OSError, PermissionError) as e: + print("Warning: Could not remove %s: %s" % (edit_file, e)) + + # Update .tx/config to remove deprecated options + if os.path.isfile(txconfigfile): + print("Updating %s ..." % txconfigfile) + with open(txconfigfile, 'r') as f: + config_lines = f.readlines() + + # Get list of current options + current_opts = set(get_opt_name(opt) for opt in keys) + + # Parse and filter .tx/config + new_config_lines = [] + skip_section = False + i = 0 + while i < len(config_lines): + line = config_lines[i] + + # Check if this is an arguments section header + if line.startswith('[o:americanredcross:p:opendronemap_docs:r:arguments_'): + # Extract option name + section_name = line.strip()[1:-1] # Remove [ and ] + opt_name = section_name.split(':')[-1].replace('arguments_', '') + + # Check if this option still exists + if opt_name not in current_opts: + print("Removing deprecated section: %s" % opt_name) + skip_section = True + # Skip this section header and all lines until next section or EOF + i += 1 + while i < len(config_lines) and not config_lines[i].startswith('['): + i += 1 + continue + else: + skip_section = False + + if not skip_section: + new_config_lines.append(line) + + i += 1 + + # Write updated config + with open(txconfigfile, 'w') as f: + f.writelines(new_config_lines) + print("Updated %s" % txconfigfile) else: print("No strings found") diff --git a/source/arguments/debug.rst b/source/arguments/debug.rst deleted file mode 100644 index 593d58b981..0000000000 --- a/source/arguments/debug.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _debug: - -debug -````` - - - -Print debug messages. Default: ``False`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/depthmap-resolution.rst b/source/arguments/depthmap-resolution.rst deleted file mode 100644 index 144b40d9b7..0000000000 --- a/source/arguments/depthmap-resolution.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _depthmap-resolution: - -depthmap-resolution -``````````````````` - -**Options:** ** - -Controls the density of the point cloud by setting the resolution of the depthmap images. Higher values take longer to compute but produce denser point clouds. Overrides the value calculated by --pc-quality.Default: ``640`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/pc-geometric.rst b/source/arguments/pc-geometric.rst deleted file mode 100644 index 9ca10aa3bb..0000000000 --- a/source/arguments/pc-geometric.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _pc-geometric: - -pc-geometric -```````````` - - - -Improve the accuracy of the point cloud by computing geometrically consistent depthmaps. This increases processing time, but can improve results in urban scenes. Default: ``False`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/pc-tile.rst b/source/arguments/pc-tile.rst deleted file mode 100644 index ed5421c84a..0000000000 --- a/source/arguments/pc-tile.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _pc-tile: - -pc-tile -``````` - - - -Reduce the memory usage needed for depthmap fusion by splitting large scenes into tiles. Turn this on if your machine doesn't have much RAM and/or you've set --pc-quality to high or ultra. Experimental. Default: ``False`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/resize-to.rst b/source/arguments/resize-to.rst deleted file mode 100644 index a6128d858d..0000000000 --- a/source/arguments/resize-to.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _resize-to: - -resize-to -````````` - -**Options:** ** - -Legacy option (use --feature-quality instead). Resizes images by the largest side for feature extraction purposes only. Set to -1 to disable. This does not affect the final orthophoto resolution quality and will not resize the original images. Default: ``2048`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/texturing-data-term.rst b/source/arguments/texturing-data-term.rst deleted file mode 100644 index 695804019b..0000000000 --- a/source/arguments/texturing-data-term.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _texturing-data-term: - -texturing-data-term -``````````````````` - -**Options:** *gmi | area* - -When texturing the 3D mesh, for each triangle, choose to prioritize images with sharp features (gmi) or those that cover the largest area (area). Default: ``gmi`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/texturing-outlier-removal-type.rst b/source/arguments/texturing-outlier-removal-type.rst deleted file mode 100644 index 3fd5f5b1a6..0000000000 --- a/source/arguments/texturing-outlier-removal-type.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _texturing-outlier-removal-type: - -texturing-outlier-removal-type -`````````````````````````````` - -**Options:** *none | gauss_clamping | gauss_damping* - -Type of photometric outlier removal method. . Default: ``gauss_clamping`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/texturing-skip-local-seam-leveling.rst b/source/arguments/texturing-skip-local-seam-leveling.rst deleted file mode 100644 index 9ba97b685b..0000000000 --- a/source/arguments/texturing-skip-local-seam-leveling.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _texturing-skip-local-seam-leveling: - -texturing-skip-local-seam-leveling -`````````````````````````````````` - - - -Skip the blending of colors near seams. Default: ``False`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/texturing-tone-mapping.rst b/source/arguments/texturing-tone-mapping.rst deleted file mode 100644 index bfba4df954..0000000000 --- a/source/arguments/texturing-tone-mapping.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _texturing-tone-mapping: - -texturing-tone-mapping -`````````````````````` - -**Options:** *none | gamma* - -Turn on gamma tone mapping or none for no tone mapping. Can be one of ['none', 'gamma']. Default: ``none`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/time.rst b/source/arguments/time.rst deleted file mode 100644 index 5799356f0a..0000000000 --- a/source/arguments/time.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _time: - -time -```` - - - -Generates a benchmark file with runtime info. Default: ``False`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments/verbose.rst b/source/arguments/verbose.rst deleted file mode 100644 index 9083fe5161..0000000000 --- a/source/arguments/verbose.rst +++ /dev/null @@ -1,18 +0,0 @@ -.. - AUTO-GENERATED by extract_odm_strings.py! DO NOT EDIT! - If you want to add more details to a command, edit a - .rst file in arguments_edit/.rst - -.. _verbose: - -verbose -``````` - - - -Print additional messages to the console. Default: ``False`` - - - - -`Learn to edit `_ and help improve `this page `_! diff --git a/source/arguments_edit/debug.rst b/source/arguments_edit/debug.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/debug.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/depthmap-resolution.rst b/source/arguments_edit/depthmap-resolution.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/depthmap-resolution.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/pc-geometric.rst b/source/arguments_edit/pc-geometric.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/pc-geometric.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/pc-tile.rst b/source/arguments_edit/pc-tile.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/pc-tile.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/resize-to.rst b/source/arguments_edit/resize-to.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/resize-to.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/texturing-data-term.rst b/source/arguments_edit/texturing-data-term.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/texturing-data-term.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/texturing-outlier-removal-type.rst b/source/arguments_edit/texturing-outlier-removal-type.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/texturing-outlier-removal-type.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/texturing-skip-local-seam-leveling.rst b/source/arguments_edit/texturing-skip-local-seam-leveling.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/texturing-skip-local-seam-leveling.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/texturing-tone-mapping.rst b/source/arguments_edit/texturing-tone-mapping.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/texturing-tone-mapping.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/time.rst b/source/arguments_edit/time.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/time.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/arguments_edit/verbose.rst b/source/arguments_edit/verbose.rst deleted file mode 100644 index 8b13789179..0000000000 --- a/source/arguments_edit/verbose.rst +++ /dev/null @@ -1 +0,0 @@ - diff --git a/source/flowchart.rst b/source/flowchart.rst index 34d13c5c46..7b4988e6c2 100644 --- a/source/flowchart.rst +++ b/source/flowchart.rst @@ -141,15 +141,13 @@ Flowchart with options gltf:::options texturing-keep-unseen-faces:::options texturing-single-material:::options - texturing-skip-global-seam-leveling:::options use-3dmesh:::options end - gltf ~~~ texturing-keep-unseen-faces ~~~ texturing-single-material ~~~ texturing-skip-global-seam-leveling ~~~ use-3dmesh + gltf ~~~ texturing-keep-unseen-faces ~~~ texturing-single-material ~~~ use-3dmesh click gltf "../arguments/gltf/" click texturing-keep-unseen-faces "../arguments/texturing-keep-unseen-faces/" click texturing-single-material "../arguments/texturing-single-material/" - click texturing-skip-global-seam-leveling "../arguments/texturing-skip-global-seam-leveling/" click use-3dmesh "../arguments/use-3dmesh/" subgraph Odm-georeferencing["`**Odm-georeferencing**`"] diff --git a/source/locale/ar/LC_MESSAGES/arguments.po b/source/locale/ar/LC_MESSAGES/arguments.po index e53c2d38e1..f9425546b6 100644 --- a/source/locale/ar/LC_MESSAGES/arguments.po +++ b/source/locale/ar/LC_MESSAGES/arguments.po @@ -11,980 +11,1022 @@ msgid "" msgstr "" "Project-Id-Version: OpenDroneMap 2.6.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-12-28 10:32-0500\n" +"POT-Creation-Date: 2026-02-18 11:05+0100\n" "PO-Revision-Date: 2020-07-21 21:10+0000\n" "Last-Translator: Khadija Abdulla , 2020\n" "Language: ar\n" -"Language-Team: Arabic " -"(https://www.transifex.com/americanredcross/teams/111882/ar/)\n" -"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : " -"n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5\n" +"Language-Team: Arabic (https://www.transifex.com/americanredcross/teams/" +"111882/ar/)\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " +"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.18.0\n" #: ../../arguments.rst:9 msgid "Options and Flags" msgstr "الخيارات والإعلام" #: ../../arguments.rst:12 -msgid ":ref:`auto-boundary`" +msgid ":ref:`3d-tiles<3d-tiles>`" msgstr "" #: ../../arguments.rst:12 -msgid "" -"Automatically set a boundary using camera shot locations to limit the " -"area of the reconstruction. This can help remove far away background " -"artifacts (sky, background landscapes, etc.). See also --boundary. " -"Default: ``False``" +msgid "Generate OGC 3D Tiles outputs. Default: ``False``" msgstr "" #: ../../arguments.rst:15 -msgid ":ref:`boundary` " +msgid ":ref:`align` " msgstr "" #: ../../arguments.rst:15 msgid "" -"GeoJSON polygon limiting the area of the reconstruction. Can be specified" -" either as path to a GeoJSON file or as a JSON string representing the " -"contents of a GeoJSON file. Default: ``" +"Path to a GeoTIFF DEM or a LAS/LAZ point cloud that the reconstruction " +"outputs should be automatically aligned to. Experimental. Default: ``None``" msgstr "" #: ../../arguments.rst:18 -msgid ":ref:`build-overviews`" +msgid ":ref:`auto-boundary`" msgstr "" #: ../../arguments.rst:18 msgid "" -"Build orthophoto overviews for faster display in programs such as QGIS. " -"Default: ``False``" +"Automatically set a boundary using camera shot locations to limit the area " +"of the reconstruction. This can help remove far away background artifacts " +"(sky, background landscapes, etc.). See also --boundary. Default: ``False``" msgstr "" #: ../../arguments.rst:21 -msgid "" -":ref:`camera-lens` auto | perspective | brown | fisheye |" -" spherical" +msgid ":ref:`auto-boundary-distance` " msgstr "" #: ../../arguments.rst:21 msgid "" -"Set a camera projection type. Manually setting a value can help improve " -"geometric undistortion. By default the application tries to determine a " -"lens type from the images metadata. . Default: ``auto``" +"Specify the distance between camera shot locations and the outer edge of the " +"boundary when computing the boundary with --auto-boundary. Set to 0 to " +"automatically choose a value. Default: ``0``" msgstr "" #: ../../arguments.rst:24 -msgid ":ref:`cameras` " +msgid ":ref:`bg-removal`" msgstr "" #: ../../arguments.rst:24 msgid "" -"Use the camera parameters computed from another dataset instead of " -"calculating them. Can be specified either as path to a cameras.json file " -"or as a JSON string representing the contents of a cameras.json file. " -"Default: ``" +"Automatically compute image masks using AI to remove the background. " +"Experimental. Default: ``False``" msgstr "" #: ../../arguments.rst:27 -msgid ":ref:`cog`" +msgid ":ref:`boundary` " msgstr "" #: ../../arguments.rst:27 msgid "" -"Create Cloud-Optimized GeoTIFFs instead of normal GeoTIFFs. Default: " -"``False``" +"GeoJSON polygon limiting the area of the reconstruction. Can be specified " +"either as path to a GeoJSON file or as a JSON string representing the " +"contents of a GeoJSON file. Default: ``" msgstr "" #: ../../arguments.rst:30 -msgid ":ref:`copy-to` " +msgid ":ref:`build-overviews`" msgstr "" #: ../../arguments.rst:30 -msgid "Copy output results to this folder after processing." +msgid "" +"Build orthophoto overviews for faster display in programs such as QGIS. " +"Default: ``False``" msgstr "" #: ../../arguments.rst:33 -msgid ":ref:`crop` " +msgid "" +":ref:`camera-lens` auto | perspective | brown | fisheye | " +"fisheye_opencv | spherical | equirectangular | dual" msgstr "" #: ../../arguments.rst:33 msgid "" -"Automatically crop image outputs by creating a smooth buffer around the " -"dataset boundaries, shrinked by N meters. Use 0 to disable cropping. " -"Default: ``3``" +"Set a camera projection type. Manually setting a value can help improve " +"geometric undistortion. By default the application tries to determine a lens " +"type from the images metadata. . Default: ``auto``" msgstr "" #: ../../arguments.rst:36 -msgid ":ref:`debug`" +msgid ":ref:`cameras` " msgstr "" #: ../../arguments.rst:36 -msgid "Print debug messages. Default: ``False``" +msgid "" +"Use the camera parameters computed from another dataset instead of " +"calculating them. Can be specified either as path to a cameras.json file or " +"as a JSON string representing the contents of a cameras.json file. Default: " +"``" msgstr "" #: ../../arguments.rst:39 -msgid ":ref:`dem-decimation` " +msgid ":ref:`cog`" msgstr "" #: ../../arguments.rst:39 -#, python-format msgid "" -"Decimate the points before generating the DEM. 1 is no decimation (full " -"quality). 100 decimates ~99%% of the points. Useful for speeding up " -"generation of DEM results in very large datasets. Default: ``1``" +"Create Cloud-Optimized GeoTIFFs instead of normal GeoTIFFs. Default: " +"``False``" msgstr "" #: ../../arguments.rst:42 -msgid ":ref:`dem-euclidean-map`" +msgid ":ref:`copy-to` " msgstr "" #: ../../arguments.rst:42 -msgid "" -"Computes an euclidean raster map for each DEM. The map reports the " -"distance from each cell to the nearest NODATA value (before any hole " -"filling takes place). This can be useful to isolate the areas that have " -"been filled. Default: ``False``" +msgid "Copy output results to this folder after processing." msgstr "" #: ../../arguments.rst:45 -msgid ":ref:`dem-gapfill-steps` " +msgid ":ref:`crop` " msgstr "" #: ../../arguments.rst:45 msgid "" -"Number of steps used to fill areas with gaps. Set to 0 to disable gap " -"filling. Starting with a radius equal to the output resolution, N " -"different DEMs are generated with progressively bigger radius using the " -"inverse distance weighted (IDW) algorithm and merged together. Remaining " -"gaps are then merged using nearest neighbor interpolation. Default: ``3``" +"Automatically crop image outputs by creating a smooth buffer around the " +"dataset boundaries, shrunk by N meters. Use 0 to disable cropping. Default: " +"``3``" msgstr "" #: ../../arguments.rst:48 -msgid ":ref:`dem-resolution` " +msgid ":ref:`dem-decimation` " msgstr "" #: ../../arguments.rst:48 +#, python-format msgid "" -"DSM/DTM resolution in cm / pixel. Note that this value is capped by a " -"ground sampling distance (GSD) estimate. To remove the cap, check " -"--ignore-gsd also. Default: ``5``" +"Decimate the points before generating the DEM. 1 is no decimation (full " +"quality). 100 decimates ~99%% of the points. Useful for speeding up " +"generation of DEM results in very large datasets. Default: ``1``" msgstr "" #: ../../arguments.rst:51 -msgid ":ref:`depthmap-resolution` " +msgid ":ref:`dem-euclidean-map`" msgstr "" #: ../../arguments.rst:51 msgid "" -"Legacy option (use --pc-quality instead). Controls the density of the " -"point cloud by setting the resolution of the depthmap images. Higher " -"values take longer to compute but produce denser point clouds. Default: " -"``640``" +"Computes an euclidean raster map for each DEM. The map reports the distance " +"from each cell to the nearest NODATA value (before any hole filling takes " +"place). This can be useful to isolate the areas that have been filled. " +"Default: ``False``" msgstr "" #: ../../arguments.rst:54 -msgid ":ref:`dsm`" +msgid ":ref:`dem-gapfill-steps` " msgstr "" #: ../../arguments.rst:54 msgid "" -"Use this tag to build a DSM (Digital Surface Model, ground + objects) " -"using a progressive morphological filter. Check the --dem\\* parameters " -"for finer tuning. Default: ``False``" +"Number of steps used to fill areas with gaps. Set to 0 to disable gap " +"filling. Starting with a radius equal to the output resolution, N different " +"DEMs are generated with progressively bigger radius using the inverse " +"distance weighted (IDW) algorithm and merged together. Remaining gaps are " +"then merged using nearest neighbor interpolation. Default: ``3``" msgstr "" #: ../../arguments.rst:57 -msgid ":ref:`dtm`" +msgid ":ref:`dem-resolution` " msgstr "" #: ../../arguments.rst:57 msgid "" -"Use this tag to build a DTM (Digital Terrain Model, ground only) using a " -"simple morphological filter. Check the --dem\\* and --smrf\\* parameters " -"for finer tuning. Default: ``False``" +"DSM/DTM resolution in cm / pixel. Note that this value is capped by a ground " +"sampling distance (GSD) estimate. Default: ``5``" msgstr "" #: ../../arguments.rst:60 -msgid "" -":ref:`end-with` dataset | split | merge | opensfm | openmvs" -" | odm_filterpoints | odm_meshing | mvs_texturing | " -"odm_georeferencing | odm_dem | odm_orthophoto | odm_report | " -"odm_postprocess" +msgid ":ref:`dsm`" msgstr "" #: ../../arguments.rst:60 -msgid "End processing at this stage. . Default: ``odm_postprocess``" +msgid "" +"Use this tag to build a DSM (Digital Surface Model, ground + objects) using " +"a progressive morphological filter. Check the --dem\\* parameters for finer " +"tuning. Default: ``False``" msgstr "" #: ../../arguments.rst:63 -msgid ":ref:`fast-orthophoto`" +msgid ":ref:`dtm`" msgstr "" #: ../../arguments.rst:63 msgid "" -"Skips dense reconstruction and 3D model generation. It generates an " -"orthophoto directly from the sparse reconstruction. If you just need an " -"orthophoto and do not need a full 3D model, turn on this option. Default:" -" ``False``" +"Use this tag to build a DTM (Digital Terrain Model, ground only) using a " +"simple morphological filter. Check the --dem\\* and --smrf\\* parameters for " +"finer tuning. Default: ``False``" msgstr "" #: ../../arguments.rst:66 msgid "" -":ref:`feature-quality` ultra | high | medium | low |" -" lowest" +":ref:`end-with` dataset | split | merge | opensfm | openmvs | " +"odm_filterpoints | odm_meshing | mvs_texturing | odm_georeferencing | " +"odm_dem | odm_orthophoto | odm_report | odm_postprocess" msgstr "" #: ../../arguments.rst:66 -msgid "" -"Set feature extraction quality. Higher quality generates better features," -" but requires more memory and takes longer. . Default: ``high``" +msgid "End processing at this stage. . Default: ``odm_postprocess``" msgstr "" #: ../../arguments.rst:69 -msgid ":ref:`feature-type` akaze | hahog | orb | sift" +msgid ":ref:`fast-orthophoto`" msgstr "" #: ../../arguments.rst:69 msgid "" -"Choose the algorithm for extracting keypoints and computing descriptors. " -". Default: ``sift``" +"Skips dense reconstruction and 3D model generation. It generates an " +"orthophoto directly from the sparse reconstruction. If you just need an " +"orthophoto and do not need a full 3D model, turn on this option. Default: " +"``False``" msgstr "" #: ../../arguments.rst:72 -msgid ":ref:`force-gps`" +msgid "" +":ref:`feature-quality` ultra | high | medium | low | " +"lowest" msgstr "" #: ../../arguments.rst:72 msgid "" -"Use images' GPS exif data for reconstruction, even if there are GCPs " -"present.This flag is useful if you have high precision GPS measurements. " -"If there are no GCPs, this flag does nothing. Default: ``False``" +"Set feature extraction quality. Higher quality generates better features, " +"but requires more memory and takes longer. . Default: ``high``" msgstr "" #: ../../arguments.rst:75 -msgid ":ref:`gcp` " +msgid "" +":ref:`feature-type` akaze | dspsift | hahog | orb | sift" msgstr "" #: ../../arguments.rst:75 msgid "" -"Path to the file containing the ground control points used for " -"georeferencing. The file needs to use the following format: EPSG: " -"or <+proj definition>geo_x geo_y geo_z im_x im_y image_name [gcp_name] " -"[extra1] [extra2]Default: ``None``" +"Choose the algorithm for extracting keypoints and computing descriptors. . " +"Default: ``dspsift``" msgstr "" #: ../../arguments.rst:78 -msgid ":ref:`geo` " +msgid ":ref:`force-gps`" msgstr "" #: ../../arguments.rst:78 msgid "" -"Path to the image geolocation file containing the camera center " -"coordinates used for georeferencing. Note that omega/phi/kappa are " -"currently not supported (you can set them to 0). The file needs to use " -"the following format: EPSG: or <+proj definition>image_name geo_x " -"geo_y geo_z [omega (degrees)] [phi (degrees)] [kappa (degrees)] [horz " -"accuracy (meters)] [vert accuracy (meters)]Default: ``None``" +"Use images' GPS exif data for reconstruction, even if there are GCPs " +"present.This flag is useful if you have high precision GPS measurements. If " +"there are no GCPs, this flag does nothing. Default: ``False``" msgstr "" #: ../../arguments.rst:81 -msgid ":ref:`gps-accuracy` " +msgid ":ref:`gcp` " msgstr "" #: ../../arguments.rst:81 msgid "" -"Set a value in meters for the GPS Dilution of Precision (DOP) information" -" for all images. If your images are tagged with high precision GPS " -"information (RTK), this value will be automatically set accordingly. You " -"can use this option to manually set it in case the reconstruction fails. " -"Lowering this option can sometimes help control bowling-effects over " -"large areas. Default: ``10``" +"Path to the file containing the ground control points used for " +"georeferencing. The file needs to use the following format: EPSG: or " +"<+proj definition>geo_x geo_y geo_z im_x im_y image_name [gcp_name] [extra1] " +"[extra2]Default: ``None``" msgstr "" #: ../../arguments.rst:84 -msgid ":ref:`help`" +msgid ":ref:`geo` " msgstr "" #: ../../arguments.rst:84 -msgid "show this help message and exit" +msgid "" +"Path to the image geolocation file containing the camera center coordinates " +"used for georeferencing. If you don't have values for yaw/pitch/roll you can " +"set them to 0. The file needs to use the following format: EPSG: or " +"<+proj definition>image_name geo_x geo_y geo_z [yaw (degrees)] [pitch " +"(degrees)] [roll (degrees)] [horz accuracy (meters)] [vert accuracy " +"(meters)]Default: ``None``" msgstr "" #: ../../arguments.rst:87 -msgid ":ref:`ignore-gsd`" +msgid ":ref:`gltf`" msgstr "" #: ../../arguments.rst:87 msgid "" -"Ignore Ground Sampling Distance (GSD). GSD caps the maximum resolution of" -" image outputs and resizes images when necessary, resulting in faster " -"processing and lower memory usage. Since GSD is an estimate, sometimes " -"ignoring it can result in slightly better image output quality. Default: " -"``False``" +"Generate single file Binary glTF (GLB) textured models. Default: ``False``" msgstr "" #: ../../arguments.rst:90 -msgid ":ref:`matcher-neighbors` " +msgid ":ref:`gps-accuracy` " msgstr "" #: ../../arguments.rst:90 msgid "" -"Number of nearest images to pre-match based on GPS exif data. Set to 0 to" -" skip pre-matching. Default: ``8``" +"Set a value in meters for the GPS Dilution of Precision (DOP) information " +"for all images. If your images are tagged with high precision GPS " +"information (RTK), this value will be automatically set accordingly. You can " +"use this option to manually set it in case the reconstruction fails. " +"Lowering this option can sometimes help control bowling-effects over large " +"areas. Default: ``3``" msgstr "" #: ../../arguments.rst:93 -msgid ":ref:`matcher-type` bow | bruteforce | flann" +msgid ":ref:`gps-z-offset` " msgstr "" #: ../../arguments.rst:93 msgid "" -"Matcher algorithm, Fast Library for Approximate Nearest Neighbors or Bag " -"of Words. FLANN is slower, but more stable. BOW is faster, but can " -"sometimes miss valid matches. BRUTEFORCE is very slow but robust.. " -"Default: ``flann``" +"Set a GPS offset in meters for the vertical axis (Z) by adding it to the " +"altitude value of the GPS EXIF data. This does not change the value of any " +"GCPs. This can be useful for example when adjusting from ellipsoidal to " +"orthometric height. Default: ``0``" msgstr "" #: ../../arguments.rst:96 -msgid ":ref:`max-concurrency` " +msgid ":ref:`help`" msgstr "" #: ../../arguments.rst:96 -msgid "" -"The maximum number of processes to use in various processes. Peak memory " -"requirement is ~1GB per thread and 2 megapixel image resolution. Default:" -" ``4``" +msgid "show this help message and exit" msgstr "" #: ../../arguments.rst:99 -msgid ":ref:`merge` all | pointcloud | orthophoto | dem" +msgid ":ref:`ignore-gsd`" msgstr "" #: ../../arguments.rst:99 msgid "" -"Choose what to merge in the merge step in a split dataset. By default all" -" available outputs are merged. Options: ['all', 'pointcloud', " -"'orthophoto', 'dem']. Default: ``all``" +"Ignore Ground Sampling Distance (GSD).A memory and processor hungry change " +"relative to the default behavior if set to true. Ordinarily, GSD estimates " +"are used to cap the maximum resolution of image outputs and resizes images " +"when necessary, resulting in faster processing and lower memory usage. Since " +"GSD is an estimate, sometimes ignoring it can result in slightly better " +"image output quality. Never set --ignore-gsd to true unless you are positive " +"you need it, and even then: do not use it. Default: ``False``" msgstr "" #: ../../arguments.rst:102 -msgid ":ref:`mesh-octree-depth` " +msgid ":ref:`matcher-neighbors` " msgstr "" #: ../../arguments.rst:102 msgid "" -"Octree depth used in the mesh reconstruction, increase to get more " -"vertices, recommended values are 8-12. Default: ``11``" +"Perform image matching with the nearest images based on GPS exif data. Set " +"to 0 to match by triangulation. Default: ``0``" msgstr "" #: ../../arguments.rst:105 -msgid ":ref:`mesh-size` " +msgid ":ref:`matcher-order` " msgstr "" #: ../../arguments.rst:105 -msgid "The maximum vertex count of the output mesh. Default: ``200000``" +msgid "" +"Perform image matching with the nearest N images based on image filename " +"order. Can speed up processing of sequential images, such as those extracted " +"from video. It is applied only on non-georeferenced datasets. Set to 0 to " +"disable. Default: ``0``" msgstr "" #: ../../arguments.rst:108 -msgid ":ref:`min-num-features` " +msgid ":ref:`matcher-type` bow | bruteforce | flann" msgstr "" #: ../../arguments.rst:108 msgid "" -"Minimum number of features to extract per image. More features can be " -"useful for finding more matches between images, potentially allowing the " -"reconstruction of areas with little overlap or insufficient features. " -"More features also slow down processing. Default: ``8000``" +"Matcher algorithm, Fast Library for Approximate Nearest Neighbors or Bag of " +"Words. FLANN is slower, but more stable. BOW is faster, but can sometimes " +"miss valid matches. BRUTEFORCE is very slow but robust.. Default: ``flann``" msgstr "" #: ../../arguments.rst:111 -msgid ":ref:`name` " +msgid ":ref:`max-concurrency` " msgstr "" #: ../../arguments.rst:111 msgid "" -"Name of dataset (i.e subfolder name within project folder). Default: " -"``code``" +"The maximum number of processes to use in various processes. Peak memory " +"requirement is ~1GB per thread and 2 megapixel image resolution. Default: " +"``4``" msgstr "" #: ../../arguments.rst:114 -msgid ":ref:`optimize-disk-space`" +msgid ":ref:`merge` all | pointcloud | orthophoto | dem" msgstr "" #: ../../arguments.rst:114 msgid "" -"Delete heavy intermediate files to optimize disk space usage. This " -"affects the ability to restart the pipeline from an intermediate stage, " -"but allows datasets to be processed on machines that don't have " -"sufficient disk space available. Default: ``False``" +"Choose what to merge in the merge step in a split dataset. By default all " +"available outputs are merged. Options: ['all', 'pointcloud', 'orthophoto', " +"'dem']. Default: ``all``" msgstr "" #: ../../arguments.rst:117 -msgid "" -":ref:`orthophoto-compression` JPEG | LZW | " -"PACKBITS | DEFLATE | LZMA | NONE" +msgid ":ref:`merge-skip-blending`" msgstr "" #: ../../arguments.rst:117 -msgid "Set the compression to use for orthophotos. . Default: ``DEFLATE``" +msgid "" +"During the orthophoto merging, skip expensive blending operation: ``False``" msgstr "" #: ../../arguments.rst:120 -msgid ":ref:`orthophoto-cutline`" +msgid ":ref:`mesh-octree-depth` " msgstr "" #: ../../arguments.rst:120 msgid "" -"Generates a polygon around the cropping area that cuts the orthophoto " -"around the edges of features. This polygon can be useful for stitching " -"seamless mosaics with multiple overlapping orthophotos. Default: " -"``False``" +"Octree depth used in the mesh reconstruction, increase to get more vertices, " +"recommended values are 8-12. Default: ``11``" msgstr "" #: ../../arguments.rst:123 -msgid ":ref:`orthophoto-kmz`" +msgid ":ref:`mesh-size` " msgstr "" #: ../../arguments.rst:123 -msgid "" -"Set this parameter if you want to generate a Google Earth (KMZ) rendering" -" of the orthophoto. Default: ``False``" +msgid "The maximum vertex count of the output mesh. Default: ``200000``" msgstr "" #: ../../arguments.rst:126 -msgid ":ref:`orthophoto-no-tiled`" +msgid ":ref:`min-num-features` " msgstr "" #: ../../arguments.rst:126 -msgid "Set this parameter if you want a striped GeoTIFF. Default: ``False``" +msgid "" +"Minimum number of features to extract per image. More features can be useful " +"for finding more matches between images, potentially allowing the " +"reconstruction of areas with little overlap or insufficient features. More " +"features also slow down processing. Default: ``10000``" msgstr "" #: ../../arguments.rst:129 -msgid ":ref:`orthophoto-png`" +msgid ":ref:`name` " msgstr "" #: ../../arguments.rst:129 msgid "" -"Set this parameter if you want to generate a PNG rendering of the " -"orthophoto. Default: ``False``" +"Name of dataset (i.e subfolder name within project folder). Default: ``code``" msgstr "" #: ../../arguments.rst:132 -msgid ":ref:`orthophoto-resolution` 0.0>" +msgid ":ref:`no-gpu`" msgstr "" #: ../../arguments.rst:132 -msgid "" -"Orthophoto resolution in cm / pixel. Note that this value is capped by a " -"ground sampling distance (GSD) estimate. To remove the cap, check " -"--ignore-gsd also. Default: ``5``" +msgid "Do not use GPU acceleration, even if it's available. Default: ``False``" msgstr "" #: ../../arguments.rst:135 -msgid ":ref:`pc-classify`" +msgid ":ref:`optimize-disk-space`" msgstr "" #: ../../arguments.rst:135 msgid "" -"Classify the point cloud outputs using a Simple Morphological Filter. You" -" can control the behavior of this option by tweaking the --dem-\\* " -"parameters. Default: ``False``" +"Delete heavy intermediate files to optimize disk space usage. This affects " +"the ability to restart the pipeline from an intermediate stage, but allows " +"datasets to be processed on machines that don't have sufficient disk space " +"available. Default: ``False``" msgstr "" #: ../../arguments.rst:138 -msgid ":ref:`pc-csv`" +msgid "" +":ref:`orthophoto-compression` JPEG | LZW | " +"PACKBITS | DEFLATE | LZMA | NONE" msgstr "" #: ../../arguments.rst:138 -msgid "Export the georeferenced point cloud in CSV format. Default: ``False``" +msgid "Set the compression to use for orthophotos. . Default: ``DEFLATE``" msgstr "" #: ../../arguments.rst:141 -msgid ":ref:`pc-ept`" +msgid ":ref:`orthophoto-cutline`" msgstr "" #: ../../arguments.rst:141 msgid "" -"Export the georeferenced point cloud in Entwine Point Tile (EPT) format. " -"Default: ``False``" +"Generates a polygon around the cropping area that cuts the orthophoto around " +"the edges of features. This polygon can be useful for stitching seamless " +"mosaics with multiple overlapping orthophotos. Default: ``False``" msgstr "" #: ../../arguments.rst:144 -msgid ":ref:`pc-filter` " +msgid ":ref:`orthophoto-kmz`" msgstr "" #: ../../arguments.rst:144 msgid "" -"Filters the point cloud by removing points that deviate more than N " -"standard deviations from the local mean. Set to 0 to disable filtering. " -"Default: ``2.5``" +"Set this parameter if you want to generate a Google Earth (KMZ) rendering of " +"the orthophoto. Default: ``False``" msgstr "" #: ../../arguments.rst:147 -msgid ":ref:`pc-geometric`" +msgid ":ref:`orthophoto-no-tiled`" msgstr "" #: ../../arguments.rst:147 -msgid "" -"Improve the accuracy of the point cloud by computing geometrically " -"consistent depthmaps. This increases processing time, but can improve " -"results in urban scenes. Default: ``False``" +msgid "Set this parameter if you want a striped GeoTIFF. Default: ``False``" msgstr "" #: ../../arguments.rst:150 -msgid ":ref:`pc-las`" +msgid ":ref:`orthophoto-png`" msgstr "" #: ../../arguments.rst:150 -msgid "Export the georeferenced point cloud in LAS format. Default: ``False``" +msgid "" +"Set this parameter if you want to generate a PNG rendering of the " +"orthophoto. Default: ``False``" msgstr "" #: ../../arguments.rst:153 -msgid ":ref:`pc-quality` ultra | high | medium | low | lowest" +msgid ":ref:`orthophoto-resolution` 0.0>" msgstr "" #: ../../arguments.rst:153 msgid "" -"Set point cloud quality. Higher quality generates better, denser point " -"clouds, but requires more memory and takes longer. Each step up in " -"quality increases processing time roughly by a factor of 4x.. Default: " -"``medium``" +"Orthophoto resolution in cm / pixel. Note that this value is capped by a " +"ground sampling distance (GSD) estimate.Default: ``5``" msgstr "" #: ../../arguments.rst:156 -msgid ":ref:`pc-rectify`" +msgid ":ref:`pc-classify`" msgstr "" #: ../../arguments.rst:156 msgid "" -"Perform ground rectification on the point cloud. This means that wrongly " -"classified ground points will be re-classified and gaps will be filled. " -"Useful for generating DTMs. Default: ``False``" +"Classify the point cloud outputs. You can control the behavior of this " +"option by tweaking the --dem-\\* parameters. Default: ``False``" msgstr "" #: ../../arguments.rst:159 -msgid ":ref:`pc-sample` " +msgid ":ref:`pc-copc`" msgstr "" #: ../../arguments.rst:159 msgid "" -"Filters the point cloud by keeping only a single point around a radius N " -"(in meters). This can be useful to limit the output resolution of the " -"point cloud and remove duplicate points. Set to 0 to disable sampling. " -"Default: ``0``" +"Save the georeferenced point cloud in Cloud Optimized Point Cloud (COPC) " +"format. Default: ``False``" msgstr "" #: ../../arguments.rst:162 -msgid ":ref:`pc-tile`" +msgid ":ref:`pc-csv`" msgstr "" #: ../../arguments.rst:162 -msgid "" -"Reduce the memory usage needed for depthmap fusion by splitting large " -"scenes into tiles. Turn this on if your machine doesn't have much RAM " -"and/or you've set --pc-quality to high or ultra. Experimental. Default: " -"``False``" +msgid "Export the georeferenced point cloud in CSV format. Default: ``False``" msgstr "" #: ../../arguments.rst:165 -msgid ":ref:`primary-band` " +msgid ":ref:`pc-ept`" msgstr "" #: ../../arguments.rst:165 msgid "" -"When processing multispectral datasets, you can specify the name of the " -"primary band that will be used for reconstruction. It's recommended to " -"choose a band which has sharp details and is in focus. Default: ``auto``" +"Export the georeferenced point cloud in Entwine Point Tile (EPT) format. " +"Default: ``False``" msgstr "" #: ../../arguments.rst:168 -msgid ":ref:`project-path` " +msgid ":ref:`pc-filter` " msgstr "" #: ../../arguments.rst:168 msgid "" -"Path to the project folder. Your project folder should contain subfolders" -" for each dataset. Each dataset should have an \"images\" folder." +"Filters the point cloud by removing points that deviate more than N standard " +"deviations from the local mean. Set to 0 to disable filtering. Default: ``5``" msgstr "" #: ../../arguments.rst:171 -msgid "" -":ref:`radiometric-calibration` none | camera |" -" camera+sun" +msgid ":ref:`pc-las`" msgstr "" #: ../../arguments.rst:171 -msgid "" -"Set the radiometric calibration to perform on images. When processing " -"multispectral and thermal images you should set this option to obtain " -"reflectance/temperature values (otherwise you will get digital number " -"values). [camera] applies black level, vignetting, row gradient " -"gain/exposure compensation (if appropriate EXIF tags are found) and " -"computes absolute temperature values. [camera+sun] is experimental, " -"applies all the corrections of [camera], plus compensates for spectral " -"radiance registered via a downwelling light sensor (DLS) taking in " -"consideration the angle of the sun. . Default: ``none``" +msgid "Export the georeferenced point cloud in LAS format. Default: ``False``" msgstr "" #: ../../arguments.rst:174 -msgid "" -":ref:`rerun` dataset | split | merge | opensfm | openmvs | " -"odm_filterpoints | odm_meshing | mvs_texturing | odm_georeferencing |" -" odm_dem | odm_orthophoto | odm_report | odm_postprocess" +msgid ":ref:`pc-quality` ultra | high | medium | low | lowest" msgstr "" #: ../../arguments.rst:174 -msgid "Rerun this stage only and stop. . Default: ``" +msgid "" +"Set point cloud quality. Higher quality generates better, denser point " +"clouds, but requires more memory and takes longer. Each step up in quality " +"increases processing time roughly by a factor of 4x.. Default: ``medium``" msgstr "" #: ../../arguments.rst:177 -msgid ":ref:`rerun-all`" +msgid ":ref:`pc-rectify`" msgstr "" #: ../../arguments.rst:177 -msgid "Permanently delete all previous results and rerun the processing pipeline." +msgid "" +"Perform ground rectification on the point cloud. This means that wrongly " +"classified ground points will be re-classified and gaps will be filled. " +"Useful for generating DTMs. Default: ``False``" msgstr "" #: ../../arguments.rst:180 -msgid "" -":ref:`rerun-from` dataset | split | merge | opensfm | " -"openmvs | odm_filterpoints | odm_meshing | mvs_texturing | " -"odm_georeferencing | odm_dem | odm_orthophoto | odm_report | " -"odm_postprocess" +msgid ":ref:`pc-sample` " msgstr "" #: ../../arguments.rst:180 -msgid "Rerun processing from this stage. . Default: ``" +msgid "" +"Filters the point cloud by keeping only a single point around a radius N (in " +"meters). This can be useful to limit the output resolution of the point " +"cloud and remove duplicate points. Set to 0 to disable sampling. Default: " +"``0``" msgstr "" #: ../../arguments.rst:183 -msgid ":ref:`resize-to` " +msgid ":ref:`pc-skip-geometric`" msgstr "" #: ../../arguments.rst:183 msgid "" -"Legacy option (use --feature-quality instead). Resizes images by the " -"largest side for feature extraction purposes only. Set to -1 to disable. " -"This does not affect the final orthophoto resolution quality and will not" -" resize the original images. Default: ``2048``" +"Geometric estimates improve the accuracy of the point cloud by computing " +"geometrically consistent depthmaps but may not be usable in larger datasets. " +"This flag disables geometric estimates. Default: ``False``" msgstr "" #: ../../arguments.rst:186 -msgid ":ref:`sfm-algorithm` incremental | triangulation" +msgid ":ref:`primary-band` " msgstr "" #: ../../arguments.rst:186 msgid "" -"Choose the structure from motion algorithm. For aerial datasets, if " -"camera GPS positions and angles are available, triangulation can generate" -" better results. . Default: ``incremental``" +"When processing multispectral datasets, you can specify the name of the " +"primary band that will be used for reconstruction. It's recommended to " +"choose a band which has sharp details and is in focus. Default: ``auto``" msgstr "" #: ../../arguments.rst:189 -msgid ":ref:`skip-3dmodel`" +msgid ":ref:`project-path` " msgstr "" #: ../../arguments.rst:189 msgid "" -"Skip generation of a full 3D model. This can save time if you only need " -"2D results such as orthophotos and DEMs. Default: ``False``" +"Path to the project folder. Your project folder should contain subfolders " +"for each dataset. Each dataset should have an \"images\" folder." msgstr "" #: ../../arguments.rst:192 -msgid ":ref:`skip-band-alignment`" +msgid "" +":ref:`radiometric-calibration` none | camera | " +"camera+sun" msgstr "" #: ../../arguments.rst:192 msgid "" -"When processing multispectral datasets, ODM will automatically align the " -"images for each band. If the images have been postprocessed and are " -"already aligned, use this option. Default: ``False``" +"Set the radiometric calibration to perform on images. When processing " +"multispectral and thermal images you should set this option to obtain " +"reflectance/temperature values (otherwise you will get digital number " +"values). [camera] applies black level, vignetting, row gradient gain/" +"exposure compensation (if appropriate EXIF tags are found) and computes " +"absolute temperature values. [camera+sun] is experimental, applies all the " +"corrections of [camera], plus compensates for spectral radiance registered " +"via a downwelling light sensor (DLS) taking in consideration the angle of " +"the sun. . Default: ``none``" msgstr "" #: ../../arguments.rst:195 -msgid ":ref:`skip-orthophoto`" +msgid "" +":ref:`rerun` dataset | split | merge | opensfm | openmvs | " +"odm_filterpoints | odm_meshing | mvs_texturing | odm_georeferencing | " +"odm_dem | odm_orthophoto | odm_report | odm_postprocess" msgstr "" #: ../../arguments.rst:195 -msgid "" -"Skip generation of the orthophoto. This can save time if you only need 3D" -" results or DEMs. Default: ``False``" +msgid "Rerun this stage only and stop. . Default: ``" msgstr "" #: ../../arguments.rst:198 -msgid ":ref:`skip-report`" +msgid ":ref:`rerun-all`" msgstr "" #: ../../arguments.rst:198 msgid "" -"Skip generation of PDF report. This can save time if you don't need a " -"report. Default: ``False``" +"Permanently delete all previous results and rerun the processing pipeline." msgstr "" #: ../../arguments.rst:201 -msgid ":ref:`sm-cluster` " +msgid "" +":ref:`rerun-from` dataset | split | merge | opensfm | " +"openmvs | odm_filterpoints | odm_meshing | mvs_texturing | " +"odm_georeferencing | odm_dem | odm_orthophoto | odm_report | " +"odm_postprocess" msgstr "" #: ../../arguments.rst:201 -msgid "" -"URL to a ClusterODM instance for distributing a split-merge workflow on " -"multiple nodes in parallel. Default: ``None``" +msgid "Rerun processing from this stage. . Default: ``" msgstr "" #: ../../arguments.rst:204 -msgid ":ref:`smrf-scalar` " +msgid ":ref:`rolling-shutter`" msgstr "" #: ../../arguments.rst:204 -msgid "Simple Morphological Filter elevation scalar parameter. Default: ``1.25``" +msgid "" +"Turn on rolling shutter correction. If the camera has a rolling shutter and " +"the images were taken in motion, you can turn on this option to improve the " +"accuracy of the results. See also --rolling-shutter-readout. Default: " +"``False``" msgstr "" #: ../../arguments.rst:207 -msgid ":ref:`smrf-slope` " +msgid "" +":ref:`rolling-shutter-readout` " msgstr "" #: ../../arguments.rst:207 msgid "" -"Simple Morphological Filter slope parameter (rise over run). Default: " -"``0.15``" +"Override the rolling shutter readout time for your camera sensor (in " +"milliseconds), instead of using the rolling shutter readout database. Note " +"that not all cameras are present in the database. Set to 0 to use the " +"database value. Default: ``0``" msgstr "" #: ../../arguments.rst:210 -msgid ":ref:`smrf-threshold` " +msgid "" +":ref:`sfm-algorithm` incremental | triangulation | planar" msgstr "" #: ../../arguments.rst:210 msgid "" -"Simple Morphological Filter elevation threshold parameter (meters). " -"Default: ``0.5``" +"Choose the structure from motion algorithm. For aerial datasets, if camera " +"GPS positions and angles are available, triangulation can generate better " +"results. For planar scenes captured at fixed altitude with nadir-only " +"images, planar can be much faster. . Default: ``incremental``" msgstr "" #: ../../arguments.rst:213 -msgid ":ref:`smrf-window` " +msgid ":ref:`sfm-no-partial`" msgstr "" #: ../../arguments.rst:213 msgid "" -"Simple Morphological Filter window radius parameter (meters). Default: " -"``18.0``" +"Do not attempt to merge partial reconstructions. This can happen when images " +"do not have sufficient overlap or are isolated. Default: ``False``" msgstr "" #: ../../arguments.rst:216 -msgid ":ref:`split` " +msgid ":ref:`skip-3dmodel`" msgstr "" #: ../../arguments.rst:216 msgid "" -"Average number of images per submodel. When splitting a large dataset " -"into smaller submodels, images are grouped into clusters. This value " -"regulates the number of images that each cluster should have on average. " -"Default: ``999999``" +"Skip generation of a full 3D model. This can save time if you only need 2D " +"results such as orthophotos and DEMs. Default: ``False``" msgstr "" #: ../../arguments.rst:219 -msgid ":ref:`split-image-groups` " +msgid ":ref:`skip-band-alignment`" msgstr "" #: ../../arguments.rst:219 msgid "" -"Path to the image groups file that controls how images should be split " -"into groups. The file needs to use the following format: image_name " -"group_nameDefault: ``None``" +"When processing multispectral datasets, ODM will automatically align the " +"images for each band. If the images have been postprocessed and are already " +"aligned, use this option. Default: ``False``" msgstr "" #: ../../arguments.rst:222 -msgid ":ref:`split-overlap` " +msgid ":ref:`skip-orthophoto`" msgstr "" #: ../../arguments.rst:222 msgid "" -"Radius of the overlap between submodels. After grouping images into " -"clusters, images that are closer than this radius to a cluster are added " -"to the cluster. This is done to ensure that neighboring submodels " -"overlap. Default: ``150``" +"Skip generation of the orthophoto. This can save time if you only need 3D " +"results or DEMs. Default: ``False``" msgstr "" #: ../../arguments.rst:225 -msgid ":ref:`texturing-data-term` gmi | area" +msgid ":ref:`skip-report`" msgstr "" #: ../../arguments.rst:225 msgid "" -"When texturing the 3D mesh, for each triangle, choose to prioritize " -"images with sharp features (gmi) or those that cover the largest area " -"(area). Default: ``gmi``" +"Skip generation of PDF report. This can save time if you don't need a " +"report. Default: ``False``" msgstr "" #: ../../arguments.rst:228 -msgid ":ref:`texturing-keep-unseen-faces`" +msgid ":ref:`sky-removal`" msgstr "" #: ../../arguments.rst:228 msgid "" -"Keep faces in the mesh that are not seen in any camera. Default: " -"``False``" +"Automatically compute image masks using AI to remove the sky. Experimental. " +"Default: ``False``" msgstr "" #: ../../arguments.rst:231 -msgid "" -":ref:`texturing-outlier-removal-type` " -"none | gauss_clamping | gauss_damping" +msgid ":ref:`sm-cluster` " msgstr "" #: ../../arguments.rst:231 -msgid "Type of photometric outlier removal method. . Default: ``gauss_clamping``" +msgid "" +"URL to a ClusterODM instance for distributing a split-merge workflow on " +"multiple nodes in parallel. Default: ``None``" msgstr "" #: ../../arguments.rst:234 -msgid "" -":ref:`texturing-skip-global-seam-leveling`" +msgid ":ref:`sm-no-align`" msgstr "" #: ../../arguments.rst:234 msgid "" -"Skip normalization of colors across all images. Useful when processing " -"radiometric data. Default: ``False``" +"Skip alignment of submodels in split-merge. Useful if GPS is good enough on " +"very large datasets. Default: ``False``" msgstr "" #: ../../arguments.rst:237 -msgid "" -":ref:`texturing-skip-local-seam-leveling`" +msgid ":ref:`smrf-scalar` " msgstr "" #: ../../arguments.rst:237 -msgid "Skip the blending of colors near seams. Default: ``False``" +msgid "" +"Simple Morphological Filter elevation scalar parameter. Default: ``1.25``" msgstr "" #: ../../arguments.rst:240 -msgid ":ref:`texturing-tone-mapping` none | gamma" +msgid ":ref:`smrf-slope` " msgstr "" #: ../../arguments.rst:240 msgid "" -"Turn on gamma tone mapping or none for no tone mapping. Can be one of " -"['none', 'gamma']. Default: ``none``" +"Simple Morphological Filter slope parameter (rise over run). Default: " +"``0.15``" msgstr "" #: ../../arguments.rst:243 -msgid ":ref:`tiles`" +msgid ":ref:`smrf-threshold` " msgstr "" #: ../../arguments.rst:243 msgid "" -"Generate static tiles for orthophotos and DEMs that are suitable for " -"viewers like Leaflet or OpenLayers. Default: ``False``" +"Simple Morphological Filter elevation threshold parameter (meters). Default: " +"``0.5``" msgstr "" #: ../../arguments.rst:246 -msgid ":ref:`time