SlideShare a Scribd company logo
GPU Implementation of Satellite
 Image Filtering using OpenCL
             Institute for Geoinformatics
 Advanced processing of geospatial data- GPU, Grid and
                   Cloud computing
                Ermias Beyene Tesfamariam
                       15 July 2010
Objective
• Efficient edge detection method for remote
  sensing imageries.

• implementation of image filtering on
  programmable GPU using the openCL language

• Comparison of different algorithms (Sobel vs.
  Laplacian) for their efficiency and quality
Application
• The HOST executes the code written as usual,
  using C++.

• The DEVICES execute OpenCL code.

• Use specific OpenCL compiler for the CPU & for
  the GPU (ATI Stream).

• The OpenCL API has functions to identify devices,
  compile programs, send and receive information
  and run OpenCL program on the chosen device.
Application
OpenCL Code:
 1 - Create the OpenCL code using OpenCL
 language;

Host Code:
 2 - Create program using C++;
 3 - Import the data to be processed;
 4 - Use the OpenCL API to transfer data to the
 devices;
 5 - Use the OpenCL API to call executions;
 6 - Retrieve processed data.
Main OpenCL API Commands
• Memory allocation via API
   – clCreateBuffer



• Accessing device memory via API
   – clEnqueueWriteBuffer

   – clEnqueueReadBuffer
Method
• Landsat imageries
  – Bands with high contrast, e.g. Band 4
• Image Convolution
  – 3X3 Filtering Mask convolves over the image




• Sobel Algorithm

• Laplacian Algorithm
Sobel Filter
• 2-D anisotropic measure of the 1st spatial
  derivative of an image.
Sobel filter
• consists of two kernels (Masks) which detect
  horizontal and vertical changes in an image
• The 3x3 Sobel kernels are:
  – Horizontal



  – Vertical
Sobel filter
Laplacian filter
  2-D isotropic measure of the 2nd spatial
  derivative of an image.
Sobel Filter Output Image
Sobel Filter Output Image
GPU vs CPU performance
Sobel Filter




Laplacian Filter
Open Issue
• Applying Image smoothing and contrast
  enhancement before/during filtering
Gpu implementation of satellite image filtering

More Related Content

What's hot

Processing Rasters from Satellites, Drones, & More
Processing Rasters from Satellites, Drones, & MoreProcessing Rasters from Satellites, Drones, & More
Processing Rasters from Satellites, Drones, & More
Safe Software
 
Digital auto tracking
Digital auto trackingDigital auto tracking
Digital auto tracking
Antonio Garruzzo
 
Arc: An IR for Batch and Stream Programming
Arc: An IR for Batch and Stream ProgrammingArc: An IR for Batch and Stream Programming
Arc: An IR for Batch and Stream Programming
Lars Kroll
 
How Rough Is Your Runway?
How Rough Is Your Runway? How Rough Is Your Runway?
How Rough Is Your Runway?
Safe Software
 
Mapping From Unmanned Aircraft System (UAV)
Mapping From Unmanned Aircraft System (UAV)Mapping From Unmanned Aircraft System (UAV)
Mapping From Unmanned Aircraft System (UAV)
Nasr Khashoggi
 
Digital Transformation & Solvency II Simulations for L&G: Optimizing, Acceler...
Digital Transformation & Solvency II Simulations for L&G: Optimizing, Acceler...Digital Transformation & Solvency II Simulations for L&G: Optimizing, Acceler...
Digital Transformation & Solvency II Simulations for L&G: Optimizing, Acceler...
OW2
 
Lyapunov Exponent of Time Series Data
Lyapunov Exponent of Time Series DataLyapunov Exponent of Time Series Data
Lyapunov Exponent of Time Series Data
Abhranil Das
 
Geo Location Initial PoC
Geo Location Initial PoCGeo Location Initial PoC
Geo Location Initial PoC
Jacob Christiansen
 
Image Classification and Retrieval logic
Image Classification and Retrieval logicImage Classification and Retrieval logic
Image Classification and Retrieval logic
Gianvito Siciliano
 
Airfare prediction using Machine Learning with Apache Spark on 1 billion obse...
Airfare prediction using Machine Learning with Apache Spark on 1 billion obse...Airfare prediction using Machine Learning with Apache Spark on 1 billion obse...
Airfare prediction using Machine Learning with Apache Spark on 1 billion obse...
Josef A. Habdank
 
Improving Weather Information Data Services with FME
Improving Weather Information Data Services with FMEImproving Weather Information Data Services with FME
Improving Weather Information Data Services with FME
Safe Software
 
calculating wind speed and direction using arcgis
calculating wind speed and direction using arcgiscalculating wind speed and direction using arcgis
calculating wind speed and direction using arcgis
saqibjavaid17
 
TEAM 3: Improving Open Land Use Map by using Satellite Data
TEAM 3: Improving Open Land Use Map by using Satellite DataTEAM 3: Improving Open Land Use Map by using Satellite Data
TEAM 3: Improving Open Land Use Map by using Satellite Data
plan4all
 
3D Analyst Watershed Lombok
3D Analyst Watershed  Lombok3D Analyst Watershed  Lombok
3D Analyst Watershed Lombok
Hartanto Sanjaya
 
Parallel Rendering
Parallel RenderingParallel Rendering
Parallel Rendering
Syed Zaid Irshad
 
Cp 2 project
Cp 2 projectCp 2 project
Cp 2 project
shyamRav
 
Digimap Aerial Collection - Geoforum 2016 - Ian Holmes
Digimap Aerial Collection - Geoforum 2016 - Ian HolmesDigimap Aerial Collection - Geoforum 2016 - Ian Holmes
Digimap Aerial Collection - Geoforum 2016 - Ian Holmes
EDINA, University of Edinburgh
 
Open layers
Open layersOpen layers
Open layers
Janak Parajuli
 
fccm2015-jain-presentation
fccm2015-jain-presentationfccm2015-jain-presentation
fccm2015-jain-presentation
Abhishek Jain
 
On NASA Space Shuttle Program Hardware and Software
On NASA Space Shuttle Program Hardware and SoftwareOn NASA Space Shuttle Program Hardware and Software
On NASA Space Shuttle Program Hardware and Software
Martin Dvorak
 

What's hot (20)

Processing Rasters from Satellites, Drones, & More
Processing Rasters from Satellites, Drones, & MoreProcessing Rasters from Satellites, Drones, & More
Processing Rasters from Satellites, Drones, & More
 
Digital auto tracking
Digital auto trackingDigital auto tracking
Digital auto tracking
 
Arc: An IR for Batch and Stream Programming
Arc: An IR for Batch and Stream ProgrammingArc: An IR for Batch and Stream Programming
Arc: An IR for Batch and Stream Programming
 
How Rough Is Your Runway?
How Rough Is Your Runway? How Rough Is Your Runway?
How Rough Is Your Runway?
 
Mapping From Unmanned Aircraft System (UAV)
Mapping From Unmanned Aircraft System (UAV)Mapping From Unmanned Aircraft System (UAV)
Mapping From Unmanned Aircraft System (UAV)
 
Digital Transformation & Solvency II Simulations for L&G: Optimizing, Acceler...
Digital Transformation & Solvency II Simulations for L&G: Optimizing, Acceler...Digital Transformation & Solvency II Simulations for L&G: Optimizing, Acceler...
Digital Transformation & Solvency II Simulations for L&G: Optimizing, Acceler...
 
Lyapunov Exponent of Time Series Data
Lyapunov Exponent of Time Series DataLyapunov Exponent of Time Series Data
Lyapunov Exponent of Time Series Data
 
Geo Location Initial PoC
Geo Location Initial PoCGeo Location Initial PoC
Geo Location Initial PoC
 
Image Classification and Retrieval logic
Image Classification and Retrieval logicImage Classification and Retrieval logic
Image Classification and Retrieval logic
 
Airfare prediction using Machine Learning with Apache Spark on 1 billion obse...
Airfare prediction using Machine Learning with Apache Spark on 1 billion obse...Airfare prediction using Machine Learning with Apache Spark on 1 billion obse...
Airfare prediction using Machine Learning with Apache Spark on 1 billion obse...
 
Improving Weather Information Data Services with FME
Improving Weather Information Data Services with FMEImproving Weather Information Data Services with FME
Improving Weather Information Data Services with FME
 
calculating wind speed and direction using arcgis
calculating wind speed and direction using arcgiscalculating wind speed and direction using arcgis
calculating wind speed and direction using arcgis
 
TEAM 3: Improving Open Land Use Map by using Satellite Data
TEAM 3: Improving Open Land Use Map by using Satellite DataTEAM 3: Improving Open Land Use Map by using Satellite Data
TEAM 3: Improving Open Land Use Map by using Satellite Data
 
3D Analyst Watershed Lombok
3D Analyst Watershed  Lombok3D Analyst Watershed  Lombok
3D Analyst Watershed Lombok
 
Parallel Rendering
Parallel RenderingParallel Rendering
Parallel Rendering
 
Cp 2 project
Cp 2 projectCp 2 project
Cp 2 project
 
Digimap Aerial Collection - Geoforum 2016 - Ian Holmes
Digimap Aerial Collection - Geoforum 2016 - Ian HolmesDigimap Aerial Collection - Geoforum 2016 - Ian Holmes
Digimap Aerial Collection - Geoforum 2016 - Ian Holmes
 
Open layers
Open layersOpen layers
Open layers
 
fccm2015-jain-presentation
fccm2015-jain-presentationfccm2015-jain-presentation
fccm2015-jain-presentation
 
On NASA Space Shuttle Program Hardware and Software
On NASA Space Shuttle Program Hardware and SoftwareOn NASA Space Shuttle Program Hardware and Software
On NASA Space Shuttle Program Hardware and Software
 

Similar to Gpu implementation of satellite image filtering

WT-4069, WebCL: Enabling OpenCL Acceleration of Web Applications, by Mikael ...
WT-4069, WebCL: Enabling OpenCL Acceleration of Web Applications, by  Mikael ...WT-4069, WebCL: Enabling OpenCL Acceleration of Web Applications, by  Mikael ...
WT-4069, WebCL: Enabling OpenCL Acceleration of Web Applications, by Mikael ...
AMD Developer Central
 
Introduction to OpenCL
Introduction to OpenCLIntroduction to OpenCL
Introduction to OpenCL
Unai Lopez-Novoa
 
Hands on OpenCL
Hands on OpenCLHands on OpenCL
Hands on OpenCL
Vladimir Starostenkov
 
MattsonTutorialSC14.pdf
MattsonTutorialSC14.pdfMattsonTutorialSC14.pdf
MattsonTutorialSC14.pdf
George Papaioannou
 
MattsonTutorialSC14.pptx
MattsonTutorialSC14.pptxMattsonTutorialSC14.pptx
MattsonTutorialSC14.pptx
gopikahari7
 
Automatic License Plate Recognition using OpenCV
Automatic License Plate Recognition using OpenCVAutomatic License Plate Recognition using OpenCV
Automatic License Plate Recognition using OpenCV
Editor IJCATR
 
Automatic License Plate Recognition using OpenCV
Automatic License Plate Recognition using OpenCV Automatic License Plate Recognition using OpenCV
Automatic License Plate Recognition using OpenCV
Editor IJCATR
 
Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...
Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...
Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...
Embarcados
 
PT-4053, Advanced OpenCL - Debugging and Profiling Using AMD CodeXL, by Uri S...
PT-4053, Advanced OpenCL - Debugging and Profiling Using AMD CodeXL, by Uri S...PT-4053, Advanced OpenCL - Debugging and Profiling Using AMD CodeXL, by Uri S...
PT-4053, Advanced OpenCL - Debugging and Profiling Using AMD CodeXL, by Uri S...
AMD Developer Central
 
Current & Future Use-Cases of OpenDaylight
Current & Future Use-Cases of OpenDaylightCurrent & Future Use-Cases of OpenDaylight
Current & Future Use-Cases of OpenDaylight
abhijit2511
 
Graphical packet generator
Graphical packet generatorGraphical packet generator
Graphical packet generator
tusharjadhav2611
 
"OpenCV for High-performance, Low-power Vision Applications on Snapdragon," a...
"OpenCV for High-performance, Low-power Vision Applications on Snapdragon," a..."OpenCV for High-performance, Low-power Vision Applications on Snapdragon," a...
"OpenCV for High-performance, Low-power Vision Applications on Snapdragon," a...
Edge AI and Vision Alliance
 
lecture_GPUArchCUDA04-OpenMPHOMP.pdf
lecture_GPUArchCUDA04-OpenMPHOMP.pdflecture_GPUArchCUDA04-OpenMPHOMP.pdf
lecture_GPUArchCUDA04-OpenMPHOMP.pdf
Tigabu Yaya
 
Development of Signal Processing Algorithms using OpenCL for FPGA based Archi...
Development of Signal Processing Algorithms using OpenCL for FPGA based Archi...Development of Signal Processing Algorithms using OpenCL for FPGA based Archi...
Development of Signal Processing Algorithms using OpenCL for FPGA based Archi...
Pradeep Singh
 
Introduction to OpenCL, 2010
Introduction to OpenCL, 2010Introduction to OpenCL, 2010
Introduction to OpenCL, 2010
Tomasz Bednarz
 
REAL TIME FACE DETECTION ON GPU USING OPENCL
REAL TIME FACE DETECTION ON GPU USING OPENCLREAL TIME FACE DETECTION ON GPU USING OPENCL
REAL TIME FACE DETECTION ON GPU USING OPENCL
NARMADA NAIK
 
Boosting your HTML Apps – Overview of OpenCL and Hello World of WebCL
Boosting your HTML Apps – Overview of OpenCL and Hello World of WebCLBoosting your HTML Apps – Overview of OpenCL and Hello World of WebCL
Boosting your HTML Apps – Overview of OpenCL and Hello World of WebCL
JanakiRam Raghumandala
 
Real Time Face Detection on GPU Using OPENCL
Real Time Face Detection on GPU Using OPENCLReal Time Face Detection on GPU Using OPENCL
Real Time Face Detection on GPU Using OPENCL
csandit
 
"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese..."Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
Edge AI and Vision Alliance
 
OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012
Wingston
 

Similar to Gpu implementation of satellite image filtering (20)

WT-4069, WebCL: Enabling OpenCL Acceleration of Web Applications, by Mikael ...
WT-4069, WebCL: Enabling OpenCL Acceleration of Web Applications, by  Mikael ...WT-4069, WebCL: Enabling OpenCL Acceleration of Web Applications, by  Mikael ...
WT-4069, WebCL: Enabling OpenCL Acceleration of Web Applications, by Mikael ...
 
Introduction to OpenCL
Introduction to OpenCLIntroduction to OpenCL
Introduction to OpenCL
 
Hands on OpenCL
Hands on OpenCLHands on OpenCL
Hands on OpenCL
 
MattsonTutorialSC14.pdf
MattsonTutorialSC14.pdfMattsonTutorialSC14.pdf
MattsonTutorialSC14.pdf
 
MattsonTutorialSC14.pptx
MattsonTutorialSC14.pptxMattsonTutorialSC14.pptx
MattsonTutorialSC14.pptx
 
Automatic License Plate Recognition using OpenCV
Automatic License Plate Recognition using OpenCVAutomatic License Plate Recognition using OpenCV
Automatic License Plate Recognition using OpenCV
 
Automatic License Plate Recognition using OpenCV
Automatic License Plate Recognition using OpenCV Automatic License Plate Recognition using OpenCV
Automatic License Plate Recognition using OpenCV
 
Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...
Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...
Webinar: Começando seus trabalhos com Machine Learning utilizando ferramentas...
 
PT-4053, Advanced OpenCL - Debugging and Profiling Using AMD CodeXL, by Uri S...
PT-4053, Advanced OpenCL - Debugging and Profiling Using AMD CodeXL, by Uri S...PT-4053, Advanced OpenCL - Debugging and Profiling Using AMD CodeXL, by Uri S...
PT-4053, Advanced OpenCL - Debugging and Profiling Using AMD CodeXL, by Uri S...
 
Current & Future Use-Cases of OpenDaylight
Current & Future Use-Cases of OpenDaylightCurrent & Future Use-Cases of OpenDaylight
Current & Future Use-Cases of OpenDaylight
 
Graphical packet generator
Graphical packet generatorGraphical packet generator
Graphical packet generator
 
"OpenCV for High-performance, Low-power Vision Applications on Snapdragon," a...
"OpenCV for High-performance, Low-power Vision Applications on Snapdragon," a..."OpenCV for High-performance, Low-power Vision Applications on Snapdragon," a...
"OpenCV for High-performance, Low-power Vision Applications on Snapdragon," a...
 
lecture_GPUArchCUDA04-OpenMPHOMP.pdf
lecture_GPUArchCUDA04-OpenMPHOMP.pdflecture_GPUArchCUDA04-OpenMPHOMP.pdf
lecture_GPUArchCUDA04-OpenMPHOMP.pdf
 
Development of Signal Processing Algorithms using OpenCL for FPGA based Archi...
Development of Signal Processing Algorithms using OpenCL for FPGA based Archi...Development of Signal Processing Algorithms using OpenCL for FPGA based Archi...
Development of Signal Processing Algorithms using OpenCL for FPGA based Archi...
 
Introduction to OpenCL, 2010
Introduction to OpenCL, 2010Introduction to OpenCL, 2010
Introduction to OpenCL, 2010
 
REAL TIME FACE DETECTION ON GPU USING OPENCL
REAL TIME FACE DETECTION ON GPU USING OPENCLREAL TIME FACE DETECTION ON GPU USING OPENCL
REAL TIME FACE DETECTION ON GPU USING OPENCL
 
Boosting your HTML Apps – Overview of OpenCL and Hello World of WebCL
Boosting your HTML Apps – Overview of OpenCL and Hello World of WebCLBoosting your HTML Apps – Overview of OpenCL and Hello World of WebCL
Boosting your HTML Apps – Overview of OpenCL and Hello World of WebCL
 
Real Time Face Detection on GPU Using OPENCL
Real Time Face Detection on GPU Using OPENCLReal Time Face Detection on GPU Using OPENCL
Real Time Face Detection on GPU Using OPENCL
 
"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese..."Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
"Making Computer Vision Software Run Fast on Your Embedded Platform," a Prese...
 
OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012
 

Recently uploaded

Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
FODUU
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 

Recently uploaded (20)

Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 

Gpu implementation of satellite image filtering

  • 1. GPU Implementation of Satellite Image Filtering using OpenCL Institute for Geoinformatics Advanced processing of geospatial data- GPU, Grid and Cloud computing Ermias Beyene Tesfamariam 15 July 2010
  • 2. Objective • Efficient edge detection method for remote sensing imageries. • implementation of image filtering on programmable GPU using the openCL language • Comparison of different algorithms (Sobel vs. Laplacian) for their efficiency and quality
  • 3. Application • The HOST executes the code written as usual, using C++. • The DEVICES execute OpenCL code. • Use specific OpenCL compiler for the CPU & for the GPU (ATI Stream). • The OpenCL API has functions to identify devices, compile programs, send and receive information and run OpenCL program on the chosen device.
  • 4. Application OpenCL Code: 1 - Create the OpenCL code using OpenCL language; Host Code: 2 - Create program using C++; 3 - Import the data to be processed; 4 - Use the OpenCL API to transfer data to the devices; 5 - Use the OpenCL API to call executions; 6 - Retrieve processed data.
  • 5. Main OpenCL API Commands • Memory allocation via API – clCreateBuffer • Accessing device memory via API – clEnqueueWriteBuffer – clEnqueueReadBuffer
  • 6. Method • Landsat imageries – Bands with high contrast, e.g. Band 4 • Image Convolution – 3X3 Filtering Mask convolves over the image • Sobel Algorithm • Laplacian Algorithm
  • 7. Sobel Filter • 2-D anisotropic measure of the 1st spatial derivative of an image.
  • 8. Sobel filter • consists of two kernels (Masks) which detect horizontal and vertical changes in an image • The 3x3 Sobel kernels are: – Horizontal – Vertical
  • 10. Laplacian filter 2-D isotropic measure of the 2nd spatial derivative of an image.
  • 11.
  • 14. GPU vs CPU performance Sobel Filter Laplacian Filter
  • 15. Open Issue • Applying Image smoothing and contrast enhancement before/during filtering