Pregunta

Escribí algún código para rastrear automáticamente muchos objetos a través de una secuencia de imagen de cuadro de 1000+. Los límites y los centros del objeto se producen en XML por mi algoritmo. Estoy haciendo un sitio web para mostrar mis resultados y me gustaría tener una presentación de diapositivas navegable con las características normales de juego, pausa, avance, rebobinado. Actualmente tengo una cola de trama circular PHP-JavaScript configurada. Funciona con 10 marcos contiene imágenes 1-10, luego, cuando el usuario desea ver las imágenes 2, cambie la vista y cargue la imagen 11 en el cuadro 1 y así sucesivamente. Este estilo de cola circular funciona bien para el desplazamiento normal, pero me gustaría cambiar la imagen cada 100 ms y se atasca. ¿Hay una mejor manera de hacer esto de este lado?

Mi principal fuente de desaceleración es que mis imágenes se trazan dinámicamente en GD de un archivo XML que contiene una gran cantidad de puntos de datos. Estoy usando file_get_contents y las funciones de SimpleMlelement para poner los datos en matrices y luego trazarlos en una imagen usando ImagePolygon. ¿Hay una mejor manera de hacer esto?

Cada imagen es de aproximadamente 1400 por 900 y tiene entre 30 y 500 objetos dependiendo de qué tan lejos esté en la secuencia. He intentado almacenar imágenes trazadas físicamente, pero dado que los usuarios deben poder aislar los objetos 1-10 o 3,7,8-11, esto no es posible debido a la cantidad de permutaciones.

¿Fue útil?

Solución

Voy a tirar un par de ideas de lluvia de ideas:

  1. Dibuje los límites del objeto como divs relativamente posicionados con altura y ancho establecido. De esta manera, no tiene que generar imágenes para cada combinación posible. El seguimiento de objetos se puede activar para cualquier objeto dado en la marcha en la página. La desventaja es que los clientes más lentos podrían hacer que 500 divs lentamente.

  2. Otra forma de reducir la necesidad de renderizar la mosca: renderizar (una vez) todos los marcos de seguimiento para cada objeto como el polígono en un fondo transparente (PNG o GIF). Cuando se ve el marco, cubra todos los marcos de seguimiento de objetos apropiados sobre la capa de fondo. Sin problema de representación, solo un retraso de carga mientras el cliente carga 500 imágenes.

  3. En lugar de analizar el archivo XML cada vez, cree una matriz PHP con todos los puntos de datos en un archivo de inclusión.

  4. Obtenga un procesador más rápido y mucha RAM para su servidor.

Como dije, ideas aleatorias. Tal vez te hacen pensar, tal vez fueron divertidos para mí. Buena suerte.

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