¿Existe un algoritmo para aplicar a una imagen que muestre lo que vería alguien que necesita corrección de la visión?

Ciertamente, si tiene un mapa de Profundidad exacto.

Idealmente, si un objeto está enfocado, produce una imagen nítida y resuelta en la retina y, en consecuencia, en la corteza visual.

Si no, sin embargo, observamos una mancha o neblina. Este efecto se debe en parte (y principalmente) a la función de transferencia óptica de un ojo. Piénselo de esta manera: ¿Cómo aparecería en su ojo un solo píxel o un punto brillante (en su televisor en particular)? ¿Particularmente en un cuarto oscuro? Probablemente parecería borroso. Este efecto aumenta a medida que aumenta la discapacidad visual.

Entonces, suponiendo que sea un estudiante de CV, estos serían los pasos que seguiría:

1. Obtenga el mapa de profundidad.

2. Entender cómo se modelan las funciones de desenfoque (gaussiano, exponencial, rectangular) y los parámetros de los que dependen.

3. Encuentre la relación entre estos parámetros y la distancia (mapa de profundidad). Supongo que esta relación sería empírica, después de todo, cada ojo es diferente.

4. Realice desenfoque localizado, con los parámetros que varían en función de la distancia.

Avanzado: puede comenzar a modelar diferentes propiedades del HVS en este. Examine la función de sensibilidad al contraste, la adaptación a la luz, la adaptación a la oscuridad, etc. Esto se extiende más allá del alcance de esta respuesta.

¡Buena suerte!

Ciertamente puedes programarlo. Todo lo que necesita es un modelo matemático (con ciertas propiedades) de la transformación que especifica la prescripción.

La receta describe cómo ‘distorsionar inversamente’ la imagen, para que la propia distorsión del ojo del paciente produzca una imagen normal. Por lo tanto, su programa necesitará aplicar el inverso del modelo matemático de la prescripción a la imagen normal para obtener la imagen tal como la vería el ojo sin ayuda del paciente.

Depende de qué tan lejos esté el objeto del espectador. Pero habrá zonas borrosas en las zonas periféricas dependiendo de la condición.

No hay un algoritmo prefabricado con funciones de complemento que haga esto. Pero se puede calcular a través de algunas físicas relacionadas con la visión. 20/20 significa que se ve claramente a 20 pies. Alguien que sea 10/20 tendría un desenfoque de los focos de cierta cantidad y el resto se verá aún más borroso.