SlideShare une entreprise Scribd logo
1  sur  1
Télécharger pour lire hors ligne
Ice: lightweight, efficient rendering
for remote sensing images
Julien Michel1, Gabriele Facciolo2
1
CNES - DCT/SI/AP, France - julien.michel@cnes.fr
2
CMLA, ENS Cachan, France - gabriele.facciolo@cmla.ens-cachan.fr
Ice overview
Why Ice
•Users want instant navigation in data
•But satellite images are large:
–Size: 40 000 x 40 000 pixels (pléiades)
–Spectral band: 4, 6, 8, or even more!
–Bit depth > 8: requires preprocessing to display
–Compression (JPEG2000 8 Go → 2 or 3 Go)
•Users even want to see . . . several images together!
•Rendering fine tuning is often cumbersome . . .
•We can do better!
What Ice is
•Ice is a library depending on OTB and OpenGL
•Implementing a scene/actors paradigm
•To display several raster or vector files together
•Keyword: responsive and on-the-fly rendering
•With fun tools to see your data in a different way
•Agnostic wrt. GL context or graphical toolkit
•Does not implement user interactions
•Comes with a demo based on GLFW
Ice rendering model
View
Actor 1
Actor 2
Actor N
View settings
Ice
OpenGl Context and Graphical toolkit
...
Hard
drive
Actors
stack
User actions
What makes Ice efficient
Multi-resolution tiles caching
Tiles already cached
Tiles to load
Tiles are cached in RAM and in GPU memory (see GLSL rendering)
GLSL Rendering
How to make contrast related operations efficient?
1.Load tile to RAM
2.Extract the RGB components to be displayed
3.Load tile to GPU as a RGB FLOAT32 OpenGL texture
4.Write shaders in GL Shading Language to perform the 8 bits rendering
This key idea comes from the pvflip image viewer:
•GLSL is a high-level shading language based on the syntax of the C pro-
gramming language (source: wikipedia)
•Any contrast editing operation only implies GPU, and is therefore incredibly
responsive (can run at 50 FPS or even higher)
•GLSL also allows to create new rendering effects enabled by the respon-
siveness
Textures mapping
Image to screen transform
Rotation, translation, scaling
SRS change
Orthorectification with DSM
Image Domain: square tiles Viewport (screen) domain : texture mapping
Regular tiles in the image domain are mapped to quadrilaterals in the screen
domain. Resampling is handled by GPU through texture mapping, and is
therefore very efficient. Orfeo ToolBox automagically handles coordinates
mapping between actors and viewport geometries.
Light vs. Heavy cycles
Hard
Drive
RAM GPU
Heavy rendering cycle Light rendering cycle
Depending on user interactions, light or heavy cycles can be triggered
When is a heavy cycle really needed?
•Loading of a new actor (vector or raster)
•At the end of a move (translation, rotation, zoom in or out)
•When changing bands to be displayed. That’s all!
Fun with shaders
Local contrast enhancement Local spectral angle mapping Chessboard transparency Local Gradient
Ressources and Live Demo
Ice: hg.orfeo-toolbox.org/Ice Orfeo ToolBox: orfeo-toolbox.org Pvflip: https://github.com/gfacciol/pvflip

Contenu connexe

Tendances

A Physical Approach to Moving Cast Shadow Detection (ICASSP 2009)
A Physical Approach to Moving Cast Shadow Detection (ICASSP 2009)A Physical Approach to Moving Cast Shadow Detection (ICASSP 2009)
A Physical Approach to Moving Cast Shadow Detection (ICASSP 2009)
Jia-Bin Huang
 
Tennis video shot classification based on support vector
Tennis video shot classification based on support vectorTennis video shot classification based on support vector
Tennis video shot classification based on support vector
es712
 
Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Learning Moving Cast Shadows for Foreground Detection (VS 2008)Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Jia-Bin Huang
 
Landuse Classification from Satellite Imagery using Deep Learning
Landuse Classification from Satellite Imagery using Deep LearningLanduse Classification from Satellite Imagery using Deep Learning
Landuse Classification from Satellite Imagery using Deep Learning
DataWorks Summit
 
An Open Source solution for Three-Dimensional documentation: archaeological a...
An Open Source solution for Three-Dimensional documentation: archaeological a...An Open Source solution for Three-Dimensional documentation: archaeological a...
An Open Source solution for Three-Dimensional documentation: archaeological a...
Giulio Bigliardi
 
【ECCV 2016 BNMW】Human Action Recognition without Human
【ECCV 2016 BNMW】Human Action Recognition without Human【ECCV 2016 BNMW】Human Action Recognition without Human
【ECCV 2016 BNMW】Human Action Recognition without Human
Hirokatsu Kataoka
 

Tendances (20)

Lossy Light Field Compression
Lossy Light Field CompressionLossy Light Field Compression
Lossy Light Field Compression
 
A Physical Approach to Moving Cast Shadow Detection (ICASSP 2009)
A Physical Approach to Moving Cast Shadow Detection (ICASSP 2009)A Physical Approach to Moving Cast Shadow Detection (ICASSP 2009)
A Physical Approach to Moving Cast Shadow Detection (ICASSP 2009)
 
Tennis video shot classification based on support vector
Tennis video shot classification based on support vectorTennis video shot classification based on support vector
Tennis video shot classification based on support vector
 
Object detection
Object detectionObject detection
Object detection
 
Building and road detection from large aerial imagery
Building and road detection from large aerial imageryBuilding and road detection from large aerial imagery
Building and road detection from large aerial imagery
 
PyData NYC by Akira Shibata
PyData NYC by Akira ShibataPyData NYC by Akira Shibata
PyData NYC by Akira Shibata
 
Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Learning Moving Cast Shadows for Foreground Detection (VS 2008)Learning Moving Cast Shadows for Foreground Detection (VS 2008)
Learning Moving Cast Shadows for Foreground Detection (VS 2008)
 
Large scale landuse classification of satellite imagery
Large scale landuse classification of satellite imageryLarge scale landuse classification of satellite imagery
Large scale landuse classification of satellite imagery
 
Canny Edge Detection Algorithm on FPGA
Canny Edge Detection Algorithm on FPGA Canny Edge Detection Algorithm on FPGA
Canny Edge Detection Algorithm on FPGA
 
Landuse Classification from Satellite Imagery using Deep Learning
Landuse Classification from Satellite Imagery using Deep LearningLanduse Classification from Satellite Imagery using Deep Learning
Landuse Classification from Satellite Imagery using Deep Learning
 
Seminaire ihp
Seminaire ihpSeminaire ihp
Seminaire ihp
 
PhD thesis defence slides
PhD thesis defence slidesPhD thesis defence slides
PhD thesis defence slides
 
2009.06.09 chris poppe - public PhD defense
2009.06.09   chris poppe - public PhD defense2009.06.09   chris poppe - public PhD defense
2009.06.09 chris poppe - public PhD defense
 
An Open Source solution for Three-Dimensional documentation: archaeological a...
An Open Source solution for Three-Dimensional documentation: archaeological a...An Open Source solution for Three-Dimensional documentation: archaeological a...
An Open Source solution for Three-Dimensional documentation: archaeological a...
 
A Brief History of Object Detection / Tommi Kerola
A Brief History of Object Detection / Tommi KerolaA Brief History of Object Detection / Tommi Kerola
A Brief History of Object Detection / Tommi Kerola
 
【DL輪読会】Unpaired Image Super-Resolution Using Pseudo-Supervision
【DL輪読会】Unpaired Image Super-Resolution Using Pseudo-Supervision【DL輪読会】Unpaired Image Super-Resolution Using Pseudo-Supervision
【DL輪読会】Unpaired Image Super-Resolution Using Pseudo-Supervision
 
Sobel Edge Detection Using FPGA
Sobel Edge Detection Using FPGASobel Edge Detection Using FPGA
Sobel Edge Detection Using FPGA
 
Optimized linear spatial filters implemented in FPGA
Optimized linear spatial filters implemented in FPGAOptimized linear spatial filters implemented in FPGA
Optimized linear spatial filters implemented in FPGA
 
【ECCV 2016 BNMW】Human Action Recognition without Human
【ECCV 2016 BNMW】Human Action Recognition without Human【ECCV 2016 BNMW】Human Action Recognition without Human
【ECCV 2016 BNMW】Human Action Recognition without Human
 
Easy edd phd talks 28 oct 2008
Easy edd phd talks 28 oct 2008Easy edd phd talks 28 oct 2008
Easy edd phd talks 28 oct 2008
 

En vedette

Madagascar2011 - 09 OTB Change detection framework
Madagascar2011 - 09 OTB Change detection frameworkMadagascar2011 - 09 OTB Change detection framework
Madagascar2011 - 09 OTB Change detection framework
otb
 
Madagascar2011 - 02 - Présentation OTB
Madagascar2011 - 02 - Présentation OTBMadagascar2011 - 02 - Présentation OTB
Madagascar2011 - 02 - Présentation OTB
otb
 

En vedette (10)

Madagascar2011 - 09 OTB Change detection framework
Madagascar2011 - 09 OTB Change detection frameworkMadagascar2011 - 09 OTB Change detection framework
Madagascar2011 - 09 OTB Change detection framework
 
Madagascar2011 - 02 - Présentation OTB
Madagascar2011 - 02 - Présentation OTBMadagascar2011 - 02 - Présentation OTB
Madagascar2011 - 02 - Présentation OTB
 
Pragmatic Remote Sensing - IGARSS 2010
Pragmatic Remote Sensing - IGARSS 2010Pragmatic Remote Sensing - IGARSS 2010
Pragmatic Remote Sensing - IGARSS 2010
 
Presentation of the Monteverdi application
Presentation of the Monteverdi applicationPresentation of the Monteverdi application
Presentation of the Monteverdi application
 
Pragmatic remote sensing handout
Pragmatic remote sensing handoutPragmatic remote sensing handout
Pragmatic remote sensing handout
 
Développement des chaînes de traitement d'images GEOSUD
Développement des chaînes de traitement d'images GEOSUDDéveloppement des chaînes de traitement d'images GEOSUD
Développement des chaînes de traitement d'images GEOSUD
 
Orfeo ToolBox workshop at FOSS4G Europe 2015
Orfeo ToolBox workshop at FOSS4G Europe 2015Orfeo ToolBox workshop at FOSS4G Europe 2015
Orfeo ToolBox workshop at FOSS4G Europe 2015
 
General presentation of OTB
General presentation of OTBGeneral presentation of OTB
General presentation of OTB
 
OTB: logiciel libre de traitement d'images satellites
OTB: logiciel libre de traitement d'images satellitesOTB: logiciel libre de traitement d'images satellites
OTB: logiciel libre de traitement d'images satellites
 
Présentation générale de l'Orfeo ToolBox (12.2014)
Présentation générale de l'Orfeo ToolBox (12.2014)Présentation générale de l'Orfeo ToolBox (12.2014)
Présentation générale de l'Orfeo ToolBox (12.2014)
 

Similaire à Ice: lightweight, efficient rendering for remote sensing images

Android open gl2_droidcon_2014
Android open gl2_droidcon_2014Android open gl2_droidcon_2014
Android open gl2_droidcon_2014
Droidcon Berlin
 
Alex_Vlachos_Advanced_VR_Rendering_Performance_GDC2016
Alex_Vlachos_Advanced_VR_Rendering_Performance_GDC2016Alex_Vlachos_Advanced_VR_Rendering_Performance_GDC2016
Alex_Vlachos_Advanced_VR_Rendering_Performance_GDC2016
Alex Vlachos
 
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Matthias Trapp
 

Similaire à Ice: lightweight, efficient rendering for remote sensing images (20)

Android open gl2_droidcon_2014
Android open gl2_droidcon_2014Android open gl2_droidcon_2014
Android open gl2_droidcon_2014
 
Graphics pipelining
Graphics pipeliningGraphics pipelining
Graphics pipelining
 
OpenGL Shading Language
OpenGL Shading LanguageOpenGL Shading Language
OpenGL Shading Language
 
OpenGL for 2015
OpenGL for 2015OpenGL for 2015
OpenGL for 2015
 
WT in IP.ppt
WT in IP.pptWT in IP.ppt
WT in IP.ppt
 
OpenGL ES and Mobile GPU
OpenGL ES and Mobile GPUOpenGL ES and Mobile GPU
OpenGL ES and Mobile GPU
 
Advanced Graphics Workshop - GFX2011
Advanced Graphics Workshop - GFX2011Advanced Graphics Workshop - GFX2011
Advanced Graphics Workshop - GFX2011
 
Survey on optical flow estimation with DL
Survey on optical flow estimation with DLSurvey on optical flow estimation with DL
Survey on optical flow estimation with DL
 
The Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next StepsThe Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next Steps
 
Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]
 
Final ppt
Final pptFinal ppt
Final ppt
 
EFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopEFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the Desktop
 
Alex_Vlachos_Advanced_VR_Rendering_Performance_GDC2016
Alex_Vlachos_Advanced_VR_Rendering_Performance_GDC2016Alex_Vlachos_Advanced_VR_Rendering_Performance_GDC2016
Alex_Vlachos_Advanced_VR_Rendering_Performance_GDC2016
 
GFX Part 1 - Introduction to GPU HW and OpenGL ES specifications
GFX Part 1 - Introduction to GPU HW and OpenGL ES specificationsGFX Part 1 - Introduction to GPU HW and OpenGL ES specifications
GFX Part 1 - Introduction to GPU HW and OpenGL ES specifications
 
Use Variable Rate Shading (VRS) to Improve the User Experience in Real-Time G...
Use Variable Rate Shading (VRS) to Improve the User Experience in Real-Time G...Use Variable Rate Shading (VRS) to Improve the User Experience in Real-Time G...
Use Variable Rate Shading (VRS) to Improve the User Experience in Real-Time G...
 
From Experimentation to Production: The Future of WebGL
From Experimentation to Production: The Future of WebGLFrom Experimentation to Production: The Future of WebGL
From Experimentation to Production: The Future of WebGL
 
OpenGL ES based UI Development on TI Platforms
OpenGL ES based UI Development on TI PlatformsOpenGL ES based UI Development on TI Platforms
OpenGL ES based UI Development on TI Platforms
 
(2) gui drawing
(2) gui drawing(2) gui drawing
(2) gui drawing
 
IMAGE PROCESSING
IMAGE PROCESSINGIMAGE PROCESSING
IMAGE PROCESSING
 
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
 

Plus de otb

ONLINE IMAGE PROCESSING WITH ORFEOTOOLBOX WPS
ONLINE IMAGE PROCESSING WITH ORFEOTOOLBOX WPSONLINE IMAGE PROCESSING WITH ORFEOTOOLBOX WPS
ONLINE IMAGE PROCESSING WITH ORFEOTOOLBOX WPS
otb
 
0 intro
0 intro0 intro
0 intro
otb
 
Madagascar2011 - 08 - OTB segmentation and classification
Madagascar2011 - 08 - OTB segmentation and classificationMadagascar2011 - 08 - OTB segmentation and classification
Madagascar2011 - 08 - OTB segmentation and classification
otb
 
Madagascar2011 - 07 - OTB radiometry processing
Madagascar2011 - 07 -  OTB radiometry processingMadagascar2011 - 07 -  OTB radiometry processing
Madagascar2011 - 07 - OTB radiometry processing
otb
 
Madagascar2011 - 06 - OTB geometry processing
Madagascar2011 - 06 - OTB geometry processingMadagascar2011 - 06 - OTB geometry processing
Madagascar2011 - 06 - OTB geometry processing
otb
 
Madagascar2011 - 05 - Monteverdi first steps
Madagascar2011 - 05 - Monteverdi first stepsMadagascar2011 - 05 - Monteverdi first steps
Madagascar2011 - 05 - Monteverdi first steps
otb
 
Madagascar2011 - 04 - Présentation configuration pratical work
Madagascar2011 - 04 - Présentation configuration pratical workMadagascar2011 - 04 - Présentation configuration pratical work
Madagascar2011 - 04 - Présentation configuration pratical work
otb
 
Madagascar2011 - 03 - Présentation Monteverdi
Madagascar2011 - 03 - Présentation MonteverdiMadagascar2011 - 03 - Présentation Monteverdi
Madagascar2011 - 03 - Présentation Monteverdi
otb
 
Madagascar2011 - 10 - OTB Object Based Image Analysis
Madagascar2011 - 10 -  OTB Object Based Image AnalysisMadagascar2011 - 10 -  OTB Object Based Image Analysis
Madagascar2011 - 10 - OTB Object Based Image Analysis
otb
 
AUF 11 - 02 Geometrie
AUF 11 - 02 GeometrieAUF 11 - 02 Geometrie
AUF 11 - 02 Geometrie
otb
 
AUF 11 - 03 Radiometrie
AUF 11 - 03 RadiometrieAUF 11 - 03 Radiometrie
AUF 11 - 03 Radiometrie
otb
 
AUF 11 - 04 Primitives
AUF 11 - 04 PrimitivesAUF 11 - 04 Primitives
AUF 11 - 04 Primitives
otb
 

Plus de otb (20)

ONLINE IMAGE PROCESSING WITH ORFEOTOOLBOX WPS
ONLINE IMAGE PROCESSING WITH ORFEOTOOLBOX WPSONLINE IMAGE PROCESSING WITH ORFEOTOOLBOX WPS
ONLINE IMAGE PROCESSING WITH ORFEOTOOLBOX WPS
 
Build OTB with the SuperBuild
Build OTB with the SuperBuildBuild OTB with the SuperBuild
Build OTB with the SuperBuild
 
ORFEO ToolBox Project Steering committee
ORFEO ToolBox Project Steering committeeORFEO ToolBox Project Steering committee
ORFEO ToolBox Project Steering committee
 
OTB modular architecture
OTB modular architectureOTB modular architecture
OTB modular architecture
 
0 intro
0 intro0 intro
0 intro
 
Usages of OTB at SERTIT OTB Users meeting and hackfest 2015
Usages of OTB at SERTIT OTB Users meeting and hackfest 2015Usages of OTB at SERTIT OTB Users meeting and hackfest 2015
Usages of OTB at SERTIT OTB Users meeting and hackfest 2015
 
Teaching Remote Sensing with OTB Applications & Monterverdi (and a little of ...
Teaching Remote Sensing with OTB Applications & Monterverdi (and a little of ...Teaching Remote Sensing with OTB Applications & Monterverdi (and a little of ...
Teaching Remote Sensing with OTB Applications & Monterverdi (and a little of ...
 
Monitoring tropical forest cover Activities of ONFI in remote sensing
Monitoring tropical forest cover Activities of ONFI in remote sensingMonitoring tropical forest cover Activities of ONFI in remote sensing
Monitoring tropical forest cover Activities of ONFI in remote sensing
 
Monteverdi 2.0 - Remote sensing software for Pleiades images analysis
Monteverdi 2.0 - Remote sensing software for Pleiades images analysisMonteverdi 2.0 - Remote sensing software for Pleiades images analysis
Monteverdi 2.0 - Remote sensing software for Pleiades images analysis
 
Présentation de l'ORFEO ToolBox au FROG2013
Présentation de l'ORFEO ToolBox au FROG2013Présentation de l'ORFEO ToolBox au FROG2013
Présentation de l'ORFEO ToolBox au FROG2013
 
Madagascar2011 - 08 - OTB segmentation and classification
Madagascar2011 - 08 - OTB segmentation and classificationMadagascar2011 - 08 - OTB segmentation and classification
Madagascar2011 - 08 - OTB segmentation and classification
 
Madagascar2011 - 07 - OTB radiometry processing
Madagascar2011 - 07 -  OTB radiometry processingMadagascar2011 - 07 -  OTB radiometry processing
Madagascar2011 - 07 - OTB radiometry processing
 
Madagascar2011 - 06 - OTB geometry processing
Madagascar2011 - 06 - OTB geometry processingMadagascar2011 - 06 - OTB geometry processing
Madagascar2011 - 06 - OTB geometry processing
 
Madagascar2011 - 05 - Monteverdi first steps
Madagascar2011 - 05 - Monteverdi first stepsMadagascar2011 - 05 - Monteverdi first steps
Madagascar2011 - 05 - Monteverdi first steps
 
Madagascar2011 - 04 - Présentation configuration pratical work
Madagascar2011 - 04 - Présentation configuration pratical workMadagascar2011 - 04 - Présentation configuration pratical work
Madagascar2011 - 04 - Présentation configuration pratical work
 
Madagascar2011 - 03 - Présentation Monteverdi
Madagascar2011 - 03 - Présentation MonteverdiMadagascar2011 - 03 - Présentation Monteverdi
Madagascar2011 - 03 - Présentation Monteverdi
 
Madagascar2011 - 10 - OTB Object Based Image Analysis
Madagascar2011 - 10 -  OTB Object Based Image AnalysisMadagascar2011 - 10 -  OTB Object Based Image Analysis
Madagascar2011 - 10 - OTB Object Based Image Analysis
 
AUF 11 - 02 Geometrie
AUF 11 - 02 GeometrieAUF 11 - 02 Geometrie
AUF 11 - 02 Geometrie
 
AUF 11 - 03 Radiometrie
AUF 11 - 03 RadiometrieAUF 11 - 03 Radiometrie
AUF 11 - 03 Radiometrie
 
AUF 11 - 04 Primitives
AUF 11 - 04 PrimitivesAUF 11 - 04 Primitives
AUF 11 - 04 Primitives
 

Dernier

introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Dernier (20)

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 

Ice: lightweight, efficient rendering for remote sensing images

  • 1. Ice: lightweight, efficient rendering for remote sensing images Julien Michel1, Gabriele Facciolo2 1 CNES - DCT/SI/AP, France - julien.michel@cnes.fr 2 CMLA, ENS Cachan, France - gabriele.facciolo@cmla.ens-cachan.fr Ice overview Why Ice •Users want instant navigation in data •But satellite images are large: –Size: 40 000 x 40 000 pixels (pléiades) –Spectral band: 4, 6, 8, or even more! –Bit depth > 8: requires preprocessing to display –Compression (JPEG2000 8 Go → 2 or 3 Go) •Users even want to see . . . several images together! •Rendering fine tuning is often cumbersome . . . •We can do better! What Ice is •Ice is a library depending on OTB and OpenGL •Implementing a scene/actors paradigm •To display several raster or vector files together •Keyword: responsive and on-the-fly rendering •With fun tools to see your data in a different way •Agnostic wrt. GL context or graphical toolkit •Does not implement user interactions •Comes with a demo based on GLFW Ice rendering model View Actor 1 Actor 2 Actor N View settings Ice OpenGl Context and Graphical toolkit ... Hard drive Actors stack User actions What makes Ice efficient Multi-resolution tiles caching Tiles already cached Tiles to load Tiles are cached in RAM and in GPU memory (see GLSL rendering) GLSL Rendering How to make contrast related operations efficient? 1.Load tile to RAM 2.Extract the RGB components to be displayed 3.Load tile to GPU as a RGB FLOAT32 OpenGL texture 4.Write shaders in GL Shading Language to perform the 8 bits rendering This key idea comes from the pvflip image viewer: •GLSL is a high-level shading language based on the syntax of the C pro- gramming language (source: wikipedia) •Any contrast editing operation only implies GPU, and is therefore incredibly responsive (can run at 50 FPS or even higher) •GLSL also allows to create new rendering effects enabled by the respon- siveness Textures mapping Image to screen transform Rotation, translation, scaling SRS change Orthorectification with DSM Image Domain: square tiles Viewport (screen) domain : texture mapping Regular tiles in the image domain are mapped to quadrilaterals in the screen domain. Resampling is handled by GPU through texture mapping, and is therefore very efficient. Orfeo ToolBox automagically handles coordinates mapping between actors and viewport geometries. Light vs. Heavy cycles Hard Drive RAM GPU Heavy rendering cycle Light rendering cycle Depending on user interactions, light or heavy cycles can be triggered When is a heavy cycle really needed? •Loading of a new actor (vector or raster) •At the end of a move (translation, rotation, zoom in or out) •When changing bands to be displayed. That’s all! Fun with shaders Local contrast enhancement Local spectral angle mapping Chessboard transparency Local Gradient Ressources and Live Demo Ice: hg.orfeo-toolbox.org/Ice Orfeo ToolBox: orfeo-toolbox.org Pvflip: https://github.com/gfacciol/pvflip