Failed to fetch fork details. Try again later.
-
remi cresson authored4bb2789b
Forked from
Cresson Remi / otbtf
Source project has a limited visibility.
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<title>pyotb: A pythonic extension of Orfeo Toolbox</title>
<link rel="stylesheet" href="./revealjs/dist/reset.css">
<link rel="stylesheet" href="./revealjs/dist/reveal.css">
<link rel="stylesheet" href="./revealjs/dist/theme/white.css">
<link rel="stylesheet" href="otb.css" id="theme">
<!-- I/ NOT USED ANYMORE -->
<!-- Theme used for syntax highlighted code
<link rel="stylesheet" href="a11y-light.css"> -->
<!-- Theme used for drawer code
<link rel="stylesheet" href="./revealdrawer/dist/drawer.css" /> -->
</head>
<body>
<div class="reveal">
<div class="slides">
<!-- I/ PREMIERE PAGE -->
<section data-background-image='illustrations/background.png'>
<h1>pyotb: A pythonic extension of Orfeo Toolbox</h1>
</br>
<p>Nicolas Narçon<sup>1</sup>, Rémi Cresson<sup>1</sup>, Vincent Delbar<sup>2</sup></p>
<p>(1) INRAE, (2) La TeleScop</p>
<br>
<p> Firenze, FOSS4G - 25 Aug. 2022</p>
</section>
<section data-background-image='illustrations/background.png'>
<h3>Basic satellite image processing in Python</h3>
<h4>Example: Pansharpening</h4>
<figure>
<img src="illustrations/pansharpening_schema.png" width=60%/>
</figure>
</section>
<!-- II/ PANSHARPENING WITH PYOTB -->
<section>
<section data-background-image='illustrations/background.png'>
<h2>What a developer goes trough</h2>
<video data-autoplay width=70% src="illustrations/pansharpening_google_search_final_speedup.mp4"></video>
</section>
<section data-background-image='illustrations/background.png'>
<h3>Issues</h3>
</br>
<img style='vertical-align:middle' src="illustrations/cons.png" width=5%/>
<span>Con n°1:</span>
</br></br>
<ul>
<li>Not many well-eshtablished Python Open Source remote sensing solutions -> trust?</li>
<li>Need to implement/adapt some algorithms -> loss of time</li>
</ul>
</br></br>
<br>
</section>
<section data-background-image='illustrations/background.png'>
<h2>Pansharpening in Python</h2>
<video data-autoplay width=70% src="illustrations/pansharpening_memory_error_rasterio_speedup.mp4"></video>
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
</section>
<section>
<figure>
<img src="illustrations/memory_error.png" width=80%/>
</figure>
<figure>
<img src="illustrations/michael_meme.png" width=50%/>
</figure>
</section>
<section data-background-image='illustrations/background.png'>
<h3>Issues</h3>
</br>
<figure>
<img src="illustrations/cons.png" width=5%/>
<figcaption>Con n°2:</figcaption>
</figure>
<ul>
<li>Satellite image processing do not fit in RAM</li>
</ul>
<span>Solution: by hand tiling ?</span>
<pre><code data-trim class="python">
for i in range(0, size, chunk_size):
# Reading image
with rasterio.open('image.tif'):
...
</code></pre>
<br>
</section>
<section data-markdown>
<textarea data-template>
### Whatever
| Test | Test | Description |
| ---- | ---------- | ----------- |
| 1 | 0 | ssss |
</textarea>
</section>
</section>
<!-- III/ PANSHARPENING WITH PYOTB -->
<section>
<section data-background-image='illustrations/background.png'>
<h2>pyotb: remote sensing made easy</h2>
<video data-autoplay width=70% src="illustrations/pansharpening_pyotb_laptop_speedup.mp4"></video>
</section>
</section>
<!-- IV/ PERFORMANCE: ON A BIG SERVER IS IT SLOWER THAN FULL PYTHON ? -->
<section>
<section data-background-image='illustrations/background.png'>
<h2>Performance comparison</h2>
</section>
</section>
<!-- V/ USECASE: EXAMPLE FROM THE DOC AVEC EXPORT RASTERIO -->
141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
<section>
<section data-background-image='illustrations/background.png'>
<h2>pyotb: An usecase</h2>
</section>
</section>
<section>
<h1>Thank you</h1>
<h3>Any questions?</h3>
</section>
</div>
</div>
<script src="./revealjs/dist/reveal.js"></script>
<script src="./revealjs/plugin/notes/notes.js"></script>
<script src="./revealjs/plugin/markdown/markdown.js"></script>
<script src="./revealjs/plugin/highlight/highlight.js"></script>
<script>
// More info about initialization & config:
// - https://revealjs.com/initialization/
// - https://revealjs.com/config/
Reveal.initialize({
hash: true,
controlsLayout: 'edges',
// Visibility rule for backwards navigation arrows; "faded", "hidden"
// or "visible"
controlsBackArrows: 'visible',
slideNumber: true,
// Learn about plugins: https://revealjs.com/plugins/
plugins: [ RevealMarkdown, RevealHighlight, RevealNotes ],
// The "normal" size of the presentation, aspect ratio will
// be preserved when the presentation is scaled to fit different
// resolutions. Can be specified using percentage units.
width: 1920,
height: 1080,
// Factor of the display size that should remain empty around
// the content
margin: 0.01,
// Bounds for smallest/largest possible scale to apply to content
minScale: 0.2,
maxScale: 2.0,
drawer: {
colors: ["#fa1e0e", "#8ac926", "#1982c4", "#ffca3a"], // (optional) list of colors avaiable (hex color codes)
color: "#FF0000", // (optional) color of a cursor, first color from `codes` is a default
pathSize: 2, // (optional) path size in px, default 4
}
});
</script>
</body>
</html>