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 el parámetro Estimar modelo de cámara activado y especificando un valor para el parámetro Tabla de puntos de control de salida, y otra con el parámetro Delimitar modelo de cámara activado y utilizando la salida de la primera ejecución como el valor para el 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 de GPS se mantendrán fijas. Además, no se requieren puntos de control del terreno (GCP) cuando esta opción está seleccionada. Los GCP se marcarán como puntos de verificación en el ajuste.

Parámetros

EtiquetaExplicaciónTipo de datos
Dataset de mosaico de entrada

El dataset de mosaico sobre el que se va a generar y calcular el modelo de cámara.

Se recomienda ejecutar primero la herramienta Aplicar ajuste de bloques en el dataset de mosaico de entrada.

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 ha activado Aplicar ajuste, este DSM reemplazará el DEM en la función geométrica a fin de conseguir una mejor ortorrectificació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 coincidentes 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 4x3 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 4x6 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 4x12 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 4x20 imágenes.
  • Precisión de GPS muy altaLas imágenes se recopilaron con GPS diferenciales de alta precisión, por ejemplo, RTK o PPK. Esta opción contendrá ubicaciones de imágenes fijas 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 a 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 delimitará calculando el ajuste con la resolución del dataset de mosaico. Calcular el ajuste a este nivel proporcionará el resultado más preciso.

  • Activado: el modelo de cámara se delimitará calculando el ajuste con la resolución de origen. Esta es la opción predeterminada.
  • Desactivado: no se refinará el modelo de cámara. Esta opción será más rápida, por lo que resulta adecuada si no necesita 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.

  • Activado: el ajuste calculado se aplicará al dataset de mosaico de entrada. 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)

El factor 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 solución contiene el error cuadrático medio (RMS) del ajuste y la matriz de solución.

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)

El 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)

El 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 eliminará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)

La tabla de puntos de enlace utilizada para calcular el modelo de cámara. Si no se especifica una tabla de puntos de enlace, la herramienta calculará sus propios puntos de enlace y estimará el modelo de cámara.

Feature Class
Opciones adicionales
(Opcional)

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

Entre las opciones se incluyen las siguientes:

  • CalibrateF: la longitud focal del sensor se calibrará para su uso en el ajuste de bloques. Asigne un valor de 1 para la calibración de la longitud focal o 0 para no calibrar. El valor predeterminado es 1.
  • CalibratePP: el punto principal del ajuste de bloques se calibrará. Asigne un valor de 1 para la calibración o 0 para no calibrar. El valor predeterminado es 1.
  • CalibrateP: se calibrarán los parámetros de distorsión radiales en el ajuste de bloques. Asigne un valor de 1 para la calibración o 0 para no calibrar. El valor predeterminado es 1.
  • CalibrateK: se calibrarán los parámetros de distorsión tangenciales en el ajuste de bloques. Asigne un valor de 1 para la calibración o 0 para no calibrar. El valor predeterminado es 1.
  • EstimateOPK: se calibrarán los ángulos Omega, Fi y Kappa para definir la rotación entre el sistema de coordenadas de imagen y el sistema de coordenadas proyectadas. Asigne un valor de 0 para utilizar ángulos de orientación (rotación, inclinación y viraje) de los metadatos UAV como iniciales de posición en el ajuste de bloques. Utilice un valor de 1 para estimar los ángulos de orientación y utilice ángulos de orientación estimados como iniciales de posición en el ajuste de bloques. El valor predeterminado es 1.
    Nota:

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

  • APrioriAccuracyX: la 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 datos UAV.
  • APrioriAccuracyY: la 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 datos UAV.
  • APrioriAccuracyZ: la 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 datos UAV.
  • APrioriAccuracyXY: la precisión de la coordenada planar proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveX. Esta opción no se recomienda para la mayoría de datos UAV.
  • APrioriAccuracyXYZ: la precisión de la ubicació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 datos UAV.
  • APrioriAccuracyOmega: la precisión del ángulo Omega proporcionada por el Sistema de posición y orientación (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyPhi: la precisión del ángulo Fi proporcionada por el Sistema de posición y orientación (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyOmegaPhi: la precisión de los ángulos Omega o Fi proporcionada por el Sistema de posición y orientación (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyKappa: la precisión del ángulo Kappa proporcionada por el Sistema de posición y orientación (POS) aéreo. Las unidades están en grados decimales.
  • ComputeImagePosteriorStd: se calculará la desviación estándar posterior de la ubicación y orientación de la imagen después del ajuste. Asigne un valor de 1 para calcularlo o 0 para no calcularlo. El valor predeterminado es 1.
  • ComputeSolutionPointPosteriorStd: se calculará la desviación estándar posterior de los puntos de solución después del ajuste. Asigne un valor de 1 para calcularlo o 0 para no calcularlo. El valor predeterminado es 0.

Value Table

Salida derivada

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

El modelo de 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

El dataset de mosaico sobre el que se va a generar y calcular el modelo de cámara.

Se recomienda ejecutar primero la herramienta Aplicar ajuste de bloques en el dataset de mosaico de entrada.

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 coincidentes 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 4x3 imágenes.
  • MEDIUMLa precisión de GPS es de 10 a 20 metros y la herramienta utiliza un máximo de 4x6 imágenes.
  • LOWLa precisión de GPS es de 20 a 50 metros y la herramienta utiliza un máximo de 4x12 imágenes.
  • VERY_LOWLa precisión de GPS es superior a 50 metros y la herramienta utiliza un máximo de 4x20 imágenes.
  • VERY_HIGHLas imágenes se recopilaron con GPS diferenciales de alta precisión, por ejemplo, RTK o PPK. Esta opción contendrá ubicaciones de imágenes fijas 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 a 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 delimitará calculando el ajuste con la resolución del dataset de mosaico. Calcular el ajuste a este nivel proporcionará el resultado más preciso.

  • REFINEEl modelo de cámara se delimitará calculando el ajuste con la resolución de origen. Esta es la opción predeterminada.
  • NO_REFINENo se delimitará el modelo de cámara. Esta opción será más rápida, por lo que resulta adecuada si no necesita 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. 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)

El factor 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 solución contiene el error cuadrático medio (RMS) del ajuste y la matriz de solución.

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)

El 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)

El 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)

La tabla de puntos de enlace utilizada para calcular el modelo de cámara. Si no se especifica una tabla de puntos de enlace, la herramienta calculará sus propios puntos de enlace y estimará el modelo de cámara.

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

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

Entre las opciones se incluyen las siguientes:

  • CalibrateF: la longitud focal del sensor se calibrará para su uso en el ajuste de bloques. Asigne un valor de 1 para la calibración de la longitud focal o 0 para no calibrar. El valor predeterminado es 1.
  • CalibratePP: el punto principal del ajuste de bloques se calibrará. Asigne un valor de 1 para la calibración o 0 para no calibrar. El valor predeterminado es 1.
  • CalibrateP: se calibrarán los parámetros de distorsión radiales en el ajuste de bloques. Asigne un valor de 1 para la calibración o 0 para no calibrar. El valor predeterminado es 1.
  • CalibrateK: se calibrarán los parámetros de distorsión tangenciales en el ajuste de bloques. Asigne un valor de 1 para la calibración o 0 para no calibrar. El valor predeterminado es 1.
  • EstimateOPK: se calibrarán los ángulos Omega, Fi y Kappa para definir la rotación entre el sistema de coordenadas de imagen y el sistema de coordenadas proyectadas. Asigne un valor de 0 para utilizar ángulos de orientación (rotación, inclinación y viraje) de los metadatos UAV como iniciales de posición en el ajuste de bloques. Utilice un valor de 1 para estimar los ángulos de orientación y utilice ángulos de orientación estimados como iniciales de posición en el ajuste de bloques. El valor predeterminado es 1.
    Nota:

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

  • APrioriAccuracyX: la 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 datos UAV.
  • APrioriAccuracyY: la 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 datos UAV.
  • APrioriAccuracyZ: la 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 datos UAV.
  • APrioriAccuracyXY: la precisión de la coordenada planar proporcionada por los metadatos. Las unidades deben coincidir con las de PerspectiveX. Esta opción no se recomienda para la mayoría de datos UAV.
  • APrioriAccuracyXYZ: la precisión de la ubicació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 datos UAV.
  • APrioriAccuracyOmega: la precisión del ángulo Omega proporcionada por el Sistema de posición y orientación (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyPhi: la precisión del ángulo Fi proporcionada por el Sistema de posición y orientación (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyOmegaPhi: la precisión de los ángulos Omega o Fi proporcionada por el Sistema de posición y orientación (POS) aéreo. Las unidades están en grados decimales.
  • APrioriAccuracyKappa: la precisión del ángulo Kappa proporcionada por el Sistema de posición y orientación (POS) aéreo. Las unidades están en grados decimales.
  • ComputeImagePosteriorStd: se calculará la desviación estándar posterior de la ubicación y orientación de la imagen después del ajuste. Asigne un valor de 1 para calcularlo o 0 para no calcularlo. El valor predeterminado es 1.
  • ComputeSolutionPointPosteriorStd: se calculará la desviación estándar posterior de los puntos de solución después del ajuste. Asigne un valor de 1 para calcularlo o 0 para no calcularlo. El valor predeterminado es 0.

Value Table

Salida derivada

NombreExplicaciónTipo de datos
out_mosaic_dataset

El modelo de cámara de salida.

Mosaic Dataset; Mosaic Layer

Muestra de código

Ejemplo 1 de ComputeCameraModel (ventana de Python)

Este es un ejemplo de Python para la herramienta 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