OpenDroneMap-docs/es/large/index.html

602 wiersze
41 KiB
HTML
Czysty Wina Historia

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html class="writer-html5" lang="es" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>División de grandes conjuntos de datos &mdash; documentación de OpenDroneMap - 2.5.8</title>
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="shortcut icon" href="../_static/favicon.ico"/>
<!--[if lt IE 9]>
<script src="../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
<script src="../_static/jquery.js"></script>
<script src="../_static/underscore.js"></script>
<script src="../_static/doctools.js"></script>
<script src="../_static/translations.js"></script>
<script type="text/javascript" src="../_static/js/theme.js"></script>
<link rel="index" title="Índice" href="../genindex/" />
<link rel="search" title="Búsqueda" href="../search/" />
<link rel="next" title="Referencias adicionales" href="../resources/" />
<link rel="prev" title="Usar máscaras de imagen" href="../masks/" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../" class="icon icon-home"> OpenDroneMap
</a>
<div class="version">
2.5.8
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search/" method="get">
<input type="text" name="q" placeholder="Buscar documentos" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../installation/">Instalación y Guía de Introducción</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../installation/#hardware-recommendations">Recomendaciones de Hardware</a></li>
<li class="toctree-l2"><a class="reference internal" href="../installation/#installation">Instalación</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../installation/#windows">Windows</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-1-check-virtualization-support">Paso 1. Verificar el Soporte de Virtualización</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-2-install-requirements">Paso 2. Requisitos de instalación</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-3-check-memory-and-cpu-allocation">Paso 3. Revisa la memoria y la asignación del procesador</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-4-download-webodm">Paso 4. Descarga WebODM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-4-launch-webodm">Paso 4. Inicie WebODM</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../installation/#macos">macOS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../installation/#id1">Paso 1. Verificar el Soporte de Virtualización</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#id2">Paso 2. Requisitos de instalación</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#id3">Paso 3. Revisa la memoria y la asignación del procesador</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-4-download-and-launch-webodm">Paso 4. Descargue y ejecute WebODM</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../installation/#linux">Linux</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-1-install-requirements">Paso 1. Requerimientos de instalación</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-2-check-additional-requirements">Paso 2. Verifique los requisitos adicionales</a></li>
<li class="toctree-l4"><a class="reference internal" href="../installation/#step-3-download-and-launch-webodm">Paso 3. Descargue y ejecute WebODM</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../installation/#basic-commands-and-troubleshooting">Comandos básicos y resolución de problemas</a></li>
<li class="toctree-l2"><a class="reference internal" href="../installation/#hello-webodm">¡Hola WebODM!</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../installation/#running-on-more-than-one-machine">Ejecutando en más de una máquina</a></li>
</ul>
</li>
</ul>
</li>
</ul>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../tutorials/">Tutoriales</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/#creating-high-quality-orthophotos">Creación de Ortofotos de Alta Calidad</a></li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/#calibrating-the-camera">Calibrar la cámara</a></li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/#creating-digital-elevation-models">Creación de modelos de elevación digitales</a></li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/#measuring-stockpile-volume">Medir el volumen de pilas de materiales a granel</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#fieldwork-planning">Planificación del trabajo de campo</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#flight-pattern">Patrón de vuelo</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#flight-height">Altura de vuelo</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#gcps">GCPs</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#processing-parameters">Parámetros de procesamiento</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#measuring">Medición</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#expected-accuracy">Precisión esperada</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/#using-docker">Usando Docker</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#listing-docker-machines">Listado de máquinas Docker</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#accessing-logs-on-the-instance">Accediendo a los registros en la instancia</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#command-line-access-to-instances">Acceso de línea de comando a las instancias</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#cleaning-up-after-docker">Limpieza de Docker</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/#using-odm-from-low-bandwidth-location">Usando ODM desde una ubicación de ancho de banda bajo</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#what-is-this-and-who-is-it-for">¿Qué es esto y para quién es?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../tutorials/#steps">Pasos</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../tutorials/#install">Instalación</a></li>
<li class="toctree-l4"><a class="reference internal" href="../tutorials/#prep-data-and-project">Datos de preparación y proyecto</a></li>
<li class="toctree-l4"><a class="reference internal" href="../tutorials/#resize-droplet-pull-pin-run-away">Cambie el tamaño del Droplet, quite el seguro, huya</a></li>
<li class="toctree-l4"><a class="reference internal" href="../tutorials/#after-it-finishes-assuming-you-survive-that-long">Después de que termine (suponiendo que sobrevivas tanto tiempo)</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../arguments/">Opciones e indicadores</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../arguments/build-overviews/">build-overviews</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/camera-lens/">camera-lens</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/cameras/">cameras</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/cog/">cog</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/copy-to/">copy-to</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/crop/">crop</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/debug/">debug</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/dem-decimation/">dem-decimation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/dem-euclidean-map/">dem-euclidean-map</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/dem-gapfill-steps/">dem-gapfill-steps</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/dem-resolution/">dem-resolution</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/depthmap-resolution/">depthmap-resolution</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/dsm/">dsm</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/dtm/">dtm</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/end-with/">end-with</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/fast-orthophoto/">fast-orthophoto</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/feature-quality/">feature-quality</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/feature-type/">feature-type</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/force-gps/">force-gps</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/gcp/">gcp</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/geo/">geo</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/gps-accuracy/">gps-accuracy</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/help/">help</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/ignore-gsd/">ignore-gsd</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/matcher-distance/">matcher-distance</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/matcher-neighbors/">matcher-neighbors</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/matcher-type/">matcher-type</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/max-concurrency/">max-concurrency</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/merge/">merge</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/mesh-octree-depth/">mesh-octree-depth</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/mesh-size/">mesh-size</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/min-num-features/">min-num-features</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/name/">name</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/optimize-disk-space/">optimize-disk-space</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/orthophoto-compression/">orthophoto-compression</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/orthophoto-cutline/">orthophoto-cutline</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/orthophoto-kmz/">orthophoto-kmz</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/orthophoto-no-tiled/">orthophoto-no-tiled</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/orthophoto-png/">orthophoto-png</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/orthophoto-resolution/">orthophoto-resolution</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-classify/">pc-classify</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-csv/">pc-csv</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-ept/">pc-ept</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-filter/">pc-filter</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-geometric/">pc-geometric</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-las/">pc-las</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-quality/">pc-quality</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-rectify/">pc-rectify</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-sample/">pc-sample</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/pc-tile/">pc-tile</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/primary-band/">primary-band</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/project-path/">project-path</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/radiometric-calibration/">radiometric-calibration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/rerun/">rerun</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/rerun-all/">rerun-all</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/rerun-from/">rerun-from</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/resize-to/">resize-to</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/skip-3dmodel/">skip-3dmodel</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/skip-band-alignment/">skip-band-alignment</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/skip-report/">skip-report</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/sm-cluster/">sm-cluster</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/smrf-scalar/">smrf-scalar</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/smrf-slope/">smrf-slope</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/smrf-threshold/">smrf-threshold</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/smrf-window/">smrf-window</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/split/">split</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/split-image-groups/">split-image-groups</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/split-overlap/">split-overlap</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/texturing-data-term/">texturing-data-term</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/texturing-keep-unseen-faces/">texturing-keep-unseen-faces</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/texturing-outlier-removal-type/">texturing-outlier-removal-type</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/texturing-skip-global-seam-leveling/">texturing-skip-global-seam-leveling</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/texturing-skip-local-seam-leveling/">texturing-skip-local-seam-leveling</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/texturing-tone-mapping/">texturing-tone-mapping</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/tiles/">tiles</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/time/">time</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/use-3dmesh/">use-3dmesh</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/use-exif/">use-exif</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/use-fixed-camera-params/">use-fixed-camera-params</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/use-hybrid-bundle-adjustment/">use-hybrid-bundle-adjustment</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/verbose/">verbose</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arguments/version/">version</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../outputs/">Salidas de OpenDroneMap</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../outputs/#point-cloud">Nube de puntos</a></li>
<li class="toctree-l2"><a class="reference internal" href="../outputs/#d-textured-model">Modelo texturizado 3D</a></li>
<li class="toctree-l2"><a class="reference internal" href="../outputs/#orthophoto">Ortofoto</a></li>
<li class="toctree-l2"><a class="reference internal" href="../outputs/#dtm-dsm">DTM/DSM</a></li>
<li class="toctree-l2"><a class="reference internal" href="../outputs/#list-of-all-outputs">Lista de todas las salidas</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../gcp/">Puntos de Control Terrestre</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../gcp/#recommended-practices-for-gcp-setting">Prácticas recomendadas para la colocación de GCP</a></li>
<li class="toctree-l2"><a class="reference internal" href="../gcp/#gcp-file-format">Formato del archivo GCP</a></li>
<li class="toctree-l2"><a class="reference internal" href="../gcp/#user-interfaces">Interfaces de Usuario</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../gcp/#id1">POSM GCPi</a></li>
<li class="toctree-l3"><a class="reference internal" href="../gcp/#id2">GCP Editor Pro</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../gcp/#references">Referencias</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../map-accuracy/">Precisión del Mapa</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../map-accuracy/#what-to-expect">Que esperar</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../map-accuracy/#aspects-impacting-map-accuracy">Aspectos que impactan la precisión del mapa</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../map-accuracy/#references">Referencias</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../geo/">Archivos de geolocalización de imagen</a></li>
<li class="toctree-l1"><a class="reference internal" href="../masks/">Usar máscaras de imagen</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">División de grandes conjuntos de datos</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#calibrate-images">Calibrar imágenes</a></li>
<li class="toctree-l2"><a class="reference internal" href="#local-split-merge">Split-merge local</a></li>
<li class="toctree-l2"><a class="reference internal" href="#distributed-split-merge">Split-Merge distribuido</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#getting-started-with-distributed-split-merge">Introducción a split-merge distribuido</a></li>
<li class="toctree-l3"><a class="reference internal" href="#understanding-the-cluster">Entendiendo el Cluster</a></li>
<li class="toctree-l3"><a class="reference internal" href="#accessing-the-logs">Acceder a los registros</a></li>
<li class="toctree-l3"><a class="reference internal" href="#autoscaling-clusterodm">Ajuste de escala automático de ClusterODM</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#limitations">Limitaciones</a></li>
<li class="toctree-l2"><a class="reference internal" href="#acknowledgments">Agradecimientos</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../resources/">Referencias adicionales</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../resources/#for-users">Para usuarios</a></li>
<li class="toctree-l2"><a class="reference internal" href="../resources/#for-developers">Para desarrolladores</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../flying/">Consejos de vuelo</a></li>
<li class="toctree-l1"><a class="reference internal" href="../multispectral/">Soporte multiespectral</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../multispectral/#hardware">Hardware</a></li>
<li class="toctree-l2"><a class="reference internal" href="../multispectral/#usage">Uso</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../requesting-features/">Cómo solicitar funciones</a></li>
<li class="toctree-l1"><a class="reference internal" href="../contributing/">Como contribuir</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../contributing/#community-forum">Foro comunitario</a></li>
<li class="toctree-l2"><a class="reference internal" href="../contributing/#reporting-bugs">Reportando Errores</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../contributing/#template-for-submitting-bug-reports">Plantilla Para Enviar Informes de Errores</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../contributing/#pull-requests">Solicitudes de Extraxion</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../faq/">Frequently Asked Questions</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../faq/#data-processing">Data Processing</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../faq/#can-i-process-two-or-more-orthophoto-geotiffs-to-stitch-them-together">Can I process two or more orthophoto GeoTIFFs to stitch them together?</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../faq/#licensing">Licensing</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../faq/#i-want-to-build-a-commercial-application-that-includes-odm-do-i-need-a-commercial-license">I want to build a commercial application that includes ODM. Do I need a commercial license?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../faq/#are-there-other-licensing-options-aside-from-the-agplv3">Are there other licensing options aside from the AGPLv3?</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../">OpenDroneMap</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../" class="icon icon-home"></a> &raquo;</li>
<li>División de grandes conjuntos de datos</li>
<li class="wy-breadcrumbs-aside">
<a href="../_sources/large.rst.txt" rel="nofollow"> Ver código fuente de la página</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="splitting-large-datasets">
<h1>División de grandes conjuntos de datos<a class="headerlink" href="#splitting-large-datasets" title="Enlazar permanentemente con este título"></a></h1>
<p>A partir de la versión <code class="docutils literal notranslate"><span class="pre">0.6.0</span></code> de ODM, puede dividir conjuntos de datos muy grandes en fragmentos manejables (llamados submodelos), ejecutar la canalización en cada fragmento y luego producir DEM, ortofotos y nubes de puntos fusionados. El proceso se conoce como «split-merge».</p>
<p>¿Por qué debería utilizar la canalización split-merge? Si tiene una gran cantidad de imágenes en su conjunto de datos, split-merge ayudará a que el procesamiento sea más manejable en una máquina grande (requerirá menos memoria). Si tiene muchas máquinas conectadas a la misma red, también puede procesar los submodelos en paralelo, lo que permite el escalado horizontal y el procesamiento de miles de imágenes más rápidamente.</p>
<p>Split-merge funciona en WebODM de forma inmediata siempre que los nodos de procesamiento admitan split-merge, al habilitar la opción <code class="docutils literal notranslate"><span class="pre">--split</span></code> al crear una nueva tarea.</p>
<div class="section" id="calibrate-images">
<h2>Calibrar imágenes<a class="headerlink" href="#calibrate-images" title="Enlazar permanentemente con este título"></a></h2>
<p>Se recomienda (pero no es obligatorio) la calibración de imagen para grandes conjuntos de datos porque la propagación del error debido a la distorsión de la imagen podría causar un efecto de tazón en los modelos. Las instrucciones de calibración se pueden encontrar en calibración de imágenes <a class="reference external" href="tutorials.html#calibrating-the-camera">Calibrate Images</a>.</p>
<div class="figure align-center">
<img alt="image of lens distortion effect on bowling of data" src="../_images/msimbasi_bowling.png" />
</div>
<p>Efecto de tazón en la nube de puntos sobre más de 13,000 conjuntos de datos de imágenes recopilados por el Banco Mundial de Tanzania sobre la cuenca de Msimbasi, propensa a inundaciones, Dar es Salaam, Tanzania</p>
</div>
<div class="section" id="local-split-merge">
<h2>Split-merge local<a class="headerlink" href="#local-split-merge" title="Enlazar permanentemente con este título"></a></h2>
<p>¡Es fácil dividir un conjunto de datos en submodelos más manejables y procesar secuencialmente todos los submodelos en la misma máquina! Simplemente use <code class="docutils literal notranslate"><span class="pre">--split</span></code> y <code class="docutils literal notranslate"><span class="pre">--split-overlap</span></code> para decidir el número promedio de imágenes por submodelos y la superposición (en metros) entre submodelos respectivamente</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -ti --rm -v /my/project:/datasets/code opendronemap/odm --project-path /datasets --split <span class="m">400</span> --split-overlap <span class="m">100</span>
</pre></div>
</div>
<p>si ya sabe como desea dividir el conjunto de datos, puede proporcionar esa información y se utilizará en lugar del algoritmo de agrupamiento.</p>
<p>La agrupación se puede proporcionar agregando un archivo llamado image_groups.txt en la carpeta principal del conjunto de datos. El archivo debe tener una línea por imagen. Cada línea debe tener dos palabras: primero el nombre de la imagen y segundo el nombre del grupo al que pertenece. Por ejemplo:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="mf">01.</span><span class="n">jpg</span> <span class="n">A</span>
<span class="mf">02.</span><span class="n">jpg</span> <span class="n">A</span>
<span class="mf">03.</span><span class="n">jpg</span> <span class="n">B</span>
<span class="mf">04.</span><span class="n">jpg</span> <span class="n">B</span>
<span class="mf">05.</span><span class="n">jpg</span> <span class="n">C</span>
</pre></div>
</div>
<p>creará 3 submodelos. Asegúrese de pasar <code class="docutils literal notranslate"><span class="pre">--split-overlay</span> <span class="pre">0</span></code> si proporciona manualmente un archivo <code class="docutils literal notranslate"><span class="pre">image_groups.txt</span></code>.</p>
</div>
<div class="section" id="distributed-split-merge">
<h2>Split-Merge distribuido<a class="headerlink" href="#distributed-split-merge" title="Enlazar permanentemente con este título"></a></h2>
<p>ODM también puede distribuir automáticamente el procesamiento de cada submodelo a varias máquinas a través de los nodos <cite>NodeODM &lt;https://github.com/OpenDroneMap/NodeODM&gt;</cite> _, orquestados a través de <a class="reference external" href="https://github.com/OpenDroneMap/ClusterODM">ClusterODM</a>.</p>
<div class="figure align-center">
<img alt="image of lens distortion effect on bowling of data" src="../_images/clusterodm.png" />
</div>
<div class="section" id="getting-started-with-distributed-split-merge">
<h3>Introducción a split-merge distribuido<a class="headerlink" href="#getting-started-with-distributed-split-merge" title="Enlazar permanentemente con este título"></a></h3>
<p>El primer paso es iniciar ClusterODM</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -ti -p <span class="m">3001</span>:3000 -p <span class="m">8080</span>:8080 opendronemap/clusterodm
</pre></div>
</div>
<p>Luego en cada máquina que desee utilizar para procesamiento, inicie una instancia de NodeODM a través de</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -ti -p <span class="m">3000</span>:3000 opendronemap/nodeodm
</pre></div>
</div>
<p>Conectese a ClusterODM a través de telnet y agregue las direcciones IP / puertos de las máquinas que ejecutan NodeODM</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ telnet &lt;cluster-odm-ip&gt; <span class="m">8080</span>
Connected to &lt;cluster-odm-ip&gt;.
Escape character is <span class="s1">&#39;^]&#39;</span>.
<span class="o">[</span>...<span class="o">]</span>
<span class="c1"># node add &lt;node-odm-ip-1&gt; 3000</span>
<span class="c1"># node add &lt;node-odm-ip-2&gt; 3000</span>
<span class="o">[</span>...<span class="o">]</span>
<span class="c1"># node list</span>
<span class="m">1</span><span class="o">)</span> &lt;node-odm-ip-1&gt;:3000 <span class="o">[</span>online<span class="o">]</span> <span class="o">[</span><span class="m">0</span>/2<span class="o">]</span> &lt;version <span class="m">1</span>.5.1&gt;
<span class="m">2</span><span class="o">)</span> &lt;node-odm-ip-2&gt;:3000 <span class="o">[</span>online<span class="o">]</span> <span class="o">[</span><span class="m">0</span>/2<span class="o">]</span> &lt;version <span class="m">1</span>.5.1&gt;
</pre></div>
</div>
<p>Asegurese de estar corriendo la versión de NodeODM API <code class="docutils literal notranslate"><span class="pre">1.5.1</span></code> o superior</p>
<p>En este punto simpemente use la opción <code class="docutils literal notranslate"><span class="pre">--sm-cluster</span></code> para habilitar el split-merge distribuido</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker run -ti --rm -v /my/project:/datasets/code opendronemap/odm --project-path /datasets --split <span class="m">800</span> --split-overlap <span class="m">120</span> --sm-cluster http://&lt;cluster-odm-ip&gt;:3001
</pre></div>
</div>
</div>
<div class="section" id="understanding-the-cluster">
<h3>Entendiendo el Cluster<a class="headerlink" href="#understanding-the-cluster" title="Enlazar permanentemente con este título"></a></h3>
<p>Cuando se conecta a través de telnet, es posible interrogar qué está sucediendo en el clúster. Por ejemplo, podemos usar el comando HELP para averiguar los comandos disponibles.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># HELP</span>
NODE ADD &lt;hostname&gt; &lt;port&gt; <span class="o">[</span>token<span class="o">]</span> - Add new node
NODE DEL &lt;node number&gt; - Remove a node
NODE INFO &lt;node number&gt; - View node info
NODE LIST - List nodes
NODE LOCK &lt;node number&gt; - Stop forwarding tasks to this node
NODE UNLOCK &lt;node number&gt; - Resume forwarding tasks to this node
NODE UPDATE - Update all nodes info
NODE BEST &lt;number of images&gt; - Show best node <span class="k">for</span> the number of images
ROUTE INFO &lt;taskId&gt; - Find route information <span class="k">for</span> task
ROUTE LIST <span class="o">[</span>node number<span class="o">]</span> - List routes
TASK LIST <span class="o">[</span>node number<span class="o">]</span> - List tasks
TASK INFO &lt;taskId&gt; - View task info
TASK OUTPUT &lt;taskId&gt; <span class="o">[</span>lines<span class="o">]</span> - View task output
TASK CANCEL &lt;taskId&gt; - Cancel task
TASK REMOVE &lt;taskId&gt; - Remove task
ASR VIEWCMD &lt;number of images&gt; - View <span class="nb">command</span> used to create a machine
!! - Repeat last <span class="nb">command</span>
</pre></div>
</div>
<p>Si, por ejemplo, la instancia de NodeODM no estaba activa cuando se inició ClusterODM, podríamos enumerar los nodos y ver algo de la siguiente manera</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># NODE LIST</span>
<span class="m">1</span><span class="o">)</span> localhost:3000 <span class="o">[</span>offline<span class="o">]</span> <span class="o">[</span><span class="m">0</span>/2<span class="o">]</span> &lt;version <span class="m">1</span>.5.3&gt; <span class="o">[</span>L<span class="o">]</span>
</pre></div>
</div>
<p>Para solucionar esto, podemos iniciar nuestro nodo local (si aún no lo ha hecho) y luego realizar una <code class="docutils literal notranslate"><span class="pre">NODE</span> <span class="pre">UPDATE</span></code></p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># NODE UPDATE</span>
OK
<span class="c1"># NODE LIST</span>
<span class="m">1</span><span class="o">)</span> localhost:3000 <span class="o">[</span>online<span class="o">]</span> <span class="o">[</span><span class="m">0</span>/2<span class="o">]</span> &lt;version <span class="m">1</span>.5.3&gt; <span class="o">[</span>L<span class="o">]</span>
</pre></div>
</div>
</div>
<div class="section" id="accessing-the-logs">
<h3>Acceder a los registros<a class="headerlink" href="#accessing-the-logs" title="Enlazar permanentemente con este título"></a></h3>
<p>Mientras se ejecuta un proceso, también es posible enumerar las tareas y ver el resultado de la tarea</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># TASK LIST</span>
<span class="c1"># TASK OUTPUT &lt;taskId&gt; [lines]</span>
</pre></div>
</div>
</div>
<div class="section" id="autoscaling-clusterodm">
<h3>Ajuste de escala automático de ClusterODM<a class="headerlink" href="#autoscaling-clusterodm" title="Enlazar permanentemente con este título"></a></h3>
<p>ClusterODM también incluye la opción de escalar automáticamente en múltiples plataformas, incluidas, hasta la fecha, Amazon y Digital Ocean. Esto permite a los usuarios reducir los costos asociados con las instancias siempre activas, además de poder escalar el procesamiento en función de la demanda.</p>
<p>Para configurar el ajuste de escala automático, debe:</p>
<ul class="simple">
<li><p>Tenga instalada una versión funcional de NodeJS y luego instale ClusterODM</p></li>
</ul>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>git clone https://github.com/OpenDroneMap/ClusterODM
<span class="nb">cd</span> ClusterODM
npm install
</pre></div>
</div>
<ul class="simple">
<li><p>Asegúrese de que Docker-machine esté instalado.</p></li>
<li><p>Configure un bucket compatible con S3 para almacenar resultados.</p></li>
<li><p>Cree un archivo de configuración para <a class="reference external" href="https://github.com/OpenDroneMap/ClusterODM/blob/master/docs/digitalocean.md">DigitalOcean</a> o <a class="reference external" href="https://github.com/OpenDroneMap/ClusterODM/blob/master/docs/aws.md">Amazon Web Services</a>.</p></li>
</ul>
<p>A continuación, puede iniciar ClusterODM con</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>node index.js --asr configuration.json
</pre></div>
</div>
<p>Debería ver algo similar a los siguientes mensajes en la consola</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>info: ASR: DigitalOceanAsrProvider
info: Can write to S3
info: Found docker-machine executable
</pre></div>
</div>
<p>Siempre debes tener al menos un nodo NodeODM estático adjunto a ClusterODM, incluso si planeas usar el escalador automático para todo el procesamiento. Si configura el escalado automático, no puede tener cero nodos y confiar al 100% en el escalador automático. Debe adjuntar un nodo NodeODM para que actúe como el «nodo de referencia»; de lo contrario, ClusterODM no sabrá cómo manejar ciertas solicitudes (para reenviar la interfaz de usuario, para validar opciones antes de activar una instancia, etc.). Para este propósito, debe agregar un nodo NodeODM «ficticio» y bloquearlo</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>telnet localhost <span class="m">8080</span>
&gt; NODE ADD localhost <span class="m">3001</span>
&gt; NODE LOCK <span class="m">1</span>
&gt; NODE LIST
<span class="m">1</span><span class="o">)</span> localhost:3001 <span class="o">[</span>online<span class="o">]</span> <span class="o">[</span><span class="m">0</span>/2<span class="o">]</span> &lt;version <span class="m">1</span>.5.1&gt; <span class="o">[</span>L<span class="o">]</span>
</pre></div>
</div>
<p>De esta forma, todas las tareas se reenviarán automáticamente al escalador automático.</p>
</div>
</div>
<div class="section" id="limitations">
<h2>Limitaciones<a class="headerlink" href="#limitations" title="Enlazar permanentemente con este título"></a></h2>
<p>Las mallas texturizados 3D actualmente no son fusionadas como parte del flujo de trabajo (solo las nubes de puntos, DEMs y las ortofotos lo son)</p>
<p>Los GCP son totalmente compatibles, sin embargo, debe haber al menos 3 puntos de GCP en cada submodelo para que se lleve a cabo la georreferenciación. Si un submodelo tiene menos de 3 GCP, en su lugar se usará una combinación de los GCP restantes + datos EXIF (que será menos precisa). Recomendamos utilizar el archivo <cite>ʻimage_groups.txt`</cite> para controlar con precisión la división del submodelo cuando se utilizan GCP.</p>
</div>
<div class="section" id="acknowledgments">
<h2>Agradecimientos<a class="headerlink" href="#acknowledgments" title="Enlazar permanentemente con este título"></a></h2>
<p>Felicitaciones para Pau y la gente de Mapillary por sus increíbles contribuciones a OpenDroneMap a través de su código OpenSfM, que es un componente clave del proceso de split-merge. Esperamos ampliar aún más los límites de OpenDroneMap y ver qué tan grande es el conjunto de datos que podemos procesar.</p>
<p><a class="reference external" href="https://github.com/opendronemap/docs#how-to-make-your-first-contribution">Aprende a editar</a> y ayuda a mejorar <a class="reference external" href="https://github.com/OpenDroneMap/docs/blob/publish/source/large.rst">esta página</a>!</p>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../resources/" class="btn btn-neutral float-right" title="Referencias adicionales" accesskey="n" rel="next">Siguiente <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="../masks/" class="btn btn-neutral float-left" title="Usar máscaras de imagen" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Anterior</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&#169; Derechos de autor 2020, OpenDroneMap.
</p>
</div>
Construido con <a href="https://www.sphinx-doc.org/">Sphinx</a> usando un
<a href="https://github.com/readthedocs/sphinx_rtd_theme">tema</a>
proporcionado por <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>