我有一个定制的web服务器运行,我使用它来扫描文档。要激活扫描仪并将图像加载到屏幕上,我有一个扫描按钮,它链接到具有以下图像标记的页面:
<img src="http://myserver/archive/location/name.jpg?scan" />当服务器接收到对?scan文件的请求时,它会流式传输以下命令的输出,并将其写入所请求位置的磁盘。
scanimage --resolution 150 --mode Color | convert - jpg:-这工作得很好,我对这个简单的设置很满意。问题是convert (ImageMagick)会缓冲扫描图像的输出,并且只有在扫描完成时才会输出jpeg图像。这样做的结果是网页长时间加载,并有超时的风险。它还阻止了我在扫描图像时看到它,否则这应该是可能的,因为这正是基线编码的jpeg图像在慢速连接上显示的方式。
我的问题是:有没有可能在不缓冲图像的情况下进行jpeg编码,或者操作本身就是全局的?如果可能,我可以使用哪些工具?我的一个想法是对8行的条带进行单独编码,但我不知道如何将这些块放在一起。如果不可能,有没有其他的压缩格式允许这种流水线编码?我唯一的限制是主流浏览器必须支持这种格式。
谢谢!
发布于 2011-04-22 20:40:40
你想用一条空间填充曲线来细分图像。sfc递归将曲面分解成更小的瓦片,由于它的分形维数,将二维复杂度降低到一维复杂度。当你对图像进行细分时,你可以使用这条曲线来连续扫描图像。或者您可以使用BFS和某种类型的图像低频细节过滤器来连续扫描更高分辨率的图像。你想查找Nick的空间索引,希尔伯特曲线四叉树博客,但我认为你不能把这些瓦片和一个jpg格式(cat?)放在一起。或者你可以不断降低分辨率?
scanimage --resolution [1-150] --mode Color | convert - jpg:-https://stackoverflow.com/questions/5754484
复制相似问题