首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >处理150 .jp2图像

处理150 .jp2图像
EN

Stack Overflow用户
提问于 2022-03-01 16:18:52
回答 2查看 354关注 0票数 2

我下载了一张150 at的卫星.jp2图像,我一次只想要一小部分。我将如何将图像平铺成可管理的块呢?仅仅提取图像的一部分也就足够了。

因为我只对Python有点熟悉,所以我看了Pillow和OpenCV库,但是没有成功,因为图像分辨率超过了它们的极限。我还研究了Python的Openslide,但是无法消除错误(无法找到模块'libopenslide-0.dll')。

EN

回答 2

Stack Overflow用户

发布于 2022-03-01 22:48:44

利维普斯能够有效地处理海量图像。

例如,对于这个2.8gb测试映像:

代码语言:javascript
复制
$ vipsheader 9235.jp2
9235.jp2: 107568x79650 uchar, 4 bands, srgb, jp2kload
$ ls -l 9235.jp2
-rw-r--r-- 1 john john 2881486848 Mar  1 22:37 9235.jp2

我看到:

代码语言:javascript
复制
$ /usr/bin/time -f %M:%e \
    vips crop 9235.jp2 x.jpg 10000 10000 1000 1000
190848:0.45

因此,它在0.5s内从110,000 x 80,000像素的jp2图像中获取1,000 x1,000像素块,并且需要不足200 in的内存。

有针对python、ruby、节点等的绑定,所以您不必使用CLI。

在python中,您可以编写:

代码语言:javascript
复制
import pyvips

image = pyvips.Image.new_from_file("9235.jp2")
tile = image.crop(10000, 10000, 1000, 1000)
tile.write_to_file("x.jpg")

这在一定程度上取决于您正在读取的jp2图像。有些是无题的(!)读一段可能会很慢。

也有windows二进制文件,请查看“下载”页面。

如果您在linux上,vipsdisp可以非常快地查看这样的巨大图像。

票数 4
EN

Stack Overflow用户

发布于 2022-03-20 22:09:25

Grok JPEG 2000工具包能够解压缩超大型图像的区域,比如链接到的150 GB图像。

示例命令:

grk_decompress -i FOO.jp2 -o FOO.tif -d 10000,10000,15000,15000 -v

若要将区域(10000,10000,15000,15000)解压缩为TIFF格式,请执行以下操作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71311547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档