我尝试通过raster包读取R中无符号字节数据格式的大型GeoTIFF文件(18000×18000×40),希望在R中读取为raw数据类型(无符号字节),然后由Rcpp处理。但是,看起来raster包的函数只将数据返回为numeric数据类型(8字节浮点),这将超出我的机器的内存。有没有什么方法可以读取GeoTIFF文件,并直接返回R中raw数据类型的数据?
raster
raw
Rcpp
numeric
vi4fp9gy1#
您可以按块读取数据。例如逐层读取,但您也可以按块读取值(行/列的子集,但所有层),这取决于您希望如何组织数据以进行处理。然后为每个块更改数据类型。请参阅terra::readValues或“raster”中的等效内容。您还可以查看vapour::vapour_read_raster和vapour::vapour_read_raster_raw
terra::readValues
vapour::vapour_read_raster
vapour::vapour_read_raster_raw
1条答案
按热度按时间vi4fp9gy1#
您可以按块读取数据。例如逐层读取,但您也可以按块读取值(行/列的子集,但所有层),这取决于您希望如何组织数据以进行处理。然后为每个块更改数据类型。请参阅
terra::readValues
或“raster”中的等效内容。您还可以查看
vapour::vapour_read_raster
和vapour::vapour_read_raster_raw