使用PHP、GD、XML和Javascript的在线图像幻灯片

使用PHP、GD、XML和Javascript的在线图像幻灯片,php,javascript,xml,slideshow,php-gd,Php,Javascript,Xml,Slideshow,Php Gd,我编写了一些代码,通过1000多帧的图像序列自动跟踪许多对象。通过我的算法,对象边界和中心以xml格式输出。我正在制作一个网站来展示我的结果,我想有一个正常播放,暂停,前进,后退功能导航幻灯片。我目前已经设置了一个php javascript循环框架队列。它的工作原理是让10帧包含图像1-10,然后当用户想要查看图像2时,更改视图并将图像11加载到帧1中,依此类推。这种循环队列样式对于正常的滚动效果很好,但是我想每100毫秒更改一次图像,它就会停滞不前。在这方面有更好的方法吗 我的速度减慢的主要

我编写了一些代码,通过1000多帧的图像序列自动跟踪许多对象。通过我的算法,对象边界和中心以xml格式输出。我正在制作一个网站来展示我的结果,我想有一个正常播放,暂停,前进,后退功能导航幻灯片。我目前已经设置了一个php javascript循环框架队列。它的工作原理是让10帧包含图像1-10,然后当用户想要查看图像2时,更改视图并将图像11加载到帧1中,依此类推。这种循环队列样式对于正常的滚动效果很好,但是我想每100毫秒更改一次图像,它就会停滞不前。在这方面有更好的方法吗

我的速度减慢的主要原因是,我的图像是从包含大量数据点的xml文件在GD中动态绘制的。我正在使用file_get_contents和simplexmlement函数将数据获取到数组中,然后使用imagepolygon将它们打印到图像上。有更好的方法吗


每个图像约为1400 x 900,其中包含30-500个对象,这取决于它在序列中的距离。我曾尝试存储物理绘制的图像,但由于用户需要能够隔离对象1-10或3,7,8-11,这是不可能的,因为排列的数量太多。

我将抛出一些头脑风暴式的想法:

  • 将对象边界绘制为设置了高度和宽度的相对定位div。这样,您就不必为每个可能的组合生成图像。可以为页面上任何给定的动态对象启用对象跟踪。缺点是速度较慢的客户端可能会缓慢渲染500个div

  • 另一种减少动态渲染需求的方法是将每个对象的所有跟踪帧(一次)渲染为透明背景(PNG或GIF)上的多边形。查看帧时,将所有适当的对象跟踪帧分层到背景层上。没有渲染问题,只是客户端加载500个图像时的加载延迟

  • 不要每次都解析XML文件,而是创建一个包含文件中所有数据点的PHP数组

  • 为服务器配备更快的处理器和大量RAM

  • 就像我说的-随机的想法。也许它们让你思考,也许它们只是我思考的乐趣。祝你好运