[R-sig-Geo] Sentienl 2 gdal translate
Miguel Castro Gómez
castrog.miguelg at gmail.com
Fri Mar 17 12:45:15 CET 2017
Hi Loïc,
Thanks for your help,
When trying the system2 option this is what happens:
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'))
}
sh: gdal_translate: command not found
I have been checking and the problem may be that R cannot find the gdal_translate command. Here are the paths:
Sys.getenv('R_HOME’)
"/Library/Frameworks/R.framework/Resources"
Sys.getenv('PATH')
"/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin”
In terminal:
user$ echo $PATH
/Library/Frameworks/GDAL.framework/Programs:/Library/Frameworks/GDAL.framework/Programs:/Library/Frameworks/GDAL.framework/Programs:/Users/Miguel/anaconda/bin:/Library/Frameworks/Python.framework/Versions/3.5/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
I think it has to match but not sure how can I change the path that R is using to find the command gdal_translate
Regarding sentinel2 driver, any idea why is not working? Any help on that
Cheers
M
> El 16 mar 2017, a las 19:21, Loïc Dutrieux <loic.dutrieux at conabio.gob.mx> escribió:
>
> 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> <mailto: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> <mailto:R-sig-Geo at r-project.org <mailto:R-sig-Geo at r-project.org>>
>>>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo <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> <mailto:R-sig-Geo at r-project.org <mailto:R-sig-Geo at r-project.org>>
>>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo <https://stat.ethz.ch/mailman/listinfo/r-sig-geo>
>>
>>
>>
>> Email secured by Check Point
[[alternative HTML version deleted]]
More information about the R-sig-Geo
mailing list