Calcular modelo de cámara (Representación cartográfica de realidad)

Resumen

Estima el modelo de cámara exterior e interior a partir del encabezado de EXIF de la imagen sin procesar y refina los modelos de cámara. A continuación, el modelo se aplica al dataset de mosaico con una opción para utilizar un modelo de superficie digital (DSM) de alta resolución y generado por la herramienta para conseguir una mejor ortorrectificación.

Esto resulta especialmente útil para imágenes de UAV y UAS, en las que los modelos de cámara exteriores e interiores son gruesos o no están definidos.

Uso

  • Un flujo de trabajo típico podría incluir ejecutar dos veces la herramienta Calcular modelo de cámara: una con la opción Estimar modelo de cámara activada y especificando un valor en el parámetro Tabla de puntos de control de salida y otra con el parámetro Refinar modelo de cámara activado y utilizando la salida desde la primera ejecución como valor del parámetro Tabla de puntos de enlace de entrada. El objetivo de este flujo de trabajo es realizar primero una estimación rápida del modelo de cámara y, a continuación, crear un modelo de cámara más preciso.

  • Cuando el parámetro Precisión de ubicación de GPS está establecido en Precisión de GPS muy alta, los parámetros de orientación de las imágenes se ajustarán y las mediciones GPS permanecerán fijas. Además, no se requieren puntos de control del terreno (GCP) si se especifica esta opción. Los GCP se marcarán como puntos de verificación en el ajuste.

Parámetros

EtiquetaExplicaciónTipo de datos
Dataset de mosaico de entrada

Dataset de mosaico sobre el que se construirá y calculará el modelo de cámara.

Mosaic Dataset; Mosaic Layer
DSM de salida
(Opcional)

Un dataset ráster DSM generado a partir de las imágenes ajustadas del dataset de mosaico. Si se activa Aplicar ajuste, este MDS sustituirá al MDE en la función geométrica para lograr una mejor ortorectificación.

Raster Dataset
Exactitud de ubicación de GPS
(Opcional)

Especifica el nivel de precisión de las imágenes de entrada. La herramienta buscará imágenes en la vecindad para calcular los puntos de geocodificación y aplicará automáticamente una estrategia de ajuste basada en el nivel de precisión.

  • Precisión de GPS altaLa precisión de GPS es de 0 a 10 metros y la herramienta utiliza un máximo de 4 × 3 imágenes.
  • Precisión de GPS mediaLa precisión de GPS es de 10 a 20 metros y la herramienta utiliza un máximo de 4 × 6 imágenes.
  • Precisión de GPS bajaLa precisión de GPS es de 20 a 50 metros y la herramienta utiliza un máximo de 4 × 12 imágenes.
  • Precisión de GPS muy bajaLa precisión de GPS es superior a 50 metros y la herramienta utiliza un máximo de 4 × 20 imágenes.
  • Precisión de GPS muy altaLas imágenes se recogieron con un GPS diferencial de alta precisión, como RTK o PPK. Esta opción mantendrá fijas las ubicaciones de las imágenes durante el ajuste de bloques.
String
Estimar modelo de cámara
(Opcional)

Especifica si el modelo de cámara se estimará calculando el ajuste basado en ocho veces la resolución de origen del dataset de mosaico. Calcular el ajuste en este nivel será más rápido, pero menos preciso.

  • Activado: se estimará el modelo de cámara. Esta es la opción predeterminada.
  • Desactivado: no se estimará el modelo de cámara.
Boolean
Delimitar modelo de cámara
(Opcional)

Especifica si el modelo de cámara se refinará calculando el ajuste a la resolución del dataset de mosaico. Calcular el ajuste en este nivel proporcionará el resultado más preciso.

  • Activado: el modelo de cámara se refinará calculando el ajuste a la resolución de origen. Esta es la opción predeterminada.
  • Desactivado: el modelo de la cámara no se refinará. Esta opción será más rápida, por lo que resulta adecuada si es necesario realizar el cálculo con la resolución de origen.
Boolean
Aplicar ajuste
(Opcional)

Especifica si el ajuste calculado se aplicará al dataset de mosaico de entrada.

  • Desactivado: el ajuste calculado se aplicará al dataset de mosaico de entrada. Aunque no es obligatorio, se recomienda especificar esta opción. Esta es la opción predeterminada.
  • Desactivado: el ajuste calculado no se aplicará al dataset de mosaico de entrada.
Boolean
Residual máximo
(Opcional)

El valor residual máximo permitido para mantener un punto de control calculado como punto de control válido. El valor predeterminado es 5.

Double
Resolución de punto de enlace inicial
(Opcional)

actor de resolución con el que se generarán los puntos de enlace al estimar el modelo de cámara. El valor predeterminado es 8, lo que significa ocho veces la resolución de píxeles de origen.

Para imágenes en las que solo existe una pequeña diferencia de entidades como, por ejemplo, campos de agricultura, se podrá utilizar un valor más bajo, por ejemplo, 2.

Double
Tabla de puntos de control de salida
(Opcional)

La clase de entidad de puntos de control opcional.

Feature Class
Tabla de solución de salida
(Opcional)

La tabla de solución de ajustes opcional. La tabla de soluciones contiene la raíz cuadrática media (RMS) del error de ajuste y la matriz de soluciones.

Table
Tabla de puntos de solución de salida
(Opcional)

La clase de entidad de puntos de solución opcional. Los puntos de solución son los puntos de control finales utilizados para generar la solución de ajuste.

Feature Class
Ruta de vuelo de salida
(Opcional)

La clase de entidad de línea de la ruta de vuelo opcional.

Feature Class
Superposición máxima de área
(Opcional)

Porcentaje de superposición entre dos imágenes para considerarlas duplicadas.

Por ejemplo, si el valor es 0,9, significa que si una imagen queda cubierta al 90 por ciento por otra imagen, esta se considerará duplicada y se eliminará.

Double
Cobertura mínima de puntos de control
(Opcional)

Porcentaje que indica la cobertura del punto de control en una imagen. Si la cobertura es inferior al porcentaje mínimo, la imagen quedará sin resolver y se eliminará. El valor predeterminado es 0.

Double
Quitar imágenes fuera de franja
(Opcional)

Especifica si las imágenes se eliminarán automáticamente en el caso de que estén demasiado alejadas de la línea de vuelo.

  • Desactivado: las imágenes no se quitarán. Esta es la opción predeterminada.
  • Activado: las imágenes que estén demasiado alejadas de la línea de vuelo se eliminarán.
Boolean
Tabla de puntos de enlace de entrada
(Opcional)

Tabla de puntos de enlace que se utilizará para calcular el modelo de cámara. Si no se proporciona una tabla de puntos de enlace, la herramienta calculará los puntos de enlace y estimará el modelo de cámara.

Feature Class
Opciones adicionales
(Opcional)

Opciones adicionales para el motor de ajuste. Las especificaciones de muchas de las opciones las proporciona el proveedor de datos.

Entre las opciones se incluyen las siguientes:

  • CalibrateF: la distancia focal del sensor se calibrará para utilizarla en el ajuste del bloque. Asigne un valor de 1 para calibrar la distancia focal, o 0 para no calibrar. El valor predeterminado es 1.
  • CalibratePP: se calibrará el punto principal en el ajuste de bloque. Asigne un valor de 1 para calibrar, o 0 para no calibrar. El valor predeterminado es 1.
  • CalibrateP: se calibrarán los parámetros de distorsión radial en el ajuste de bloque. Asigne un valor de 1 para calibrar, o 0 para no calibrar. El valor predeterminado es 1.
  • CalibrateK: se calibrarán los parámetros de distorsión tangencial en el ajuste de bloque. Asigne un valor de 1 para calibrar, o 0 para no calibrar. El valor predeterminado es 1.
  • EstimateOPK: los ángulos Omega, Phi y Kappa se calibrarán para definir la rotación entre el sistema de coordenadas de la imagen y el sistema de coordenadas proyectado. Asigna un valor de 0 para utilizar los ángulos de orientación (balanceo, inclinación y viraje) de los metadatos del UAV como iniciales de actitud en el ajuste de bloques. Utilice un valor de 1 para estimar los ángulos de orientación y utilice los ángulos de orientación estimados como iniciales de actitud en el ajuste de bloque. El valor predeterminado es 1.
    Nota:

    Para la mayoría de las cámaras DJI y Skydio, se recomienda un valor de 0.

  • APrioriAccuracyX: precisión de la coordenada x proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveX. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyY: precisión de la coordenada y proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveY. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyZ: precisión de la coordenada z proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveZ. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyXY: precisión de la coordenada plana proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveX. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyXYZ: precisión de la localización de la imagen proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveX. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyOmega: la precisión del ángulo omega proporcionado por el sistema de orientación de posición (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyPhi: la precisión del ángulo fi proporcionado por el sistema de orientación de posición (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyOmegaPhi: precisión del ángulo omega o Phi proporcionado por el sistema de orientación de posición (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyKappa: precisión del ángulo kappa proporcionado por el sistema de orientación de posición (POS) aéreo. Las unidades están en grados decimales.
  • ComputeImagePosteriorStd: se calculará la desviación típica posterior de la localización y orientación de la imagen tras el ajuste. Asigna un valor de 1 para calcular, o 0 para no computar. El valor predeterminado es 1.
  • ComputeSolutionPointPosteriorStd: se calculará la desviación típica posterior de los puntos de solución tras el ajuste. Asigna un valor de 1 para calcular, o 0 para no computar. El valor predeterminado es 0.
  • rollingshutter: los datos del UAV se procesan en modo de obturador rodante. Asigna un valor de 1 para procesar datos UAV utilizando el modo de obturador rodante. El valor predeterminado es 0 (no utilice el modo de obturador rodante).

Value Table

Salida derivada

EtiquetaExplicaciónTipo de datos
Modelo de cámara de salida

Modelo de la cámara de salida.

Mosaic Dataset; Mosaic Layer

arcpy.rm.ComputeCameraModel(in_mosaic_dataset, {out_dsm}, {gps_accuracy}, {estimate}, {refine}, {apply_adjustment}, {maximum_residual}, {initial_tiepoint_resolution}, {out_control_points}, {out_solution_table}, {out_solution_point_table}, {out_flight_path}, {maximum_overlap}, {minimum_coverage}, {remove}, {in_control_points}, {options})
NombreExplicaciónTipo de datos
in_mosaic_dataset

Dataset de mosaico sobre el que se construirá y calculará el modelo de cámara.

Mosaic Dataset; Mosaic Layer
out_dsm
(Opcional)

Un dataset ráster DSM generado a partir de las imágenes ajustadas del dataset de mosaico. Si apply_adjustment se ha establecido en APPLY, este DSM reemplazará el DEM en la función geométrica a fin de conseguir una mejor ortorrectificación.

Raster Dataset
gps_accuracy
(Opcional)

Especifica el nivel de precisión de las imágenes de entrada. La herramienta buscará imágenes en la vecindad para calcular los puntos de geocodificación y aplicará automáticamente una estrategia de ajuste basada en el nivel de precisión.

  • HIGHLa precisión de GPS es de 0 a 10 metros y la herramienta utiliza un máximo de 4 × 3 imágenes.
  • MEDIUMLa precisión de GPS es de 10 a 20 metros y la herramienta utiliza un máximo de 4 × 6 imágenes.
  • LOWLa precisión de GPS es de 20 a 50 metros y la herramienta utiliza un máximo de 4 × 12 imágenes.
  • VERY_LOWLa precisión de GPS es superior a 50 metros y la herramienta utiliza un máximo de 4 × 20 imágenes.
  • VERY_HIGHLas imágenes se recogieron con un GPS diferencial de alta precisión, como RTK o PPK. Esta opción mantendrá fijas las ubicaciones de las imágenes durante el ajuste de bloques.
String
estimate
(Opcional)

Especifica si el modelo de cámara se estimará calculando el ajuste basado en ocho veces la resolución de origen del dataset de mosaico. Calcular el ajuste en este nivel será más rápido, pero menos preciso.

  • ESTIMATESe estimará el modelo de cámara. Esta es la opción predeterminada.
  • NO_ESTIMATENo se estimará el modelo de cámara.
Boolean
refine
(Opcional)

Especifica si el modelo de cámara se refinará calculando el ajuste a la resolución del dataset de mosaico. Calcular el ajuste en este nivel proporcionará el resultado más preciso.

  • REFINEEl modelo de cámara se refinará calculando el ajuste a la resolución de origen. Esta es la opción predeterminada.
  • NO_REFINEEl modelo de la cámara no se refinará. Esta opción será más rápida, por lo que resulta adecuada si es necesario realizar el cálculo con la resolución de origen.
Boolean
apply_adjustment
(Opcional)

Especifica si el ajuste calculado se aplicará al dataset de mosaico de entrada.

  • APPLYEl ajuste calculado se aplicará al dataset de mosaico de entrada. Aunque no es obligatorio, se recomienda especificar esta opción. Esta es la opción predeterminada.
  • NO_APPLYEl ajuste calculado no se aplicará al dataset de mosaico de entrada.
Boolean
maximum_residual
(Opcional)

El valor residual máximo permitido para mantener un punto de control calculado como punto de control válido. El valor predeterminado es 5.

Double
initial_tiepoint_resolution
(Opcional)

actor de resolución con el que se generarán los puntos de enlace al estimar el modelo de cámara. El valor predeterminado es 8, lo que significa ocho veces la resolución de píxeles de origen.

Para imágenes en las que solo existe una pequeña diferencia de entidades como, por ejemplo, campos de agricultura, se podrá utilizar un valor más bajo, por ejemplo, 2.

Double
out_control_points
(Opcional)

La clase de entidad de puntos de control opcional.

Feature Class
out_solution_table
(Opcional)

La tabla de solución de ajustes opcional. La tabla de soluciones contiene la raíz cuadrática media (RMS) del error de ajuste y la matriz de soluciones.

Table
out_solution_point_table
(Opcional)

La clase de entidad de puntos de solución opcional. Los puntos de solución son los puntos de control finales utilizados para generar la solución de ajuste.

Feature Class
out_flight_path
(Opcional)

La clase de entidad de línea de la ruta de vuelo opcional.

Feature Class
maximum_overlap
(Opcional)

Porcentaje de superposición entre dos imágenes para considerarlas duplicadas.

Por ejemplo, si el valor es 0,9, significa que si una imagen queda cubierta al 90 por ciento por otra imagen, esta se considerará duplicada y se eliminará.

Double
minimum_coverage
(Opcional)

Porcentaje que indica la cobertura del punto de control en una imagen. Si la cobertura es inferior al porcentaje mínimo, la imagen quedará sin resolver y se eliminará. El valor predeterminado es 0.

Double
remove
(Opcional)

Especifica si las imágenes se eliminarán automáticamente en el caso de que estén demasiado alejadas de la línea de vuelo.

  • NO_REMOVELas imágenes no se eliminarán. Esta es la opción predeterminada.
  • REMOVELas imágenes que estén demasiado alejadas de la línea de vuelo se eliminarán.
Boolean
in_control_points
(Opcional)

Tabla de puntos de enlace que se utilizará para calcular el modelo de cámara. Si no se proporciona una tabla de puntos de enlace, la herramienta calculará los puntos de enlace y estimará el modelo de cámara.

Feature Class
options
[options,...]
(Opcional)

Opciones adicionales para el motor de ajuste. Las especificaciones de muchas de las opciones las proporciona el proveedor de datos.

Entre las opciones se incluyen las siguientes:

  • CalibrateF: la distancia focal del sensor se calibrará para utilizarla en el ajuste del bloque. Asigne un valor de 1 para calibrar la distancia focal, o 0 para no calibrar. El valor predeterminado es 1.
  • CalibratePP: se calibrará el punto principal en el ajuste de bloque. Asigne un valor de 1 para calibrar, o 0 para no calibrar. El valor predeterminado es 1.
  • CalibrateP: se calibrarán los parámetros de distorsión radial en el ajuste de bloque. Asigne un valor de 1 para calibrar, o 0 para no calibrar. El valor predeterminado es 1.
  • CalibrateK: se calibrarán los parámetros de distorsión tangencial en el ajuste de bloque. Asigne un valor de 1 para calibrar, o 0 para no calibrar. El valor predeterminado es 1.
  • EstimateOPK: los ángulos Omega, Phi y Kappa se calibrarán para definir la rotación entre el sistema de coordenadas de la imagen y el sistema de coordenadas proyectado. Asigna un valor de 0 para utilizar los ángulos de orientación (balanceo, inclinación y viraje) de los metadatos del UAV como iniciales de actitud en el ajuste de bloques. Utilice un valor de 1 para estimar los ángulos de orientación y utilice los ángulos de orientación estimados como iniciales de actitud en el ajuste de bloque. El valor predeterminado es 1.
    Nota:

    Para la mayoría de las cámaras DJI y Skydio, se recomienda un valor de 0.

  • APrioriAccuracyX: precisión de la coordenada x proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveX. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyY: precisión de la coordenada y proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveY. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyZ: precisión de la coordenada z proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveZ. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyXY: precisión de la coordenada plana proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveX. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyXYZ: precisión de la localización de la imagen proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveX. Esta opción no se recomienda para la mayoría de los datos de UAV.
  • APrioriAccuracyOmega: la precisión del ángulo omega proporcionado por el sistema de orientación de posición (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyPhi: la precisión del ángulo fi proporcionado por el sistema de orientación de posición (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyOmegaPhi: precisión del ángulo omega o Phi proporcionado por el sistema de orientación de posición (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyKappa: precisión del ángulo kappa proporcionado por el sistema de orientación de posición (POS) aéreo. Las unidades están en grados decimales.
  • ComputeImagePosteriorStd: se calculará la desviación típica posterior de la localización y orientación de la imagen tras el ajuste. Asigna un valor de 1 para calcular, o 0 para no computar. El valor predeterminado es 1.
  • ComputeSolutionPointPosteriorStd: se calculará la desviación típica posterior de los puntos de solución tras el ajuste. Asigna un valor de 1 para calcular, o 0 para no computar. El valor predeterminado es 0.
  • rollingshutter: los datos del UAV se procesan en modo de obturador rodante. Asigna un valor de 1 para procesar datos UAV utilizando el modo de obturador rodante. El valor predeterminado es 0 (no utilice el modo de obturador rodante).

Value Table

Salida derivada

NombreExplicaciónTipo de datos
out_mosaic_dataset

Modelo de la cámara de salida.

Mosaic Dataset; Mosaic Layer

Muestra de código

Ejemplo 1 de ComputeCameraModel (ventana de Python)

Se trata de un ejemplo de Python para la función ComputeCameraModel.

import arcpy 

arcpy.ComputeCameraModel_rm("c:\data\fgdb.gdb\md", "output_DSM.tif", 
                                    "HIGH", "ESTIMATE", "REFINE", "APPLY", "5")

Información de licenciamiento

  • Basic: No
  • Standard: Requiere ArcGIS Reality for ArcGIS Pro
  • Advanced: Sí

Temas relacionados