Pregunta

Cómo se aplica una mejora (o cualquier operación que modifica la imagen) a una imagen que se almacena en forma de pirámides, se aplica por primera vez a una cierta capa de pirámide (nivel de zoom actual) y luego se vuelve a aplicar a una capa diferenteSi el usuario se acerca o aleje, o se aplica la mejora de todos a la vez a la pirámide completa, o hay algún algoritmo utilizando cuál puede propagar eficientemente el efecto de la mejora en otras capas de pirámide.

Quiero saber cuál es la mejor manera posible de hacer esto.

¿Fue útil?

Solución

Tienes dos buenas opciones:

  1. Aplicar acción sobre la resolución más alta y recrear las resoluciones más bajas según sea necesario (nivel actual y otros niveles cuando se seleccionan).

  2. Mantener una pila de acciones, aplique solo al nivel actual, cuando el nivel de conmutación aplique una pila completa a ese nivel.

  3. En ambas opciones, todos los niveles no actuales * se pueden almacenar en archivos y cargarse a la memoria solo si se selecciona ese nivel. (* Excepto la resolución más alta en la opción 1 que debe mantenerse en la memoria.)

    La opción 1 es más precisa: algunas acciones pueden ser menos precisas si se aplica directamente a las resoluciones más bajas.

    Si su nivel actual no cambia a menudo y las acciones son lo suficientemente rápidas como para aplicarse en secuencia al nivel actual cuando cambia, entonces la opción 2 da como resultado los menos cálculos y la memoria concurrente en uso.

    Para la opción 1, necesitará un algoritmo de reducción (cambio de tamaño) para calcular el nivel actual de la resolución más alta.

    Para la opción 2, necesitará una pila de acciones (+ parámetros para cada acción).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top