Introduction to Artificial IntelligenceComputer Vision
Janyl JumadinovaOctober 5, 2016
Computer Vision
Make computers understand images and video
2/16
Computer Vision
Make computers understand images and video
2/16
Computer Vision
Make computers understand images and video
3/16
Computer Vision
Make computers understand images and video
3/16
Computer Vision
I What kind of scene?
I Where are the cars?
I How far is the building?
4/16
Why computer vision matters?
5/16
Applications of Computer Vision
6/16
Segmentation
I Compact representation for image data in terms of a set ofcomponents
I Components share “common” visual properties
I Properties can be defined at different level of abstractions
7/16
Segmentation
I Compact representation for image data in terms of a set ofcomponents
I Components share “common” visual properties
I Properties can be defined at different level of abstractions
7/16
Segmentation
I Compact representation for image data in terms of a set ofcomponents
I Components share “common” visual properties
I Properties can be defined at different level of abstractions
7/16
Segmentation
I Tokens- whatever we need to group (pixels, points, surface elements,etc.)
I Bottom up segmentationtokens belong together because they are locally coherent
I Top down segmentationtokens belong together because they lie on the same object
8/16
Segmentation
I Tokens- whatever we need to group (pixels, points, surface elements,etc.)
I Bottom up segmentationtokens belong together because they are locally coherent
I Top down segmentationtokens belong together because they lie on the same object
8/16
Segmentation
I Tokens- whatever we need to group (pixels, points, surface elements,etc.)
I Bottom up segmentationtokens belong together because they are locally coherent
I Top down segmentationtokens belong together because they lie on the same object
8/16
What is Segmentation?
Clustering image elements that “belong together”
I Partitioning- Divide into regions/sequences with coherent internal properties
I Grouping- Identify sets of coherent tokens in image
9/16
OpenCV
I An open source BSD licensed computer vision library- Patent-encumbered code isolated into “non-free” module(SIFT, SURF, some of the Face Detectors, etc.)
I Available on all major platforms- Android, iOS, Linux, Mac OS X, Windows
I Written primarily in C++- Bindings available for Python, Java, even MATLAB (in 3.0).
I Well documented at http://docs.opencv.org
I Source available at https://github.com/Itseez/opencv
10/16
OpenCV
11/16
OpenCV
1. Load an image from the disk, display it on our screen, and writeit to file in a different format
12/16
OpenCV
1. Load an image from the disk, display it on our screen, and writeit to file in a different format
2. Access and manipulate pixels
13/16
OpenCV: Pixel
I Grayscale: each pixel has a value between 0 (black) and 255(white)- values between 0 and 255 are varying shades of gray
I Color: pixels are normally represented in the RGB color space- one value for the Red component, one for Green, and one forBlue- each of the three colors is represented by an integer in therange 0 to 255- how “much” of the color there is
14/16
OpenCV: Pixel
I Grayscale: each pixel has a value between 0 (black) and 255(white)- values between 0 and 255 are varying shades of gray
I Color: pixels are normally represented in the RGB color space- one value for the Red component, one for Green, and one forBlue- each of the three colors is represented by an integer in therange 0 to 255- how “much” of the color there is
14/16
OpenCV: Coordinate System
I The point (0, 0) corresponds to the upper left corner of theimage
I x value increases as we move to the right
I y value increases as we move down
15/16
OpenCV: Image Representation
I OpenCV represents images as NumPy arrays (matrices)
I NumPy is a library for the Python programming language thatprovides support for large, multi- dimensional arrays
I To access a pixel value, we need to supply the x and ycoordinates of the pixel
I OpenCV actually stores RGB values in the order of Blue, Green,and Red
16/16
Top Related