skip to content
Hands-on GPU-accelerated computer vision with OpenCV and CUDA : effective techniques for processing complex image data in real time using GPUs. Preview this item
ClosePreview this item
Checking...

Hands-on GPU-accelerated computer vision with OpenCV and CUDA : effective techniques for processing complex image data in real time using GPUs.

Author: Bhaumik Vaidya
Publisher: Birmingham : Packt, 2018.
Edition/Format:   eBook : Document : EnglishView all editions and formats
Summary:
This book is a guide to explore how accelerating of computer vision applications using GPUs will help you develop algorithms that work on complex image data in real time. It will solve the problems you face while deploying these algorithms on embedded platforms with the help of development boards from NVIDIA such as the Jetson TX1, Jetson TX2 ...
Rating:

(not yet rated) 0 with reviews - Be the first.

Subjects
More like this

Find a copy online

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Genre/Form: Electronic books
Material Type: Document, Internet resource
Document Type: Internet Resource, Computer File
All Authors / Contributors: Bhaumik Vaidya
ISBN: 9781789343687 1789343682
OCLC Number: 1056071267
Description: 1 online resource (373 pages)
Contents: Cover --
Title Page --
Copyright and Credits --
Packt Upsell --
Contributors --
Table of Contents --
Preface --
Chapter 1: Introducing CUDA and Getting Started with CUDA --
Technical requirements --
Introducing CUDA --
Parallel processing --
Introducing GPU architecture and CUDA --
CUDA architecture --
CUDA applications --
CUDA development environment --
CUDA-supported GPU --
NVIDIA graphics card driver --
Standard C compiler --
CUDA development kit --
Installing the CUDA toolkit on all operating systems --
Windows --
Linux --
Mac --
A basic program in CUDA C --
Steps for creating a CUDA C program on Windows --
Steps for creating a CUDA C program on Ubuntu --
Summary --
Questions --
Chapter 2: Parallel Programming using CUDA C --
Technical requirements --
CUDA program structure --
Two-variable addition program in CUDA C --
A kernel call --
Configuring kernel parameters --
CUDA API functions --
Passing parameters to CUDA functions --
Passing parameters by value --
Passing parameters by reference --
Executing threads on a device --
Accessing GPU device properties from CUDA programs --
General device properties --
Memory-related properties --
Thread-related properties --
Vector operations in CUDA --
Two-vector addition program --
Comparing latency between the CPU and the GPU code --
Elementwise squaring of vectors in CUDA --
Parallel communication patterns --
Map --
Gather --
Scatter --
Stencil --
Transpose --
Summary --
Questions --
Chapter 3: Threads, Synchronization, and Memory --
Technical requirements --
Threads --
Memory architecture --
Global memory --
Local memory and registers --
Cache memory --
Thread synchronization --
Shared memory --
Atomic operations --
Constant memory --
Texture memory --
Dot product and matrix multiplication example --
Dot product --
Matrix multiplication --
Summary --
Questions. Advanced Concepts in Chapter 4: CUDA --
Technical requirements --
Performance measurement of CUDA programs --
CUDA Events --
The Nvidia Visual Profiler --
Error handling in CUDA --
Error handling from within the code --
Debugging tools --
Performance improvement of CUDA programs --
Using an optimum number of blocks and threads --
Maximizing arithmetic efficiency --
Using coalesced or strided memory access --
Avoiding thread divergence --
Using page-locked host memory --
CUDA streams --
Using multiple CUDA streams --
Acceleration of sorting algorithms using CUDA --
Enumeration or rank sort algorithms --
Image processing using CUDA --
Histogram calculation on the GPU using CUDA --
Summary --
Questions --
Chapter 5: Getting Started with OpenCV with CUDA Support --
Technical requirements --
Introduction to image processing and computer vision --
Introduction to OpenCV --
Installation of OpenCV with CUDA support --
Installation of OpenCV on Windows --
Using pre-built binaries --
Building libraries from source --
Installation of OpenCV with CUDA support on Linux --
Working with images in OpenCV --
Image representation inside OpenCV --
Reading and displaying an image --
Reading and displaying a color image --
Creating images using OpenCV --
Drawing shapes on the blank image --
Drawing a line --
Drawing a rectangle --
Drawing a circle --
Drawing an ellipse --
Writing text on an image --
Saving an image to a file --
Working with videos in OpenCV --
Working with video stored on a computer --
Working with videos from a webcam --
Saving video to a disk --
Basic computer vision applications using the OpenCV CUDA module --
Introduction to the OpenCV CUDA module --
Arithmetic and logical operations on images --
Addition of two images --
Subtracting two images --
Image blending --
Image inversion --
Changing the color space of an image --
Image thresholding. Performance comparison of OpenCV applications with and without CUDA support --
Summary --
Questions --
Chapter 6: Basic Computer Vision Operations Using OpenCV and CUDA --
Technical requirements --
Accessing the individual pixel intensities of an image --
Histogram calculation and equalization in OpenCV --
Histogram equalization --
Grayscale images --
Color image --
Geometric transformation on images --
Image resizing --
Image translation and rotation --
Filtering operations on images --
Convolution operations on an image --
Low pass filtering on an image --
Averaging filters --
Gaussian filters --
Median filtering --
High-pass filtering on an image --
Sobel filters --
Scharr filters --
Laplacian filters --
Morphological operations on images --
Summary --
Questions --
Chapter 7: Object Detection and Tracking Using OpenCV and CUDA --
Technical requirements --
Introduction to object detection and tracking --
Applications of object detection and tracking --
Challenges in object detection --
Object detection and tracking based on color --
Blue object detection and tracking --
Object detection and tracking based on shape --
Canny edge detection --
Straight line detection using Hough transform --
Circle detection --
Key-point detectors and descriptors --
Features from Accelerated Segment Test (FAST) feature detector --
Oriented FAST and Rotated BRIEF (ORB) feature detection --
Speeded up robust feature detection and matching --
Object detection using Haar cascades --
Face detection using Haar cascades --
From video --
Eye detection using Haar cascades --
Object tracking using background subtraction --
Mixture of Gaussian (MoG) method --
GMG for background subtraction --
Summary --
Questions --
Chapter 8: Introduction to the Jetson TX1 Development Board and Installing OpenCV on Jetson TX1 --
Technical requirements --
Introduction to Jetson TX1. Important features of the Jetson TX1 --
Applications of Jetson TX1 --
Installation of JetPack on Jetson TX1 --
Basic requirements for installation --
Steps for installation --
Summary --
Questions --
Chapter 9: Deploying Computer Vision Applications on Jetson TX1 --
Technical requirements --
Device properties of Jetson TX1 GPU --
Basic CUDA program on Jetson TX1 --
Image processing on Jetson TX1 --
Compiling OpenCV with CUDA support (if necessary) --
Reading and displaying images --
Image addition --
Image thresholding --
Image filtering on Jetson TX1 --
Interfacing cameras with Jetson TX1 --
Reading and displaying video from onboard camera --
Advanced applications on Jetson TX1 --
Face detection using Haar cascades --
Eye detection using Haar cascades --
Background subtraction using Mixture of Gaussian (MoG) --
Computer vision using Python and OpenCV on Jetson TX1 --
Summary --
Questions --
Chapter 10: Getting Started with PyCUDA --
Technical requirements --
Introduction to Python programming language --
Introduction to the PyCUDA module --
Installing PyCUDA on Windows --
Steps to check PyCUDA installation --
Installing PyCUDA on Ubuntu --
Steps to check the PyCUDA installation --
Summary --
Questions --
Chapter 11: Working with PyCUDA --
Technical requirements --
Writing the first program in PyCUDA --
A kernel call --
Accessing GPU device properties from PyCUDA program --
Thread and block execution in PyCUDA --
Basic programming concepts in PyCUDA --
Adding two numbers in PyCUDA --
Simplifying the addition program using driver class --
Measuring performance of PyCUDA programs using CUDA events --
CUDA events --
Measuring performance of PyCUDA using large array addition --
Complex programs in PyCUDA --
Element-wise squaring of a matrix in PyCUDA --
Simple kernel invocation with multidimensional threads --
Using inout with the kernel invocation. Using gpuarray class --
Dot product using GPU array --
Matrix multiplication --
Advanced kernel functions in PyCUDA --
Element-wise kernel in PyCUDA --
Reduction kernel --
Scan kernel --
Summary --
Questions --
Chapter 12: Basic Computer Vision Applications Using PyCUDA --
Technical requirements --
Histogram calculation in PyCUDA --
Using atomic operations --
Using shared memory --
Basic computer vision operations using PyCUDA --
Color space conversion in PyCUDA --
BGR to gray conversion on an image --
BGR to gray conversion on a webcam video --
Image addition in PyCUDA --
Image inversion in PyCUDA using gpuarray --
Summary --
Questions --
Assessments --
Other Books You May Enjoy --
Leave a review --
let other readers know what you think --
Index.

Abstract:

This book is a guide to explore how accelerating of computer vision applications using GPUs will help you develop algorithms that work on complex image data in real time. It will solve the problems  Read more...

Reviews

User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

Be the first.
Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


Primary Entity

<http://www.worldcat.org/oclc/1056071267> # Hands-on GPU-accelerated computer vision with OpenCV and CUDA : effective techniques for processing complex image data in real time using GPUs.
    a schema:Book, schema:MediaObject, schema:CreativeWork ;
    library:oclcnum "1056071267" ;
    library:placeOfPublication <http://id.loc.gov/vocabulary/countries/enk> ;
    library:placeOfPublication <http://experiment.worldcat.org/entity/work/data/5473997909#Place/birmingham> ; # Birmingham
    rdfs:comment "Warning: This malformed URI has been treated as a string - 'https://img1.od-cdn.com/ImageType-100/6135-1/{B010E9BC-BF1B-41DD-A7BA-159AC451C573}Img100.jpg'" ;
    schema:about <http://dewey.info/class/006.37/e23/> ;
    schema:about <http://experiment.worldcat.org/entity/work/data/5473997909#Topic/parallel_processing> ; # Parallel processing
    schema:about <http://experiment.worldcat.org/entity/work/data/5473997909#Topic/programming_&_scripting_languages_general> ; # Programming & scripting languages: general
    schema:about <http://experiment.worldcat.org/entity/work/data/5473997909#Topic/optical_data_processing> ; # Optical data processing
    schema:about <http://experiment.worldcat.org/entity/work/data/5473997909#Topic/computer_vision> ; # Computer vision
    schema:about <http://experiment.worldcat.org/entity/work/data/5473997909#Topic/graphical_&_digital_media_applications> ; # Graphical & digital media applications
    schema:about <http://experiment.worldcat.org/entity/work/data/5473997909#Topic/computer_graphics> ; # Computer graphics
    schema:about <http://experiment.worldcat.org/entity/work/data/5473997909#Topic/computers_general> ; # COMPUTERS--General
    schema:bookFormat schema:EBook ;
    schema:creator <http://experiment.worldcat.org/entity/work/data/5473997909#Person/vaidya_bhaumik> ; # Bhaumik Vaidya
    schema:datePublished "2018" ;
    schema:description "Cover -- Title Page -- Copyright and Credits -- Packt Upsell -- Contributors -- Table of Contents -- Preface -- Chapter 1: Introducing CUDA and Getting Started with CUDA -- Technical requirements -- Introducing CUDA -- Parallel processing -- Introducing GPU architecture and CUDA -- CUDA architecture -- CUDA applications -- CUDA development environment -- CUDA-supported GPU -- NVIDIA graphics card driver -- Standard C compiler -- CUDA development kit -- Installing the CUDA toolkit on all operating systems -- Windows -- Linux -- Mac -- A basic program in CUDA C -- Steps for creating a CUDA C program on Windows -- Steps for creating a CUDA C program on Ubuntu -- Summary -- Questions -- Chapter 2: Parallel Programming using CUDA C -- Technical requirements -- CUDA program structure -- Two-variable addition program in CUDA C -- A kernel call -- Configuring kernel parameters -- CUDA API functions -- Passing parameters to CUDA functions -- Passing parameters by value -- Passing parameters by reference -- Executing threads on a device -- Accessing GPU device properties from CUDA programs -- General device properties -- Memory-related properties -- Thread-related properties -- Vector operations in CUDA -- Two-vector addition program -- Comparing latency between the CPU and the GPU code -- Elementwise squaring of vectors in CUDA -- Parallel communication patterns -- Map -- Gather -- Scatter -- Stencil -- Transpose -- Summary -- Questions -- Chapter 3: Threads, Synchronization, and Memory -- Technical requirements -- Threads -- Memory architecture -- Global memory -- Local memory and registers -- Cache memory -- Thread synchronization -- Shared memory -- Atomic operations -- Constant memory -- Texture memory -- Dot product and matrix multiplication example -- Dot product -- Matrix multiplication -- Summary -- Questions."@en ;
    schema:description "This book is a guide to explore how accelerating of computer vision applications using GPUs will help you develop algorithms that work on complex image data in real time. It will solve the problems you face while deploying these algorithms on embedded platforms with the help of development boards from NVIDIA such as the Jetson TX1, Jetson TX2 ..."@en ;
    schema:exampleOfWork <http://worldcat.org/entity/work/id/5473997909> ;
    schema:genre "Electronic books"@en ;
    schema:inLanguage "en" ;
    schema:name "Hands-on GPU-accelerated computer vision with OpenCV and CUDA : effective techniques for processing complex image data in real time using GPUs."@en ;
    schema:productID "1056071267" ;
    schema:publication <http://www.worldcat.org/title/-/oclc/1056071267#PublicationEvent/birmingham_packt_2018> ;
    schema:publisher <http://experiment.worldcat.org/entity/work/data/5473997909#Agent/packt> ; # Packt
    schema:url <http://public.eblib.com/choice/publicfullrecord.aspx?p=5528472> ;
    schema:url <http://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&db=nlabk&AN=1904141> ;
    schema:url <http://www.vlebooks.com/vleweb/product/openreader?id=none&isbn=9781789343687> ;
    schema:url <https://www.overdrive.com/search?q=B010E9BC-BF1B-41DD-A7BA-159AC451C573> ;
    schema:url "https://img1.od-cdn.com/ImageType-100/6135-1/{B010E9BC-BF1B-41DD-A7BA-159AC451C573}Img100.jpg" ;
    schema:url <http://public.ebookcentral.proquest.com/choice/publicfullrecord.aspx?p=5528472> ;
    schema:url <https://samples.overdrive.com/?crid=b010e9bc-bf1b-41dd-a7ba-159ac451c573&.epub-sample.overdrive.com> ;
    schema:workExample <http://worldcat.org/isbn/9781789343687> ;
    wdrs:describedby <http://www.worldcat.org/title/-/oclc/1056071267> ;
    .


Related Entities

<http://experiment.worldcat.org/entity/work/data/5473997909#Person/vaidya_bhaumik> # Bhaumik Vaidya
    a schema:Person ;
    schema:familyName "Vaidya" ;
    schema:givenName "Bhaumik" ;
    schema:name "Bhaumik Vaidya" ;
    .

<http://experiment.worldcat.org/entity/work/data/5473997909#Topic/computer_graphics> # Computer graphics
    a schema:Intangible ;
    schema:name "Computer graphics"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/5473997909#Topic/computers_general> # COMPUTERS--General
    a schema:Intangible ;
    schema:name "COMPUTERS--General"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/5473997909#Topic/graphical_&_digital_media_applications> # Graphical & digital media applications
    a schema:Intangible ;
    schema:name "Graphical & digital media applications"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/5473997909#Topic/optical_data_processing> # Optical data processing
    a schema:Intangible ;
    schema:name "Optical data processing"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/5473997909#Topic/parallel_processing> # Parallel processing
    a schema:Intangible ;
    schema:name "Parallel processing"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/5473997909#Topic/programming_&_scripting_languages_general> # Programming & scripting languages: general
    a schema:Intangible ;
    schema:name "Programming & scripting languages: general"@en ;
    .

<http://worldcat.org/isbn/9781789343687>
    a schema:ProductModel ;
    schema:isbn "1789343682" ;
    schema:isbn "9781789343687" ;
    .

<http://www.worldcat.org/title/-/oclc/1056071267>
    a genont:InformationResource, genont:ContentTypeGenericResource ;
    schema:about <http://www.worldcat.org/oclc/1056071267> ; # Hands-on GPU-accelerated computer vision with OpenCV and CUDA : effective techniques for processing complex image data in real time using GPUs.
    schema:dateModified "2019-05-11" ;
    void:inDataset <http://purl.oclc.org/dataset/WorldCat> ;
    .


Content-negotiable representations

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.