SlideShare a Scribd company logo
1 of 15
Accelerating remote sensing visualization with WebGL Trevor Clarke Opticks Developer Ball Aerospace & Technologies Corp. tclarke@ball.com http://opticks.org
Non-literal remote sensing More than just pictures Spectral Calculate statistics and visualize relationships LIDAR Dynamic 3D visualizations
To the cloud Wouldn’t it be cool if we could do this in a web browser?
To the cloud Maybe we can WMS – Context maps WCS – RAW data WPS – Process execution
To the cloud Doesn’t help with LIDAR Spectral display often need lots of “tweaking” to find proper thresholds, etc.
To the cloud WCS WPS WMS Adjust threshold
Desktop solution A typical solution for desktop apps is to calculate the results data once and just change the display This is quite fast when all display operations happen in RAM and/or on the video card
A solution for the browser Calculate the results data once with WPS and transfer with WCS Perform visualization and compositing with Canvas/WebGL
A solution for the browser WCS WPS WCS WebGL Texture adjustment Histogram
A solution for the browser Includes material © 2010 DigitalGlobe, Inc. ALL RIGHTS RESERVED
Current status Proof of concept complete Partially completed WebGL/Canvas layer for OpenLayers Some basic shaders completed (primarily for hyperspectral) Threshold Dynamic color maps
Current status Multiple server side solutions being tested GeoServer for WMS MapServer for WCS and WPS results 52north, PyWPS, and Zoo being evaluated for WPS
Future Port to mobile platforms Little to no WebGL support currently Shaders and data flow are the same Java (Android) or Objective-C (iOS) instead of JavaScript gvSIG Mini Maps might be a good starting point
Future Same technique useful for LIDAR (and other 3D display) Multiple shaders for a variety of display modes available from Opticks (my other project)
Q&A Presentation available at http://slideshare.net Trevor Clarke Opticks Developer Ball Aerospace & Technologies Corp. tclarke@ball.com http://opticks.org

More Related Content

Similar to WebGL Lightning Talk FOSS4G 2011

CloudCamp London 3 - NT/e - Matthew Fowler
CloudCamp London 3 - NT/e - Matthew FowlerCloudCamp London 3 - NT/e - Matthew Fowler
CloudCamp London 3 - NT/e - Matthew FowlerChris Purrington
 
Cloud computing and web processing services
Cloud computing and web processing servicesCloud computing and web processing services
Cloud computing and web processing servicesGasperi Jerome
 
OHECC 2014 KSU Cloud Integrated Datacenter
OHECC 2014 KSU Cloud Integrated DatacenterOHECC 2014 KSU Cloud Integrated Datacenter
OHECC 2014 KSU Cloud Integrated DatacenterTodd Ryan
 
Thematic Mapping and Drupal: Building Citizen Engagement with Open Source Tools
Thematic Mapping and Drupal: Building Citizen Engagement with Open Source ToolsThematic Mapping and Drupal: Building Citizen Engagement with Open Source Tools
Thematic Mapping and Drupal: Building Citizen Engagement with Open Source Toolswhurleyf1
 
Geospatial Workloads on AWS_Herman Coomans
Geospatial Workloads on AWS_Herman CoomansGeospatial Workloads on AWS_Herman Coomans
Geospatial Workloads on AWS_Herman CoomansHelen Rogers
 
Unleash Workflow Within Plant Design Processes with Laser Scans and Autodesk ...
Unleash Workflow Within Plant Design Processes with Laser Scans and Autodesk ...Unleash Workflow Within Plant Design Processes with Laser Scans and Autodesk ...
Unleash Workflow Within Plant Design Processes with Laser Scans and Autodesk ...Melissa Tiffany
 
Cloud Computing Overview And Predictions May 2009
Cloud Computing Overview And Predictions   May 2009Cloud Computing Overview And Predictions   May 2009
Cloud Computing Overview And Predictions May 2009Brent Jackson
 
ADF Mapping Data Flows Training Slides V1
ADF Mapping Data Flows Training Slides V1ADF Mapping Data Flows Training Slides V1
ADF Mapping Data Flows Training Slides V1Mark Kromer
 
Highly Accurate Alignment of Data from Measurement Trains:

 the Challenges o...
Highly Accurate Alignment of Data from Measurement Trains:

 the Challenges o...Highly Accurate Alignment of Data from Measurement Trains:

 the Challenges o...
Highly Accurate Alignment of Data from Measurement Trains:

 the Challenges o...Geoff Ballinger
 
Geoavalanche
GeoavalancheGeoavalanche
GeoavalancheGeobeyond
 
20130423 webcast desarrollo en azure con visual studio
20130423 webcast desarrollo en azure con visual studio20130423 webcast desarrollo en azure con visual studio
20130423 webcast desarrollo en azure con visual studioRicardo González
 
Building a Scalable Federated Hybrid Cloud
Building a Scalable Federated Hybrid CloudBuilding a Scalable Federated Hybrid Cloud
Building a Scalable Federated Hybrid CloudPLUMgrid
 
Juniper Unmanned AU Presentation
Juniper Unmanned AU PresentationJuniper Unmanned AU Presentation
Juniper Unmanned AU PresentationJeff Cozart
 
The Last Frontier- Virtualization, Hybrid Management and the Cloud
The Last Frontier-  Virtualization, Hybrid Management and the CloudThe Last Frontier-  Virtualization, Hybrid Management and the Cloud
The Last Frontier- Virtualization, Hybrid Management and the CloudKellyn Pot'Vin-Gorman
 
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...Robert MacLean
 
Web Mapping 101: What Is It and Making It Work For You
Web Mapping 101: What Is It and Making It Work For YouWeb Mapping 101: What Is It and Making It Work For You
Web Mapping 101: What Is It and Making It Work For YouSafe Software
 
Migrating and modernizing your data estate to Azure with Data Migration Services
Migrating and modernizing your data estate to Azure with Data Migration ServicesMigrating and modernizing your data estate to Azure with Data Migration Services
Migrating and modernizing your data estate to Azure with Data Migration ServicesMicrosoft Tech Community
 

Similar to WebGL Lightning Talk FOSS4G 2011 (20)

CloudCamp London 3 - NT/e - Matthew Fowler
CloudCamp London 3 - NT/e - Matthew FowlerCloudCamp London 3 - NT/e - Matthew Fowler
CloudCamp London 3 - NT/e - Matthew Fowler
 
Cloud computing and web processing services
Cloud computing and web processing servicesCloud computing and web processing services
Cloud computing and web processing services
 
OHECC 2014 KSU Cloud Integrated Datacenter
OHECC 2014 KSU Cloud Integrated DatacenterOHECC 2014 KSU Cloud Integrated Datacenter
OHECC 2014 KSU Cloud Integrated Datacenter
 
Thematic Mapping and Drupal: Building Citizen Engagement with Open Source Tools
Thematic Mapping and Drupal: Building Citizen Engagement with Open Source ToolsThematic Mapping and Drupal: Building Citizen Engagement with Open Source Tools
Thematic Mapping and Drupal: Building Citizen Engagement with Open Source Tools
 
Geospatial Workloads on AWS_Herman Coomans
Geospatial Workloads on AWS_Herman CoomansGeospatial Workloads on AWS_Herman Coomans
Geospatial Workloads on AWS_Herman Coomans
 
Database Migrations to the Cloud
Database Migrations to the CloudDatabase Migrations to the Cloud
Database Migrations to the Cloud
 
Unleash Workflow Within Plant Design Processes with Laser Scans and Autodesk ...
Unleash Workflow Within Plant Design Processes with Laser Scans and Autodesk ...Unleash Workflow Within Plant Design Processes with Laser Scans and Autodesk ...
Unleash Workflow Within Plant Design Processes with Laser Scans and Autodesk ...
 
Cloud Computing Overview And Predictions May 2009
Cloud Computing Overview And Predictions   May 2009Cloud Computing Overview And Predictions   May 2009
Cloud Computing Overview And Predictions May 2009
 
ADF Mapping Data Flows Training Slides V1
ADF Mapping Data Flows Training Slides V1ADF Mapping Data Flows Training Slides V1
ADF Mapping Data Flows Training Slides V1
 
The Cloud Talk
The Cloud TalkThe Cloud Talk
The Cloud Talk
 
Highly Accurate Alignment of Data from Measurement Trains:

 the Challenges o...
Highly Accurate Alignment of Data from Measurement Trains:

 the Challenges o...Highly Accurate Alignment of Data from Measurement Trains:

 the Challenges o...
Highly Accurate Alignment of Data from Measurement Trains:

 the Challenges o...
 
Geoavalanche
GeoavalancheGeoavalanche
Geoavalanche
 
Making the Cloud a Known Entity
Making the Cloud a Known EntityMaking the Cloud a Known Entity
Making the Cloud a Known Entity
 
20130423 webcast desarrollo en azure con visual studio
20130423 webcast desarrollo en azure con visual studio20130423 webcast desarrollo en azure con visual studio
20130423 webcast desarrollo en azure con visual studio
 
Building a Scalable Federated Hybrid Cloud
Building a Scalable Federated Hybrid CloudBuilding a Scalable Federated Hybrid Cloud
Building a Scalable Federated Hybrid Cloud
 
Juniper Unmanned AU Presentation
Juniper Unmanned AU PresentationJuniper Unmanned AU Presentation
Juniper Unmanned AU Presentation
 
The Last Frontier- Virtualization, Hybrid Management and the Cloud
The Last Frontier-  Virtualization, Hybrid Management and the CloudThe Last Frontier-  Virtualization, Hybrid Management and the Cloud
The Last Frontier- Virtualization, Hybrid Management and the Cloud
 
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
DevDays 2011- Let’s get ready for the cloud: Building your applications so th...
 
Web Mapping 101: What Is It and Making It Work For You
Web Mapping 101: What Is It and Making It Work For YouWeb Mapping 101: What Is It and Making It Work For You
Web Mapping 101: What Is It and Making It Work For You
 
Migrating and modernizing your data estate to Azure with Data Migration Services
Migrating and modernizing your data estate to Azure with Data Migration ServicesMigrating and modernizing your data estate to Azure with Data Migration Services
Migrating and modernizing your data estate to Azure with Data Migration Services
 

Recently uploaded

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 

Recently uploaded (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 

WebGL Lightning Talk FOSS4G 2011

  • 1. Accelerating remote sensing visualization with WebGL Trevor Clarke Opticks Developer Ball Aerospace & Technologies Corp. tclarke@ball.com http://opticks.org
  • 2. Non-literal remote sensing More than just pictures Spectral Calculate statistics and visualize relationships LIDAR Dynamic 3D visualizations
  • 3. To the cloud Wouldn’t it be cool if we could do this in a web browser?
  • 4. To the cloud Maybe we can WMS – Context maps WCS – RAW data WPS – Process execution
  • 5. To the cloud Doesn’t help with LIDAR Spectral display often need lots of “tweaking” to find proper thresholds, etc.
  • 6. To the cloud WCS WPS WMS Adjust threshold
  • 7. Desktop solution A typical solution for desktop apps is to calculate the results data once and just change the display This is quite fast when all display operations happen in RAM and/or on the video card
  • 8. A solution for the browser Calculate the results data once with WPS and transfer with WCS Perform visualization and compositing with Canvas/WebGL
  • 9. A solution for the browser WCS WPS WCS WebGL Texture adjustment Histogram
  • 10. A solution for the browser Includes material © 2010 DigitalGlobe, Inc. ALL RIGHTS RESERVED
  • 11. Current status Proof of concept complete Partially completed WebGL/Canvas layer for OpenLayers Some basic shaders completed (primarily for hyperspectral) Threshold Dynamic color maps
  • 12. Current status Multiple server side solutions being tested GeoServer for WMS MapServer for WCS and WPS results 52north, PyWPS, and Zoo being evaluated for WPS
  • 13. Future Port to mobile platforms Little to no WebGL support currently Shaders and data flow are the same Java (Android) or Objective-C (iOS) instead of JavaScript gvSIG Mini Maps might be a good starting point
  • 14. Future Same technique useful for LIDAR (and other 3D display) Multiple shaders for a variety of display modes available from Opticks (my other project)
  • 15. Q&A Presentation available at http://slideshare.net Trevor Clarke Opticks Developer Ball Aerospace & Technologies Corp. tclarke@ball.com http://opticks.org

Editor's Notes

  1. Briefly compare to more traditional GIS type of exploitationSpectral often involves thresholded displays
  2. Existing OGC standards and implementations (open source and commercial). WMS provides rendered “maps”, WCS provides raw imagery, WPS provides a method to execute remote processes and return new data
  3. LIDAR discussed briefly, not the primary topic of this talk but applicable to the techniqueNoise in statistics make it difficult to locate notes in common bimodal distributions or other (more random?) distributions present other problemsMethods exist to automatically locate good threshold values but they are not perfectTweaking involves adjustments to threshold which are often easier with “drag and view” feedback loop which require immediate changes in display
  4. “Traditional” processing would require recalculating threshold image and resending the new image across the network.Even with fast connections this is not a real-time process, especially with large images.
  5. Compositing performed in GLSL shader
  6. WMS pushes imagery for background.WCS->WPS->WCS calculates result and pushes 4-byte float data to WebGL textureWCS->WPS->JSON calculates histogram of result and pushes data to JavaScript plotting for histogramClick and visualize on JavaScript histogram changes threshold value and repaints WebGL without requesting new data
  7. Tested on Firefox and Chrome
  8. Zoo has promise but not quite there.52north is quite powerful and feature rich but learning curve is highPyWPS seems to be a good compromise, and I like Python
  9. Proof of concept already ported to Android
  10. Single pass shaders: color map, fast clipping, height exaggeration, etc.Multiple pass shaders: dynamic classification methods