computer vision basics
DESCRIPTION
Computer Vision Basics. Image Terminology Binary Operations Filtering Edge Operators. Digital Image Terminology:. 0 0 0 0 1 0 0 0 0 1 1 1 0 0 0 1 95 96 94 93 92 0 0 92 93 93 92 92 0 0 93 93 94 92 93 0 1 92 93 93 93 93 - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/1.jpg)
1
Computer Vision Basics
• Image Terminology
• Binary Operations
• Filtering
• Edge Operators
![Page 2: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/2.jpg)
2
Digital Image Terminology:
0 0 0 0 1 0 0 0 0 1 1 1 0 0 0 1 95 96 94 93 92 0 0 92 93 93 92 92 0 0 93 93 94 92 93 0 1 92 93 93 93 93 0 0 94 95 95 96 95
pixel (with value 94)
its 3x3 neighborhood
• binary image• gray-scale (or gray-tone) image• color image• multi-spectral image• range image• labeled image
region of medium intensity
resolution (7x7)
![Page 3: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/3.jpg)
3
The Three Stages of Computer Vision
• low-level
• mid-level
• high-level
image image
image features
features analysis
![Page 4: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/4.jpg)
4
Low-Level
blurring
sharpening
![Page 5: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/5.jpg)
5
Low-Level
Canny
ORT
Mid-Level
original image edge image
edge image circular arcs and line segments
datastructure
![Page 6: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/6.jpg)
6
Mid-level
K-meansclustering
original color image regions of homogeneous color
(followed byconnectedcomponentanalysis)
datastructure
![Page 7: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/7.jpg)
7
edge image
consistentline clusters
low-level
mid-level
high-level
Low- to High-Level
Building Recognition
![Page 8: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/8.jpg)
8
Binary Image Analysis
• used in a variety of applications: part inspectionrivetingfish countingdocument processing
• consists of a set of image analysis operations that are used to produce or process binary images, usually images of 0’s and 1’s.
000100100010000001111000100000010010001000
![Page 9: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/9.jpg)
9
Example: red blood cell image Many blood cells are Many blood cells are
separate objectsseparate objects Many touch – bad!Many touch – bad! Salt and pepper noise Salt and pepper noise
from thresholdingfrom thresholding How useable is this How useable is this
data?data? What operations are What operations are needed to clean it up?needed to clean it up?
![Page 10: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/10.jpg)
10
Useful Operations1. Thresholding a gray-tone image
2. Determining good thresholds
3. Filtering with mathematical morphology
4. Connected components analysis
5. Numeric feature extraction
• location features• gray-tone features• shape features ...
![Page 11: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/11.jpg)
11
Thresholding Background is blackBackground is black Healthy cherry is brightHealthy cherry is bright Bruise is medium darkBruise is medium dark Histogram shows two Histogram shows two
cherry regions (black cherry regions (black background has been background has been removed)removed)
gray-tone values
pixelcounts
0 256
![Page 12: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/12.jpg)
12
Automatic Thresholding: Otsu’s MethodAssumption: the histogram is bimodal
t
Method: find the threshold t that minimizesthe weighted sum of within-group variancesfor the two groups that result from separatingthe gray tones at value t.
Grp 1 Grp 2
Works well if the assumption holds.
![Page 13: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/13.jpg)
13
Thresholding Example
original image pixels above threshold
![Page 14: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/14.jpg)
14
Dilation expands the connected sets of 1s of a binary image.
It can be used for
1. growing features
2. filling holes and gaps
Mathematical Morphology(Dilation, Erosion, Closing, Opening)
• Dilation
![Page 15: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/15.jpg)
15
• Erosion
Erosion shrinks the connected sets of 1s of a binary image.
It can be used for
1. shrinking features
2. Removing bridges, branches and small protrusions
![Page 16: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/16.jpg)
16
Structuring Elements
A structuring element is a shape mask used inthe basic morphological operations.
They can be any shape and size that isdigitally representable, and each has an origin.
boxhexagon disk
something
box(length,width) disk(diameter)
![Page 17: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/17.jpg)
17
Dilation with Structuring Elements
The arguments to dilation and erosion are
1. a binary image B2. a structuring element S
dilate(B,S) takes binary image B, places the originof structuring element S over each 1-pixel, and ORsthe structuring element S into the output image atthe corresponding position.
0 0 0 00 1 1 00 0 0 0
11 1
0 1 1 00 1 1 10 0 0 0
originBS
dilate
B S
![Page 18: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/18.jpg)
18
Erosion with Structuring Elements
erode(B,S) takes a binary image B, places the origin of structuring element S over every pixel position, andORs a binary 1 into that position of the output image only ifevery position of S (with a 1) covers a 1 in B.
0 0 1 1 00 0 1 1 00 0 1 1 01 1 1 1 1
111
0 0 0 0 00 0 1 1 00 0 1 1 00 0 0 0 0
B S
origin
erode
B S
![Page 19: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/19.jpg)
19
Opening and Closing
• Closing is the compound operation of dilation followed by erosion (with the same structuring element)
• Opening is the compound operation of erosion followed by dilation (with the same structuring element)
![Page 20: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/20.jpg)
20
![Page 21: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/21.jpg)
21
Application: Gear Tooth Inspection
originalbinary image
detecteddefects
![Page 22: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/22.jpg)
22
Connected Components LabelingOnce you have a binary image, you can identify and then analyze each connected set of pixels.
The connected components operation takes in a binary image and produces a labeled image in which each pixel has the integer label of either the background (0) or a component.
original thresholded opening+closing components
![Page 23: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/23.jpg)
23
Methods for CC Analysis1. Recursive Tracking (almost never used)
2. Parallel Growing (needs parallel hardware)
3. Row-by-Row (most common)
a. propagate labels down to the bottom, recording equivalences
b. Compute equivalence classes
c. Replace each labeled pixel with the label of its equivalence class.
![Page 24: Computer Vision Basics](https://reader031.vdocuments.mx/reader031/viewer/2022013004/568145b1550346895db2b42a/html5/thumbnails/24.jpg)
24
Labelings shown as Pseudo-Color
connectedcomponentsof 1’s fromcleaned,thresholdedimage
connectedcomponentsof clusterlabels