Open in TheBrain

Computer Vision Sebastian Thrun AI Course

<p>Dec 25, 2011 04:31 PM

&#160;

this is from the Norvig/ Thrun course...

&#160;

CV means making sense out of camera or video data;

He shows his heavy Nikon D3 camera;

he mainly uses his Motorola cell phone camera... &#160;has cameras front and back...

&#160;

all cameras have a lens and a chip...

&#160;

Image Formation...

start with a pinhole camera... &#160;person projected thru the pinhole onto the image plane (the projection plane

or the camera chip);

&#160;

X = big X = height of person and

x = little x = height of image

Z = distance to the person

f = &#160;focal length from lens to chip;

&#160;

similar triangles

&#160;

X/Z= &#160;x/f;

&#160;

or &#160;&#160;x = W * &#160;f/Z; &#160;central law of perpective projection;

&#160;

note: that cannot tell whether an object is small and close or far and big !

he shows this with a toy helicopter &#160;(a toy of his young son);

&#160;

same is true in the horizontal direction

&#160;

Vanishing points.... &#160;&#160;railroad tracks going to infinity to vanishing point

&#160;

street corner with buildings (house facades)... &#160;get &#160;TWO vanishing points....

&#160;

(can have an infinite number) &#160;eg &#160;a many sided cube like an octagon....

&#160;

LENSES.... &#160;trouble with pinhole.... &#160;light is not bright enough... &#160;(also get diffraction as it goes thru the pinhole)

use a lens to gather more light &#160;dbl convex...

&#160;

but note: &#160;it is only in focus at one object plane.... &#160;must change focal length to get it into focus;

&#160;

Computer Vision...

classify objects

3d object reconstruction

motion analysis

&#160;

Invariances: &#160;to scale, rotation, translation, illumination, deformation, occlusion, and view point (where r u looking from)

top of the helicopter or bottom of it...

&#160;

invariances are crucial to CV...

&#160;

Greyscale Images.... &#160;he uses an image at a draw bridge in Amsterdam... he has &#160;cables going up to the top and

girders;

&#160;

he shows matrix of grey scale intensities..

&#160;

255 = &#160;very bright

0 = black (no light)

&#160;

he shows &#160;&#160;4 by 4 matrix &#160;with a light region at the top and dark at bottom

&#160;

? how to find the edge ?

&#160;

Use a <b>LINEAR FILTER</b> ...

&#160;

easiest <b> feature detector </b>is a 1 by 2 &#160;matrix &#160;(a horizon vector) = &#160;a mask in which

we subtract &#160;the column on the left from the column on the right.

apply the mask to a 4 by 5 matrix and you get a 4 by 4 matrix which is the result... &#160;it shows the transitions...

this is our first &#160;<b>KERNEL</b>...

&#160;

GRADIENT IMAGES... &#160;convolve the original image with the kernel (or mask) &#160;get the gradient image

&#160;

Ix (eye sub x) = &#160;I X &#160;kernel &#160;&#160;&#160;that's a cross &#160;(<b>convolution operator</b>)

&#160;

can do &#160;both horiz and vert edges silultaneously &#160;ie &#160;Ix and Iy

&#160;

<b>CANNY edge detector</b> = &#160;for JOhn Canny at Cal Berk... ... &#160;nicely traces &#160;edges by connecting them..

&#160;

few other common masks in the literature

&#160;

SOBEL mask; &#160;Prewitt mask; &#160;Kirsh mask...

&#160;

<b>GAUSSIAN MASK</b>... &#160;&#160;a hill or breast.... &#160;fall off is the same in all directions... rotationally symmetric....

it BLURS the image &#160;(noise reduction... less sensitivity to bizarre indiv pixels)

&#160;

<b>HARRIS CORNER DETECTOR </b>... &#160;finds a lot of horizontal and vertical gradients...

if &#160;both the veritcla and horizon edges fire... then it fires....

&#160;

rotates image with eigenvalues &#160;&#160;use eigen value decomposition... &#160;? &#160;want to minimize the off diag elements ?

&#160;

Modern Feature Detectros... &#160;localizable, &#160;invariant to lots of stuff

&#160;

<b>HOG &#160;histogram of Oriented Gradients</b>..

&#160;

<b>SIFT = &#160;Scale Invariant Feature Transform </b>&#160;sift &#160;feature extractor..

&#160;

look at HOG or SIFT... &#160;everyone preprocesses images by feature extraction....

&#160;

*

Dec 25, 2011 05:12 PM &#160;This is the Second lecture by Sebastian on CV....

&#160;

<b>This class is about 3D &#160;vision</b>

&#160;

<b>starts with pinhole camera...</b>

&#160;

<b>try to recover the full 3d image from the 2d image &#160;including the depth of the object;</b>

&#160;

STEREO &#160;quiz... &#160;given 2 identical cameras... &#160;can we now recover the depthof a scene...

&#160;

say we have TWO pinhole cameras (R and L eyes) projecting onto two image planes...

&#160;

say person P &#160;is projected as a height x1 and x2 &#160;(two images)

&#160;

note: &#160;two triangles &#160;... one for each eye... bring them together and u get one single triangle...

can derive formula &#160;which is &#160;z = &#160;fB &#160;/ &#160;(x2 - x1)

&#160;

B = baseline = &#160;interoptic distance (my name for it)

Z = distance to the object

&#160;

(P is a single point)... &#160;derive depth Z (ie RANGE) &#160;from &#160;f = focal length

B = baeline and &#160;diff btwn &#160;x1 and x2 = (x1 - x2) = &#160;delta x...

&#160;

the CORRESPONDE Problem... &#160;where is the point P that is seen inone image &#160;in the Other image???

how do u line them up???

&#160;

determination of correpondence....... &#160;if u get it wrong , &#160;&#160;get phantom points...

&#160;

ssd = sum of square difference error: &#160;&#160;pick the place along a horiz line that has the smallest ssd

(using a small square patch around the point of interest... sum over all the pixels....

compare eg a template (matrix ) based on the L image, then sweep it along a horiz line in the R image to

get the correct alignment...

&#160;

he shows disparity map from Stanley robot car... black means don't know corresp... white means yes.

&#160;

does it make sense to look at context to determin &#160;alignment.... yes , obviously....

&#160;

try to match the whole scan &#160;(trying to match L to R images)

&#160;

use a COST function to minimize cost of alignment&#160;

&#160;

Dynamic Programming... hwo to compute the best alignment of R and L.

problem is order N2 ....

&#160;

path that alignment program takes depends on the costs assoc with matching two pixels and costs of occlusion

and non-matching..

&#160;

James Davis... Honda Research now at UCSC... &#160;&#160;add texture to the scene... a striped pattern on

unequal distacnes... &#160;easier to disambiguate the correspondence of points...

structure light really helps stereo vision.

&#160;

MSFT Kinect... &#160;uses laser to add texture to recover depth...

uses stereo vision....

&#160;

many difft techniques.. &#160;time of flight...

&#160;

they use laser range finders &#160;LIDAR... gives v good &#160;depth estimates...

&#160;

*

*

PART III &#160;lecture 3 by Sebas. T &#160;on CV...

&#160;

Dec 25, 2011 07:33 PM

&#160;

<b>CV III &#160;Motion...</b>

&#160;

<b>Structure from Motion...</b>

&#160;

<b>how to capture 3d world &#160;from the locations of the CAMERA... &#160;put it into different places and</b>

<b>then combine the images to get 3d data on the object...</b>

&#160;

&#160;

Carlo Tomasi and Takeo Kanade &#160;1992.... &#160;could get every single corner point of a house

which he rotates... amazing... using a Harris corner detector...

&#160;

could fly over Pennsyl and get 3d terrain maps...

&#160;

Marc Pollefys ... Swiss... &#160;&#160;reconstruct the 3d shape of the bldg facade... &#160;v impressive for its time...

zooms into bldg model....

&#160;

holy grail of 3d computer vision is total reconstruction...

&#160;

SFM = struc from motion math... &#160;he shows rotation matrices...

use nonlinear optimiz techniques

&#160;

gradient descent; conjugate gradient; guass-newton &#160;etc.

&#160;

Strucute = 3d world recovery

&#160;

motion means &#160;the location of the camera...

&#160;

he will be doing the grad course on CV ONLINE sometime in the future...

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;

&#160;</p>

Attachments