[R-sig-Geo] Sentienl 2 gdal translate

Loïc Dutrieux loic.dutrieux at conabio.gob.mx
Thu Mar 16 19:21:21 CET 2017


Hi Miguel,

Briefly looking at the help and source code of
gdalUtils::gdal_translate(), I don't see any way to pass additional
options. Your best shot is therefore probably to build the expression
yourself and pass it via a system call.

library(raster)

Image_Path<-'/path/to/images/'

S2_JP2_List <- list.files(Image_Path, full.names = TRUE, pattern = ".jp2$")

for (file in S2_JP2_List) {
  out_file <- extension(file, 'tif')
  system2('gdal_translate', args = c('-of GTiff', file, out_file,
'--config GDAL_SKIP JPECW'))
}

But the real question here is why the simple gdal_translate call without
--config GDAL_SKIP JPECW did not work for you while you clearly have the
sentinel2 driver...

Cheers,
Loïc

On 16/03/17 06:02, Miguel Castro Gómez wrote:
> Hi Loïc,
> 
> I have tried your code but it does not work yet. It just produces one
> tif file for the first band but this file is not correct (8 kb just).
> The R process keep working for a long time without any other output
> 
> Here are the versions I’m using
> 
> R version: 3.3.2
> gdalUtils: v 2.0.1.7
> raster: 2.5-8
> gdal: 2.1.2, released 2016/10/24
> 
> When checking for the sentinel 2 driver in gdal (see red)
> 
>  gdal-config --formats | grep sentinel2
> gxf gtiff hfa aigrid aaigrid ceos ceos2 iso8211 xpm sdts raw dted mem
> jdem envisat elas fit vrt usgsdem l1b nitf bmp airsar rs2 ilwis rmf
> leveller sgi srtmhgt idrisi gsg ingr ers jaxapalsar dimap gff cosar pds
> adrg coasp tsx terragen blx msgn til r northwood saga xyz hf2
> kmlsuperoverlay ctg e00grid zmap ngsgeoid iris map cals safe *sentinel2*
> mrf webp wcs wms plmosaic wmts dods grib bsb openjpeg jpeg2000 netcdf
> hdf5 hdf4 ogdi gif jpeg gta png pcraster fits pcidsk rik ozi rasterlite
> mbtiles postgisraster arg
> 
> I think the problem is the driver that is used to manage the jp2 file.
> Any idea how can I include in the R code the --config GDAL_SKIP JP2ECW
> option. 
> 
> Cheers,
> M
> 
>> El 15 mar 2017, a las 23:13, Loïc Dutrieux
>> <loic.dutrieux at conabio.gob.mx <mailto:loic.dutrieux at conabio.gob.mx>>
>> escribió:
>>
>> Hi,
>>
>> I tried your code with some S2 images I had lying around, and it works
>> on my system. I modified it a bit to write the output layers to the same
>> directory and not to my working directory.
>>
>> library(gdalUtils)
>> library(raster)
>>
>> Image_Path<-'/path/to/images/'
>>
>> S2_JP2_List <- list.files(Image_Path, full.names = TRUE, pattern =
>> ".jp2$")
>>
>> for (file in S2_JP2_List) {
>>  out_file <- extension(file, 'tif')
>>  gdal_translate(src_dataset = file, dst_dataset = out_file, ot =
>> "UInt16", of = "GTiff")
>> }
>>
>> gdal has a sentinel 2 driver, but it's not extremely old, therefore it's
>> possible that your installation doesn't have it; you can check with:
>>
>> gdal-config --formats | grep sentinel2
>>
>> Cheers,
>> Loïc
>>
>>
>>
>> On 15/03/17 12:49, Miguel Castro Gómez wrote:
>>> Hi,
>>>
>>> I have Sentinel 2 images (jp2) that I want to convert to GTiff using
>>> gdal_translate in R (from gdalutils package). Here is the code I’m using
>>>
>>> Image_Path<-“/path/to/wd“
>>>
>>> S2_JP2_List <- list.files(Image_Path, full.names = TRUE, pattern =
>>> ".jp2$")
>>>
>>> for (i in 1:length(S2_JP2_List)) {
>>> gdal_translate(src_dataset = S2_JP2_List[[i]], dst_dataset =
>>> paste("Band", i , "tif"), ot = "UInt16", of = “GTiff")
>>>    }
>>>
>>> When running this code, the process starts without any error but its
>>> never ending neither producing any output
>>>
>>> I've tried to do it in gdal and the same code works, except that it
>>> is necessary to skip  the default driver since it cannot manage large
>>> jp2 files.
>>>
>>> gdal_translate -of GTiff /path/to/input/S2_b1.jp2
>>>  /path/to/output/S2_b1converted.tif --config GDAL_SKIP JP2ECW
>>>
>>> Any idea how could I run this in R?
>>>
>>> Thanks
>>> M
>>>
>>>
>>>
>>> [[alternative HTML version deleted]]
>>>
>>> _______________________________________________
>>> R-sig-Geo mailing list
>>> R-sig-Geo at r-project.org <mailto:R-sig-Geo at r-project.org>
>>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>>>
>>
>> _______________________________________________
>> R-sig-Geo mailing list
>> R-sig-Geo at r-project.org <mailto:R-sig-Geo at r-project.org>
>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
> 
> 
> 
> Email secured by Check Point
>



More information about the R-sig-Geo mailing list