Tengo un conjunto de imágenes aéreas, pero no tengo información sobre la cámara original o la resolución angular de las fotos. Necesito de alguna manera disminuir la resolución de las imágenes de una manera que simule el aumento de la distancia. Primero intenté usar imresize
la función de Matlab (con parámetros predeterminados) para diezmar las imágenes en varias escalas, pero ahora me pregunto si esta destrucción es o no la forma correcta de simular la distancia. No quiero que las imágenes se vean más claras de lo que realmente se verían si se aumentara la distancia entre la cámara y el sujeto.
Entonces, ¿alguien sabe si esta es una forma adecuada de simular la distancia o si hay una forma más realista de hacerlo?
Para simular una imagen de resolución nativa en un rango de inclinación adecuado, debe comenzar con un original diezmado adecuadamente y luego simular la pérdida de nitidez. De lo contrario, simulará el GSD en su rango inclinado extendido en lugar del GRD. Dado que la mayoría de las ópticas de imágenes aéreas son telecéntricas, la distorsión y la pérdida de resolución de la lente son generalmente insensibles a la ampliación. Por lo tanto, solo necesita modelar las pérdidas en el sensor MTF y el MTF atmosférico .
Para aplicar la pérdida de MTF simulada, deberá calcular la MTF para una resolución de sensor seleccionada. Sugerencia: el ifov y el tamaño del sensor son directamente proporcionales con la distancia focal, por lo que simplemente puede adivinar dos variables para predecir la tercera y luego ajustar la altitud como desee para obtener una nueva relación GRD/GSD. El desenfoque que debe aplicar es la relación de GRD a GSD.
Hay dos formas de simular el desenfoque y cuál usar es una cuestión de experimentación con su software. Puede aplicar un desenfoque medio o gaussiano (o una combinación de ambos). Puede aplicar el desenfoque antes o después de cambiar el tamaño. Al cambiar el tamaño, asegúrese de especificar un método que no aumente la nitidez. Si está utilizando matlab, tiene la opción de llamar al método imresize(name,'method')
Where que le permite especificar un kernel personalizado . Esto le permitiría aplicar desenfoque gaussiano o medio en el momento del cambio de tamaño.
Cuando el método es una matriz de celdas de dos elementos, define un núcleo de interpolación personalizado. La matriz de celdas tiene la forma {f,w}, donde f es un identificador de función para un kernel de interpolación personalizado y w es el ancho del kernel personalizado. f(x) debe ser cero fuera del intervalo -w/2 <= x < w/2. La función handle f se puede llamar con una entrada escalar o vectorial. Para núcleos de interpolación especificados por el usuario, la imagen de salida puede tener algunos valores ligeramente fuera del rango de valores de píxeles en la imagen de entrada.
Tenga en cuenta que, aunque mi respuesta aquí es correcta, está incompleta. Los sistemas de modelado de calidad de imagen de sensores remotos son complejos y generalmente propietarios. Para conocer los elementos más sutiles de la simulación de detección remota y el análisis de la cadena de imágenes, recomiendo Remote Sensing de Schott o Leachtenauer and Driggers' Surveillance and Reconnaissance Imaging Systems.
Respuesta corta: no puedes hacerlo con una sola imagen.
Respuesta más larga: para simular de manera realista el cambio de distancia, necesita múltiples imágenes tomadas desde múltiples distancias diferentes del sujeto o distorsionar geométricamente la imagen original. La razón detrás de esto es que cambiar físicamente la distancia de su sujeto cambia su perspectiva. Cambiar el tamaño de una sola imagen le permite (hasta cierto punto) simular acercar y alejar con una lente sin cambiar la distancia.
miguel c
miguel c
austin
miguel c
austin