我开始使用GeoPySpark,并正在实现示例笔记本。
我成功地检索到了图像
!curl -o /tmp/B01.jp2 http://sentinel-s2-l1c.s3.amazonaws.com/tiles/32/T/NM/2017/1/4/0/B01.jp2
!curl -o /tmp/B09.jp2 http://sentinel-s2-l1c.s3.amazonaws.com/tiles/32/T/NM/2017/1/4/0/B09.jp2
!curl -o /tmp/B10.jp2 http://sentinel-s2-l1c.s3.amazonaws.com/tiles/32/T/NM/2017/1/4/0/B10.jp2下面是脚本:
import rasterio
import geopyspark as gps
import numpy as np
from pyspark import SparkContext
conf = gps.geopyspark_conf(master="local[*]", appName="sentinel-ingest-example")
pysc = SparkContext(conf=conf)
jp2s = ["/tmp/B01.jp2", "/tmp/B09.jp2", "/tmp/B10.jp2"]
arrs = []
for jp2 in jp2s:
with rasterio.open(jp2) as f: #CRASHES HERE
arrs.append(f.read(1))
data = np.array(arrs, dtype=arrs[0].dtype)
data脚本在我将标记放在这里的地方崩溃,有以下错误:
RasterioIOError: '/tmp/B01.jp2' not recognized as a supported file format.我准确地复制-粘贴了示例代码,在Rasterio文档中的广告甚至是在示例中使用.jp2文件。
我使用的是与pip3一起安装的Rasterio的以下版本。我没有安装Anaconda (扰乱了我的Python环境),也没有安装GDAL (它拒绝安装,如果这是我唯一的解决方案,那将是另一个问题)。
Name: rasterio
Version: 1.1.0
Summary: Fast and direct raster I/O for use with Numpy and SciPy
Home-page: https://github.com/mapbox/rasterio
Author: Sean Gillies
Author-email: sean@mapbox.com
License: BSD
Location: /usr/local/lib/python3.6/dist-packages
Requires: click-plugins, snuggs, numpy, click, attrs, cligj, affine
Required-by: 为什么它拒绝读取.jp2文件?有没有办法把它们转换成有用的东西?或者,您是否知道有任何类似于这些文件的可接受格式的示例文件?
发布于 2022-06-08 09:41:26
我被困在同样的情况下。
我使用了pyvips包,它已经解决了。
import pyvips
image = pyvips.Image.new_from_file("000240.jp2") image.write_to_file("000240.jpg")https://stackoverflow.com/questions/58609763
复制相似问题