Download presentation
Presentation is loading. Please wait.
Published byMavis Townsend Modified over 9 years ago
1
Adam Wagner Kevin Forbes
2
Motivation Take advantage of GPU architecture for highly parallel data-intensive application Enhance image segmentation using Microsoft Kinect IR depth images Reduce frame-to-frame segmentation overhead with optical flow and iterative simulated annealing “Depth-supported real-time video segmentation with the Kinect” Algorithm uses Potts model and Metropolis method for segmentation on GPU
3
Implementation No base source code Software frameworks: OpenCV – image capture, transformations, optical flow OpenNI – Kinect middleware CUDA – NVIDIA GPGPU driven architecture Testbed: rcl1.engr.arizona.edu CPU: Quad-core Intel Xeon 5160, 3.0GHz GPU: NVIDIA GeForce GTX 480 480 CUDA Cores GDDR5 Threads/block = 1024 Shared memory / block = 48KB
4
Methodology Primary effort focused on parallelization of segmentation algorithm Without source, code was written from scratch for CPU, then parallelized Memory indexing rearranged to improve coalescing of global loads/stores Much later in semester, some code became available from paper authors Image divided into thread blocks on GPU Image data loaded into block shared memory from global memory Each thread performs state update on a single pixel
5
Results Input Image: 512 x 384 RGB to HSV Conversion 2000 Metropolis Iterations DimensionsSizeCPU rate (ms)GPU rate (ms) 128 x 961228810.50.054 256 x 19249152410.157 512 x 3841966081690.54 1024 x 7687864328602.115
6
Conclusions Parallelized algorithm shows vast improvement over CPU version Makes real-time video processing a possibility Implementation does not match paper More improvement possible through use of simpler data types Still more fine tuned memory arrangement Increase work done by each thread
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.