<span dir="rtl">רובוטיקה ו</span>

paraderollΤεχνίτη Νοημοσύνη και Ρομποτική

17 Νοε 2013 (πριν από 3 χρόνια και 11 μήνες)

172 εμφανίσεις

תונומת דוביע

Optical character recognition (OCR)

Digit recognition, AT&T labs

http://www.research.att.com/~yann
/

Technology to convert scanned docs to text


If you have a scanner, it probably came with OCR software


License plate readers

http://en.wikipedia.org/wiki/Automatic_number_plate_recognition


Face detection


Many new digital cameras now detect faces


Canon, Sony, Fuji, …


Login without a password…


Fingerprint scanners on
many new laptops,

other devices

Face recognition systems now beginning
to appear more widely

http://www.sensiblevision.com/


The Matrix

movies, ESC Entertainment, XYZRGB, NRC

Special effects: shape capture

Smart cars


Mobileye

[
wiki article
]


Vision systems currently in high
-
end BMW, GM,
Volvo models


By 2010: 70% of car manufacturers.

Slide content courtesy of Amnon Shashua

Google cars

http://www.nytimes.com/2010/10/10/science/10google.html?ref=artificialintelligence

Computer vision vs human vision

What we see

What a computer sees

גלפ דורמנ
2004

םיכומס םימוחתו הנומת דוביע



תונומת דוביע

ןד
ב

תומישמ

טלפהו טלקה ןהב
םניה
תונומת
.



תבשחוממ היאר

:
הנומת טלקה
,
וניא טלפהו
הילע עדימ אלא הנומת

(
Computer Vision).



תבשחוממ הקיפרג

:
והשלכ עדימ וניה טלקה
הנומת וניה טלפהו
.(
Computer Graphics).


אמגודל
:
תלתה יופימה תאיצמ
-
ידמימ

םיפוג לש
הנומתב
,
עדיממ תיטסילאיר הנומת תינב תמועל
תלת םיפוג לע
-
םיידמימ

בחרמב

(
Rendering).

גלפ דורמנ
2004

הנומתל יניפוא לולסמ

הקיטפוא

ורטקלא
-
הקיטפוא

תואה דוביע

הנומתה דוביע

הייאר




המלצמ תשדע





יאלג

CCD





ימניד םוחת ןוקית
,
יומיכ








רופישו הסיחד






הנומתה תנבה



ןיעה תשדע
(
דוקימ
(




ינשיח

עמ

הייארה

(
Cones, Rods)




ימניד םוחת ןוקית
,
דועו יומיכ
עמב

היארה



רופישו הסיחד
,
ןיע לולסמב
-
חומבו חומ
הייארה
.




הנומתה תנבה
:

יוהיז
,
העונת


גלפ דורמנ
2004

הנומת דוביעב םינוש םימוחת


רופיש

(
Enhancement):
קוליס

םילוקלק

ורצונש
המיגדב
.


רוזחש

(
Restoration):
עודי םביטש םילוקלק קוליס
.


חותינ

(
Analysis):
םיביכרמ יוהיז
רדב

כ

עמ ךרוצל

תויטמוטוא
.


הסיחד

(
Compression):
ע ינוכסח גוציי

קוליס י
ינויח אל עדימ
.


היינב

(
Reconstruction):
לע הבכרה
-
עדימ ךמס
יקלח
(
ע הימדה

י

םיכתח
”)


Continuous image


Function from

2

to



How images are in the
real world


“Continuous” refers to
the domain, not the
values (discontinuities
could still exist)


Discrete Images


How computers think


Image Processing

12

Discrete Images vs. Continuous Images

Continuous
image
𝑣
(

,

)





Image Processing

13


The stages are


Image acquisition


how we obtain images
in the first place


Preprocessing


any effects applied before
mapping (e.g. crop, mask, filter)


Mapping


catch
-
all stage involving image
transformations or image composition


Postprocessing



any effects applied after
mapping (e.g. texturizing, color remapping)


Output


printing or displaying on a screen


Stages are sometimes skipped


The middle stages are often interlaced

The Five Stages of Image Processing

Image Processing

14


Image Synthesis


Images created by a
computer


Painted in
2
D


Corel Painter (
website
)


Photoshop (
website
)


Rendered from
3
D
geometry


Pixar’s
RenderMan

(
website
)


Autodesk’s Maya (
website
)


Procedurally textured


Generated images
intended to mimic their
natural counterparts


E.g. procedural wood grain

Image Capture

Images from the “real world”

Information must be digitized from
an analog signal

Common capture methods:

Digital camera

Satellite data

Drum scanner

Flatbed photo scanner

Frames from video

Stage
1
: Image Acquisition

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

15

תיתרפס הנומת

Gonzalez & Woods

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

16

תיתרפס הנומת



Transforming the
3
D world into
2
D image


Perspective projection




Sampling the image plane


Finite number of pixels




Quantizing the color/gray level


Finite number of colors

הביטקפסרפ תלטה

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

17

תלתמ הקתעה
-
ודל דממ
-
דממ

(
x,y,z)

Y

X

Z

x

f

Z

y

Y
Z
f
y
X
Z
f
x


(
x,y)

(
X,Y,Z)

גלפ דורמנ
2004

ןתופיצרו רופאה תומר


רוקמב
,
וניה םימלצמ ותוא טקייבואה

ףיצר


ןה
וחטשב
(

בחרמ

)
ועבצב ןהו
(

תוקיהב

)
,
ךא
םיבייח בשחמל רבעמב
,
םיישעמ םילוקישמ
םוגדל

תומיוסמ תודוקנב הנומתה תא
(
םילסקיפ
םידידב
)
םימיוסמ םיעבצבו
(
רופא תומר
תודידב
(.



ךרעמ לבקתמ
(
הצירטמ וא
)
לש
תודוקנ
תוגצימ

הרעה
:
דידב
=
יטרקסיד
,
Discrete

גלפ דורמנ
2004

עבצ תנומתב המו

?


הדוקנ לכ תבכרומ עבצ תנומתב

(
pixel)
דוסי יעבצ השלשמ
:
םודא
,
קורי

לוחכו
(
ןמוסמ

RGB
),
ע לסקיפ לכ ראתנ ןכלו

תויצקנופ שלש י
:

r
x
y
g
x
y
b
x
y
(
,
),
(
,
),
(
,
)


יומיכו המיגד
(
Sampling & Quantification
)

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

20

Gonzalez & Woods

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

21

תמיגד
הנומת


(
םילסקיפה רפסמ
)
Sampling

4
X
4

16
X
16

8
X
8

32
X
32

64
X
64

128
X
128

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

22

יומיכ


(
Quantization
)


(
תוירשפאה בחרמ
לסקיפל
)

256

Levels

16
Levels

4
Levels

2
Levels

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

23

גוציי

הנומת

תיתרפס


םירפסמ לש הצירטמ
(
רופא תוגרד
,
יעבצ
LUT
)


תושלש לש הצירטמ
(
RGB
)

122

103

3

17

5

100

200

87

0

117

205

128

205

87

0

118

206

2

255

50

128

119

210

254

Gonzalez & Woods

הנומת לש ןורכיז חפנ

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

24

N

M

k
2
רופא תוגרד רפסמ

M
N

םילסקיפ רפסמ

k
N
M


הנומתה חפנ

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

25

המרגוטסיה


Frequency counting of gray levels

0
2
4
6
8
10
12
14
16
18
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Frequency

Gray
-
Level


In the limit of
continuous
intensities: a continuous
probability distribution
p(g)

תונומת לש יתרפיס דוביע
:
תיתרפס הנומת

26

המרגוטסיה
-
אמגוד



Each source image is adjusted
to fit a given tone, size, shape,
etc., to match a desired quality
or to match other images


Can make a set of dissimilar
images appear similar (if they
are to be composited later), or
make similar parts of an image
appear dissimilar (such as
contrast enhancement)

Image Processing

27

Stage
2
: Preprocessing

Original

Adjusted
grayscale

curve


Preprocessing techniques include:


Adjusting color or
grayscale

curve



Cropping



Masking (cutting out part of an image
)



Blurring and sharpening



Edge detection/enhancement



Filtering and
antialiasing



Scaling up (super sampling) or scaling down (sub sampling
)

Image Processing

28

Stage
2
: Preprocessing (continued)

גלפ דורמנ
2004

הנומת רופיש

םילוקלק
םייניפוא

הנומתה םוליצ וא תמיגד ךלהמב םילבקתמה
,

ןיחבהל םיעירפמ


םיטרפב
,
םישטשטמ

טקייבואה תא


המודכו
.

רוקמ תנומת
:
צת

א

(
Aerial)

גלפ דורמנ
2004

הכומנ תוידוגינ

(
Low Contrast)

גלפ דורמנ
2004

שוטשט

(
Blur)

גלפ דורמנ
2004

םיפסונ םילוקלק


ןוכנ אל דוקימ

(
De
-
Focus).


ףוגה וא המלצמה לש הדיער וא הזוזת
.


ריוא לש תוימרת תועונת
(
היצנלוברוט
)



ע תויעבהמ קלח ןקתל ןתינ

ךא םיאתמ דוביע י
רוכזל םיבייח
:

תירוקמה הנומתב םייק היה אלש עדימ ףיסוהל ןתינ אל

!

(
תוירוקמה תונומתב וא
)


Notes
:



Blurring, sharpening, and edge detection can also
be
postprocessing

techniques



Some preprocessing algorithms are not followed
by mapping, others that involve resampling the
image may be interlaced with mapping: filtering is
done this way

Image Processing

33

Stage
2
: Preprocessing (continued)

Image Processing

34


Mapping is a catch
-
all stage where
several images are combined, or
geometric transformations are
applied


Transformations include:


Rotating


Scaling


Warping


Compositing:


Basic image overlay


Smooth blending with alpha channels


Poisson image blending


Seamlessly transfers “details” (like
edges) from part of one image to
another

Stage
3
: Mapping

Poisson Image
Blending

Image Warping

Image credit: © Evan Wallace
2010


Objects in a scene are a collection of points…







These objects have location, orientation, size


Corresponds to transformations, Translation (

),
Rotation (

), and

Scaling (

)


35
/
45

How do we use Geometric
Transformations? (
1
/
2
)


3
D
Coordinate
geometry


Vectors
in
2
space and
3
space


Dot product and cross product


definitions and uses


Vector and matrix notation and algebra


Identity Matrix


Multiplicative associativity


E.g.
A(BC) = (AB)C


Matrix transpose and inverse


definition, use, and calculation


Homogeneous coordinates (

,

,

,

)


You will need to understand these concepts!

Linear Algebra Help Session

Notes:
http
://
cs.brown.edu/courses/cs
123
/resources/Line
ar_Algebra.pdf


36
/
45

Some Linear Algebra Concepts...


We represent vectors as
bold
-
italic

letters (

)
and scalars as just
italicized

letters (
c
)


Any vector in plane can be defined
as
addition of two
non
-
collinear
basis
vectors
in
the
plane


Recall that a basis is a set of vectors with the following
two properties:


The vectors are linearly independent


Any vector in the vector space can be generated by a
linear combination of the basis vectors


Scalar constants can be used to adjust
magnitude
and direction of
resultant vector

37
/
45

Linear Transformations (
1
/
3
)

a

b



= a
+

b

38
/
45

Linear Transformations as Matrices
(
1
/
2
)


A transformation of an arbitrary column vector



has form:







=












Let’s substitute
1
0

for


:





1
0


=





1
0
=






transformation applied to
1
0

is
1
st

column of





Now substitute
0
1

for


:





0
1

=





0
1
=






transformation
applied to
0
1

is

2
nd

column of


39
/
45

Linear Transformations as Matrices
(
2
/
2
)


Scale


by
3
,


by
2
(
S
x

=
3
,
S
y

=
2
)




=



(original
vertex);



=





(new vertex)





=







Derive


by determining how

1

and

2

should be
transformed



1

=
1
0



𝑠


*

1

=
𝑠

0

(Scale in

X
by
𝑠

) , the first column of




2

=

0
1



𝑠


*

2

=
0
𝑠


(Scale in

Y
by

𝑠

),
the
second column of



Thus we
obtain

:
𝑠

0
0
𝑠




40
/
45

Scaling in
2
D (
1
/
2
)

Side effect: House shifts
position relative to origin







2
6






2
9






1
2






1
3



is a diagonal matrix
-

can confirm our
derivation by simply looking at
properties of diagonal matrices:



𝑫
=

0
0



=







=




where
𝑫

is some diagonal
matrix



𝑡


entry of



= (

𝑡


entry along
diagonal of

𝑫



𝑡


entry of


)




multiplies each coordinate of a


by
scaling factors (
𝑠

,
𝑠

) specified by the
entries along the diagonal, as expected


𝑠


=

,
𝑠


=



41
/
45

Scaling in
2
D (
2
/
2
)


Other
properties of scaling:


d
oes
not preserve lengths in objects


d
oes
not preserve angles between parts
of objects (except when scaling is

uniform,
𝑠

=
𝑠

)


if not at
origin, translates house relative
to origin


often not desired…




Rotate by
𝜃

about origin





=




where




=



(original vertex)





=





(new vertex)



Derive

Ө

by
determining how

1

and

2

should be transformed



1

=
1
0


cos
Ө
sin
Ө

, first column of

Ө



2

=

0
1



sin
Ө
cos
Ө

, second column of

Ө



Thus we obtain

Ө

:

c
os

𝜃

𝑠
𝜃
𝑠
𝜃
𝑠
𝜃




42
/
45

Rotation in
2
D
(
1
/
2
)



Let’s try matrix
-
vector multiplication




𝜃


=
c
os

𝜃

𝑠
𝜃
𝑠
𝜃
𝑠
𝜃




=
x

cos

Ө



y

sin

Ө

x

sin

Ө

+

y

cos

Ө

=





=







=

cos
𝜃


sin
𝜃




=

sin
𝜃
+

cos
𝜃


Other properties of rotation:


preserves lengths in objects, and angles between parts of objects


rotation is rigid
-
body


for objects not at the origin, again a translation may be unwanted (i.e., this
rotates about origin, not about house’s center of rotation(


43
/
45

Rotation in
2
D

(
2
/
2
)


Translation not a
linear transformation
(not centered about
origin)


Can’t be represented
as a
2
x
2
invertible
matrix …


Question:
Is there
another solution?


Answer:
Yes,


=

+
𝒕
, where
𝒕
=




Addition for
translation


this is
inconsistent

44
/
45

What about translation?


If
we could treat all transformations in a
consistent manner, i.e., with matrix
representation, then could combine
transformations by composing their
matrices


Let’s try using a Matrix again


How?
Homogeneous Coordinates:
add
an additional dimension, the w
-
axis,
and an extra coordinate, the w
-
component


t
hus
2
D
-
>
3
D (effectively the hyperspace
for embedding
2
D space)


Translation uses a
3
x
3
Matrix, but Scaling and Rotation are
2
x
2
Matrices


Let’s homogenize! Doesn’t affect linearity property of scaling and
rotation


Our new transformation matrices look like this…











Note: These
3
transformations are called
affine

transformations


45
/
45

Transformations Homogenized

Transformation

Matrix

Scaling

Rotation

Translation


Scaling:
Scale by
15
in the


direction,
17
in the



15
0
0
0
17
0
0
0
1




Rotation:
Rotate by
1
23
°


cos
(
123
)

sin

(
123
)
0
sin

(
123
)
cos

(
123
)
0
0
0
1




Translation:
Translate by
-
16
in the

, +
18
in the


1
0

16
0
1
18
0
0
1

46
/
45

Examples

Aging

Image Processing

47


Creates global effects across an entire image or selected
area


Art effects


Posterizing


Faked “aging” of an image


Faked “out
-
of
-
focus”


“Impressionist” pixel remapping


Texturizing


Technical effects


Color remapping for contrast enhancement


Color to B&W conversion


Color separation for printing (RGB to CMYK)


Scan retouching and color/contrast balancing


Edge Detection

Stage
4
:
Postprocessing

Posterizing

Impressionist

תונומת לש יתרפיס דוביע
:
הנומת תווצק

48

הנומת תווצק

Edge Detection

תונומת לש יתרפיס דוביע
:
הנומת תווצק

49

הנומת תווצק

לש תווצק

תיטטניס הנומת

ינייפאמ תווצק

םיטקייבוא

םינייפאמ םניאש תווצק

םיטקייבוא

תורזגנב שומיש

תונומת לש יתרפיס דוביע
:
הנומת תווצק

50

f(x)

f’(x)

f’’(x)

f(x)
-
f’’(x)

ספאה תייצח תדוקנ

ןייפאמ תרזגנה הבוג

הגרדמה עופיש תא

תונומת לש יתרפיס דוביע
:
הנומת תווצק

51

תונושאר תורזגנ

רוטרפוא
טנאידרגה
:













y
f
x
f
f
,
לדוג
טנאידרגה
:

2
2





















y
f
x
f
f
ןוויכ
טנאידרגה
:













x
f
y
f
1
tan

תונומת לש יתרפיס דוביע
:
הנומת תווצק

52

תונושאר תורזגנ

Gonzalez & Woods

תונומת לש יתרפיס דוביע
:
הנומת תווצק

53

תשעור הנומת לש תורזגנ

Gonzalez & Woods

תונומת לש יתרפיס דוביע
:
הנומת תווצק

54

תשעור הנומת לש הנושאר תרזגנ

תונומת לש יתרפיס דוביע
:
הנומת תווצק

55

תשעור הנומת לש הנושאר תרזגנ

ןורתפ
:
הריזגה ינפל הקלחה עצבל

Gonzalez & Woods

Image Processing

56


Choice of display/archive
method may affect earlier
processing stages


Color printing accentuates
certain colors more than others


Colors on the monitor have
different
gamuts

and
HSV

values than the colors printed
out


Need a mapping


HSV = hue, saturation, value, a
cylindrical coordinate system
for the RGB color model


Gamut = set of colors that can
be represented by output
device/printer


Display Technologies

Monitor (CRT

LCD/LED/OLED/
Plasma
panel)

Color printer

Film/DVD

Disk file

Texture map for
3
D renderer


Stage
5
: Output (Archive/Display)