我一直在寻找原始图像支持,并找到了这个库(jrawio-1.6.1),它扩展了 imageio 以添加原始支持。它似乎有效,但速度非常慢。我见过跑得更快的蜗牛。我的代码在几秒钟内处理 Jpeg,而处理一个不太大的 .cr2 文件或 .nef 则需要几分钟。我可能是错的,但我认为它甚至减慢了 tiff 处理速度。最后一个 tiff 文件非常大,因此这也可能是问题所在。
我对这个库的另一个问题是它的开发似乎已于 2009 年停止。
我的替代方案是什么?我尝试包含 JAI,但某些库在导出到可执行 jar 后导致应用程序崩溃。
问题似乎出在 imgScalr 上,因为调整大小和旋转速度很慢。
Nikon D300 的 11.6MB nef 文件需要 1 分 35 秒才能将大小调整到 20%,需要 38 秒才能将图像旋转 90 度。
但这对我来说没有意义,因为这些图像被旋转和调整大小为 bufferedImages,而不是其原始格式。这可能是 imgScalr 的大小问题吗?
显然这与图像颜色类型有关。如果我将图像转换为 RGB,调整大小和旋转会很快,但转换为 RGB 需要很长时间。我正在使用 ColorConvertOp 进行转换。
看来 jrawio 库不是问题。问题在于原始图像的颜色格式。 Scalr 使用 ARGB 或 RGB 颜色格式的速度要快得多,如果您在修改图像之前将图像转换为 ARGB 或 RGB,则修改速度将与 JPEG 一样快。然而,转换本身需要与其中一项修改一样长的时间。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)