<!DOCTYPE html>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Convert from SAFE format — s2_translate • sen2r</title><!-- jquery --><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script><!-- Bootstrap --><link href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.4.0/yeti/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous"><script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha256-nuL8/2cJ5NDSSwnKD8VqreErSWHtnEP9E7AySL+1ev4=" crossorigin="anonymous"></script><!-- bootstrap-toc --><link rel="stylesheet" href="../bootstrap-toc.css"><script src="../bootstrap-toc.js"></script><!-- Font Awesome icons --><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/all.min.css" integrity="sha256-mmgLkCYLUQbXn0B1SRqzHar6dCnv9oZFPEC1g1cwlkk=" crossorigin="anonymous"><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/v4-shims.min.css" integrity="sha256-wZjR52fzng1pJHwx4aV2AO3yyTOXrcDW7jBpJtTwVxw=" crossorigin="anonymous"><!-- clipboard.js --><script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js" integrity="sha256-inc5kl9MA1hkeYUt+EC3BhlIgyp/2jDIyBLS6k3UxPI=" crossorigin="anonymous"></script><!-- headroom.js --><script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js" integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/jQuery.headroom.min.js" integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4=" crossorigin="anonymous"></script><!-- pkgdown --><link href="../pkgdown.css" rel="stylesheet"><script src="../pkgdown.js"></script><meta property="og:title" content="Convert from SAFE format — s2_translate"><meta property="og:description" content="The function build a virtual raster from a Sentinel2 SAFE product,
eventually translating it in another spatial format.
Output vrt is at 10m resolution."><!-- mathjax --><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script><!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]--></head><body data-spy="scroll" data-target="#toc">
    

    <div class="container template-reference-topic">
      <header><div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
  <div class="container">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <span class="navbar-brand">
        <a class="navbar-link" href="../index.html">sen2r</a>
        <span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="">1.6.0</span>
      </span>
    </div>

    <div id="navbar" class="navbar-collapse collapse">
      <ul class="nav navbar-nav"></ul><ul class="nav navbar-nav navbar-right"><li>
  <a href="../index.html">
    <span class="fa fa-home fa-lg"></span>
     
  </a>
</li>
<li>
  <a href="../reference/index.html">
    <span class="fa fa-file-code"></span>
     
     Reference
  </a>
</li>
<li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
    <span class="fa fa-book"></span>
     
     Articles
     
    <span class="caret"></span>
  </a>
  <ul class="dropdown-menu" role="menu"><li>
      <a href="../articles/installation.html">Installation</a>
    </li>
    <li>
      <a href="../articles/docker.html">Run in a Docker container</a>
    </li>
    <li>
      <a href="../articles/sen2r_gui.html">Using sen2r() from the GUI</a>
    </li>
    <li>
      <a href="../articles/sen2r_cmd.html">Using sen2r() from the command line</a>
    </li>
    <li>
      <a href="../articles/outstructure.html">Output file structure</a>
    </li>
  </ul></li>
<li>
  <a href="../news/index.html">
    <span class="fa fa-newspaper"></span>
     
     Changelog
  </a>
</li>
<li>
  <a href="http://luigi.ranghetti.info" class="external-link">
    <span class="fa fa-user"></span>
     
  </a>
</li>
<li>
  <a href="https://github.com/ranghetti/sen2r/" class="external-link">
    <span class="fa fa-github fa-lg"></span>
     
  </a>
</li>
      </ul></div><!--/.nav-collapse -->
  </div><!--/.container -->
</div><!--/.navbar -->

      

      </header><div class="row">
  <div class="col-md-9 contents">
    <div class="page-header">
    <h1>Convert from SAFE format</h1>
    <small class="dont-index">Source: <a href="https://github.com/ranghetti/sen2r/blob/HEAD/R/s2_translate.R" class="external-link"><code>R/s2_translate.R</code></a></small>
    <div class="hidden name"><code>s2_translate.Rd</code></div>
    </div>

    <div class="ref-description">
    <p>The function build a virtual raster from a Sentinel2 SAFE product,
eventually translating it in another spatial format.
Output vrt is at 10m resolution.</p>
    </div>

    <div id="ref-usage">
    <div class="sourceCode"><pre class="sourceCode r"><code><span><span class="fu">s2_translate</span><span class="op">(</span></span>
<span>  <span class="va">infile</span>,</span>
<span>  outdir <span class="op">=</span> <span class="st">"."</span>,</span>
<span>  subdirs <span class="op">=</span> <span class="cn">NA</span>,</span>
<span>  tmpdir <span class="op">=</span> <span class="cn">NA</span>,</span>
<span>  rmtmp <span class="op">=</span> <span class="cn">TRUE</span>,</span>
<span>  prod_type <span class="op">=</span> <span class="cn">NULL</span>,</span>
<span>  tiles <span class="op">=</span> <span class="cn">NA</span>,</span>
<span>  res <span class="op">=</span> <span class="st">"10m"</span>,</span>
<span>  method <span class="op">=</span> <span class="st">"bilinear"</span>,</span>
<span>  format <span class="op">=</span> <span class="st">"VRT"</span>,</span>
<span>  compress <span class="op">=</span> <span class="st">"DEFLATE"</span>,</span>
<span>  bigtiff <span class="op">=</span> <span class="cn">FALSE</span>,</span>
<span>  vrt_rel_paths <span class="op">=</span> <span class="cn">NA</span>,</span>
<span>  utmzone <span class="op">=</span> <span class="st">""</span>,</span>
<span>  overwrite <span class="op">=</span> <span class="cn">FALSE</span></span>
<span><span class="op">)</span></span></code></pre></div>
    </div>

    <div id="arguments">
    <h2>Arguments</h2>
    <dl><dt>infile</dt>
<dd><p>Full path of the input SAFE folder (alternatively,
full path of the xml file of the product with metadata).</p></dd>


<dt>outdir</dt>
<dd><p>(optional) Full name of the output directory where
the files should be created (default: current directory).
<code>outdir</code> can bot be an existing or non-existing directory (in the
second case, its parent directory must exists).
If it is a relative path, it is expanded from the directory of <code>infile</code>.</p></dd>


<dt>subdirs</dt>
<dd><p>(optional) Logical: if TRUE, different output products are
placed in separated <code>outdir</code> subdirectories; if FALSE, they are placed in
<code>outdir</code> directory; if NA (default), subdirectories are created only if
<code>prod_type</code> has length &gt; 1.</p></dd>


<dt>tmpdir</dt>
<dd><p>(optional) Path where intermediate files (VRT) will be created.
Default is a temporary directory.
If <code>tmpdir</code> is a non-empty folder, a random subdirectory will be used.</p></dd>


<dt>rmtmp</dt>
<dd><p>(optional) Logical: should temporary files be removed?
(Default: TRUE).
This parameter takes effect only if the output files are not VRT
(in this case temporary files cannot be deleted, because rasters of source
bands are included within them).</p></dd>


<dt>prod_type</dt>
<dd><p>(optional) Vector of types to be produced as outputs
(see <a href="safe_shortname.html">safe_shortname</a> for the list of accepted values). Default is
reflectance (<code>"TOA"</code> for level 1C, <code>"BOA"</code> for level 2A).</p></dd>


<dt>tiles</dt>
<dd><p>(optional) Character vector with the desired output tile IDs
(id specified IDs are not present in the input SAFE product, they are not
produced). Default (NA) is to process all the found tiles.</p></dd>


<dt>res</dt>
<dd><p>(optional) Spatial resolution (one between <code>'10m'</code>, <code>'20m'</code> or
<code>'60m'</code>); default is <code>'10m'</code>.
Notice that, choosing <code>'10m'</code> or <code>'20m'</code>, bands with lower
resolution will be rescaled to <code>res</code>. Band 08 is used with <code>res = '10m'</code>,
band 08A with <code>res = '20m'</code> and <code>res = '60m'</code>.</p></dd>


<dt>method</dt>
<dd><p>(optional) A resampling method used to generate products
<code>"SZA"</code> (Sun Zenith Angles), <code>"OZA"</code> (Sun Azimuth Angles),
<code>"SAA"</code> (averaged Viewing Incidence Zenith Angles)
and <code>"OAA"</code> (averaged Viewing Incidence Azimuth Angles) from their
original 5 km resolution.
Accepted values are valid values accepted by <code>-r</code> option of
<a href="https://gdal.org/programs/gdalwarp.html" class="external-link"><code>gdalwarp</code></a>.
Default is <code>"bilinear"</code> (linear interpolation).</p></dd>


<dt>format</dt>
<dd><p>(optional) Format of the output file (in a
format recognised by GDAL). Default value is <code>"VRT"</code> (Virtual Raster).</p></dd>


<dt>compress</dt>
<dd><p>(optional) In the case a GeoTIFF format is
chosen, the compression indicated with this parameter is used.</p></dd>


<dt>bigtiff</dt>
<dd><p>(optional) Logical: if TRUE, the creation of a BigTIFF is
forced (default is FALSE).
This option is used only in the case a GeoTIFF format was chosen.</p></dd>


<dt>vrt_rel_paths</dt>
<dd><p>(optional) Logical: if TRUE (default on Linux),
the paths present in the VRT output file are relative to the VRT position;
if FALSE (default on Windows), they are absolute.
This takes effect only with <code>format = "VRT"</code>.</p></dd>


<dt>utmzone</dt>
<dd><p>(optional) UTM zone of output products (default:
the first one retrieved from input granules),
being a 3-length character (e.g. <code>"32N"</code>).
Note that this function
does not perform reprojections: if no granules refer to the specified
UTM zone, no output is created.</p></dd>


<dt>overwrite</dt>
<dd><p>Logical value: should existing output files be
overwritten? (default: FALSE)</p></dd>

</dl></div>
    <div id="value">
    <h2>Value</h2>
    

<p>A vector with the names of the created output files
(just created or already existing).</p>
    </div>
    <div id="note">
    <h2>Note</h2>
    <p>License: GPL 3.0</p>
    </div>
    <div id="references">
    <h2>References</h2>
    <p>L. Ranghetti, M. Boschetti, F. Nutini, L. Busetto (2020).
"sen2r": An R toolbox for automatically downloading and preprocessing
Sentinel-2 satellite data. <em>Computers &amp; Geosciences</em>, 139, 104473.
<a href="https://doi.org/10.1016/j.cageo.2020.104473" class="external-link">doi:10.1016/j.cageo.2020.104473</a>
, URL: <a href="https://sen2r.ranghetti.info/" class="external-link">https://sen2r.ranghetti.info/</a>.</p>
    </div>
    <div id="author">
    <h2>Author</h2>
    <p>Luigi Ranghetti, phD (2019)</p>
    </div>

    <div id="ref-examples">
    <h2>Examples</h2>
    <div class="sourceCode"><pre class="sourceCode r"><code><span class="r-in"><span><span class="kw">if</span> <span class="op">(</span><span class="cn">FALSE</span><span class="op">)</span> <span class="op">{</span></span></span>
<span class="r-in"><span><span class="va">s2_l1c_example</span> <span class="op">&lt;-</span> <span class="fu"><a href="https://rdrr.io/r/base/file.path.html" class="external-link">file.path</a></span><span class="op">(</span></span></span>
<span class="r-in"><span>  <span class="st">"/existing/path"</span>,</span></span>
<span class="r-in"><span>  <span class="st">"S2A_MSIL1C_20170603T101031_N0205_R022_T32TQQ_20170603T101026.SAFE"</span></span></span>
<span class="r-in"><span><span class="op">)</span></span></span>
<span class="r-in"><span><span class="va">s2_l2a_example</span> <span class="op">&lt;-</span> <span class="fu"><a href="https://rdrr.io/r/base/file.path.html" class="external-link">file.path</a></span><span class="op">(</span></span></span>
<span class="r-in"><span>  <span class="st">"/existing/path"</span>,</span></span>
<span class="r-in"><span>  <span class="st">"S2A_MSIL2A_20170603T101031_N0205_R022_T32TQQ_20170603T101026.SAFE"</span></span></span>
<span class="r-in"><span><span class="op">)</span></span></span>
<span class="r-in"><span></span></span>
<span class="r-in"><span><span class="co"># Create a single TOA GeoTIFF in the same directory</span></span></span>
<span class="r-in"><span><span class="fu">s2_translate</span><span class="op">(</span><span class="va">s2_l1c_example</span>, format<span class="op">=</span><span class="st">"GTiff"</span><span class="op">)</span></span></span>
<span class="r-in"><span></span></span>
<span class="r-in"><span><span class="co"># Create a single BOA VRT with a custom name</span></span></span>
<span class="r-in"><span><span class="fu">s2_translate</span><span class="op">(</span></span></span>
<span class="r-in"><span>  <span class="va">s2_l2a_example</span>,</span></span>
<span class="r-in"><span>  <span class="st">"/new/path/example_sentinel2_sr.vrt"</span>,</span></span>
<span class="r-in"><span>  vrt_rel_paths <span class="op">=</span> <span class="cn">TRUE</span></span></span>
<span class="r-in"><span><span class="op">)</span></span></span>
<span class="r-in"><span></span></span>
<span class="r-in"><span><span class="co"># Create four products (ENVI) in the same directory at 60m resolution,</span></span></span>
<span class="r-in"><span><span class="co"># using a cubic interpolation for "OAA"</span></span></span>
<span class="r-in"><span><span class="fu">s2_translate</span><span class="op">(</span></span></span>
<span class="r-in"><span>  <span class="va">s2_l2a_example</span>, </span></span>
<span class="r-in"><span>  format <span class="op">=</span> <span class="st">"ENVI"</span>, </span></span>
<span class="r-in"><span>  prod_type <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"BOA"</span>,<span class="st">"TCI"</span>,<span class="st">"SCL"</span>,<span class="st">"OAA"</span><span class="op">)</span>,</span></span>
<span class="r-in"><span>  res <span class="op">=</span> <span class="st">"60m"</span>, </span></span>
<span class="r-in"><span>  method <span class="op">=</span> <span class="st">"cubic"</span>,</span></span>
<span class="r-in"><span>  subdirs <span class="op">=</span> <span class="cn">TRUE</span></span></span>
<span class="r-in"><span><span class="op">)</span></span></span>
<span class="r-in"><span></span></span>
<span class="r-in"><span><span class="co"># Create all the four angle products from TOA in GeoTIFF format </span></span></span>
<span class="r-in"><span><span class="co"># in a temporary directory</span></span></span>
<span class="r-in"><span><span class="fu">s2_translate</span><span class="op">(</span></span></span>
<span class="r-in"><span>  <span class="va">s2_l1c_example</span>, </span></span>
<span class="r-in"><span>  format <span class="op">=</span> <span class="st">"GTiff"</span>, </span></span>
<span class="r-in"><span>  prod_type <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"SZA"</span>, <span class="st">"OZA"</span>, <span class="st">"SAA"</span>, <span class="st">"OAA"</span><span class="op">)</span>, </span></span>
<span class="r-in"><span>  outdir <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/tempfile.html" class="external-link">tempdir</a></span><span class="op">(</span><span class="op">)</span></span></span>
<span class="r-in"><span><span class="op">)</span></span></span>
<span class="r-in"><span><span class="op">}</span></span></span>
</code></pre></div>
    </div>
  </div>
  <div class="col-md-3 hidden-xs hidden-sm" id="pkgdown-sidebar">
    <nav id="toc" data-toggle="toc" class="sticky-top"><h2 data-toc-skip>Contents</h2>
    </nav></div>
</div>


      <footer><div class="copyright">
  <p></p><p>Developed by Luigi Ranghetti, Lorenzo Busetto.</p>
</div>

<div class="pkgdown">
  <p></p><p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link">pkgdown</a> 2.0.7.</p>
</div>

      </footer></div>

  


  

  </body></html>

