我正在编写一些有限元分析代码,我们常用的故障排除工具之一是定义物理问题的大型矩阵的图形输出。然而,随着问题变得越来越大,我过去使用的工具(libpng、libharu pdf)开始花费极长的时间将图像写入文件。
我的问题:任何人都可以推荐一个高性能的 C++ 图像库,能够有效地以某种标准格式(例如 png、tiff 等)输出大图像吗?此外,要绘制的矩阵非常稀疏,这意味着大部分图像画布实际上是空的;因此,尽管图像的分辨率可能几乎是千兆像素,但每行最多只有 20-30 个像素。
我正在编写一些有限元分析代码,我们常用的故障排除工具之一是定义物理问题的大型矩阵的图形输出。然而,随着问题变得越来越大,我过去使用的工具(libpng、libharu pdf)开始花费极长的时间将图像写入文件。
我的问题:任何人都可以推荐一个高性能的 C++ 图像库,能够有效地以某种标准格式(例如 png、tiff 等)输出大图像吗?此外,要绘制的矩阵非常稀疏,这意味着大部分图像画布实际上是空的;因此,尽管图像的分辨率可能几乎是千兆像素,但每行最多只有 20-30 个像素。
我会尝试http://www.openexr.com/ OpenEXR 带有一个用于读写的 SDK。I/O 永远不需要将整个位图保存在内存中。
libvips是一个古老的图像处理库,专门解决这个问题。