[R-sig-Geo] writeRaster to TIF changes raster maximum value

Guillaume.Drolet at mrn.gouv.qc.ca Guillaume.Drolet at mrn.gouv.qc.ca
Mon Sep 16 22:58:38 CEST 2013


Dear Robert,

Here's a link to 2 images: the original raster (full) and the cropped
one (sub):

https://www.dropbox.com/sh/8zo8fo964kr6ttk/pH1JIpTZ1C

The original raster has Byte values, as you suspected. But I don't know
how to handle that so that it's not used as NA value. From what I read, 
NA values in the original raster should be 0, and minimum and maximum 
values should be 1 and 255, respectively.

Thanks for helping,

Guillaume

Le 2013-09-16 11:41, Robert J. Hijmans a écrit :
> I suspect that the original file has Byte values and that 255 is used,
> perhaps erroneously, as NA. Can you give me access to the file?
> Thanks, Robert
>
> On Mon, Sep 16, 2013 at 8:10 AM,  <Guillaume.Drolet at mrn.gouv.qc.ca> wrote:
>  > Dear list members,
>  >
>  > I need your help trying to figure out why my raster's maximum value gets
>  > changed in the resulting TIF file from a call to the writeRaster
> function.
>  >
>  > I read here
>  >
> (http://r-sig-geo.2731867.n2.nabble.com/writeRaster-to-ascii-file-asc-td7584093.html#none)
>  >
>  > that this problem could be due to my version of GDAL (1.11dev released
>  > 2013/04/13). This is the GDAL version that is in my system's path. Don't
>  > know if this can help but when I load rgdal, I can read this:
>  >
>  > Loaded GDAL runtime: GDAL 1.9.2, released 2012/10/08
>  >
>  > Here are the details of my raster (myRaster) before calling writeRaster:
>  >
>  >   > raster(myRaster)
>  >
>  > class       : RasterLayer
>  > dimensions  : 7261, 7961, 57804821  (nrow, ncol, ncell)
>  > resolution  : 30, 30  (x, y)
>  > extent      : 457785, 696615, 5147085, 5364915  (xmin, xmax, ymin, ymax)
>  > coord. ref. : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs
>  > +ellps=WGS84 +towgs84=0,0,0
>  > data source : E:\temp\Fmask\Image\L71015027_02720000730_B10.tif
>  > names       : L71015027_02720000730_B10
>  > values      : 0, 255  (min, max)
>  >
>  >
>  > I crop "myRaster" using the crop function with a bounding box and then I
>  > save the cropped raster as a TIF with:
>  >
>  >   > writeRaster(rc, "myCroppedRaster.tif", datatype = "INT2S")
>  > rgdal: version: 0.8-11, (SVN revision 479M)
>  > Geospatial Data Abstraction Library extensions to R successfully loaded
>  > Loaded GDAL runtime: GDAL 1.9.2, released 2012/10/08
>  > Path to GDAL shared files:
>  > C:/Users/Utilisateur/Documents/R/win-library/3.0/rgdal/gdal
>  > GDAL does not use iconv for recoding strings.
>  > Loaded PROJ.4 runtime: Rel. 4.7.1, 23 September 2009, [PJ_VERSION: 470]
>  > Path to PROJ.4 shared files:
>  > C:/Users/Utilisateur/Documents/R/win-library/3.0/rgdal/proj
>  >
>  > class       : RasterLayer
>  > dimensions  : 3628, 3994, 14490232  (nrow, ncol, ncell)
>  > resolution  : 30, 30  (x, y)
>  > extent      : 457785, 577605, 5147085, 5255925  (xmin, xmax, ymin, ymax)
>  > coord. ref. : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs
>  > +ellps=WGS84 +towgs84=0,0,0
>  > data source : E:temp\myRaster.tif
>  > names       : myRaster
>  > values      : 0, 254  (min, max)
>  >
>  >
>  > As shown in the output from writeRaster, the maximum value in the output
>  > TIF file is now 254. I double-checked and
>  > there are pixels with value 255 in the cropped area of the original
>  > raster so the maximum value shouldn't be 254 but 255.
>  >
>  > Here's the output of my sessionInfo():
>  >
>  > R version 3.0.1 (2013-05-16)
>  > Platform: x86_64-w64-mingw32/x64 (64-bit)
>  >
>  > locale:
>  > [1] LC_COLLATE=French_Canada.1252  LC_CTYPE=French_Canada.1252
>  > LC_MONETARY=French_Canada.1252
>  > [4] LC_NUMERIC=C                   LC_TIME=French_Canada.1252
>  >
>  > attached base packages:
>  > [1] stats     graphics  grDevices utils     datasets  methods   base
>  >
>  > other attached packages:
>  > [1] rgdal_0.8-11  raster_2.1-49 sp_1.0-13
>  >
>  > loaded via a namespace (and not attached):
>  > [1] grid_3.0.1      lattice_0.20-15 tools_3.0.1
>  >
>  > I thank you in advance for any hint that could help me solve this
>  > problem.
>  >
>  > Guillaume
>  > --
>  > Guillaume Drolet ing.f M.Sc.
>  > Chercheur en télédétection et dynamique forestière
>  > Direction de la recherche forestière
>  > Ministère des ressources naturelles du Québec
>  > 2700, rue Einstein, C.RC.335
>  > Québec (Québec), Canada G1P 3W8
>  > T : +1 418 643 7994 # 6727
>  > F : +1 418 643 2165
>  > guillaume.drolet at mrn.gouv.qc.ca
>  > http://www.mrn.gouv.qc.ca/forets
>  >
>  > _______________________________________________
>  > R-sig-Geo mailing list
>  > R-sig-Geo at r-project.org
>  > https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>

-- 
Guillaume Drolet ing.f M.Sc.
Chercheur en télédétection et dynamique forestière
Direction de la recherche forestière
Ministère des ressources naturelles du Québec
2700, rue Einstein, C.RC.335
Québec (Québec), Canada G1P 3W8
T : +1 418 643 7994 # 6727
F : +1 418 643 2165
guillaume.drolet at mrn.gouv.qc.ca
http://www.mrn.gouv.qc.ca/forets



More information about the R-sig-Geo mailing list