Initial word... Robogames Initial word... Robogames Initial word... - - PowerPoint PPT Presentation

initial word robogames initial word robogames initial
SMART_READER_LITE
LIVE PREVIEW

Initial word... Robogames Initial word... Robogames Initial word... - - PowerPoint PPT Presentation

Initial word... Robogames Initial word... Robogames Initial word... Robogames The "CS graveyard" Final words: project schedule This week: example talk and a bit on Turing Machines (final hw due 5/1) Next week: project work during


slide-1
SLIDE 1

Initial word... Robogames

slide-2
SLIDE 2

Initial word... Robogames

slide-3
SLIDE 3

Initial word... Robogames

The "CS graveyard"

slide-4
SLIDE 4

Final words: project schedule…

This week: example talk and a bit on Turing Machines Next week: project work during class (join in!)

  • Wed. 5/6: project presentations (~10 min. per project)
  • Your source-code to date (showing off your library)
  • One-page write-up of progress so far + plans still to-go
  • 10-15 minute talk (example this week…)

Milestone: due 5/8/15

  • 2-3 page write-up of results, +s, -s, and all of your source code

Final Project : due by 5/18/15 (or earlier, if you'd like!)

(final class meeting) (final hw due 5/1)

  • Include your project presentation slides!

(by email) (by email)

slide-5
SLIDE 5

Final project FSM!

it's broken it works

stop adding features + start adding print statements comment out print statements + start adding more features

still works still broken

slide-6
SLIDE 6

State-machine limits?

Are there limits to what FSMs can do?

But are there any binary-string problems that FSMs can't solve?

Page Rank they can't necessarily drive safely... Robotics PageRank

slide-7
SLIDE 7

State-machine limits?

Are there limits to what FSMs can do?

But are there any binary-string problems that FSMs can't solve?

Page Rank they can't necessarily drive safely... Robotics PageRank

slide-8
SLIDE 8

State-machine limits?

Let's build a FSM that accepts bit strings with the SAME NUMBER of 0s as 1s

01100 01110 rejected 0100 000 # of 0s == # of 1s 1 011001 0110 accepted 10 λ

this last string is empty

slide-9
SLIDE 9

FSMs are limited… So, let's build a better machine! Turing Machine

slide-10
SLIDE 10

a Turing Machine rule:

the tape R/W head the input

0 1 0 1 0

"blanks" are everywhere else READ WRITE MOTION

0 ; , 1 R

if a transition is missing, the input FAILS! an accepting state always halts -- then basks in its success!

try it in JFLAP...

slide-11
SLIDE 11

Run this TM on this input:

1 1 1

Is this input accepted or rejected? What inputs are accepted in general? How does it work? Extra: How could you change this to accept palindromes?

Try it!

(a thought experiment – and ex. cr.)

slide-12
SLIDE 12

Turing Machine machines!

slide-13
SLIDE 13

Final words: project schedule…

This week: example talk and a bit on Turing Machines Next week: project work during class (join in!)

  • Wed. 5/6: project presentations (~10 min. per project)
  • Your source-code to date (showing off your library)
  • One-page write-up of progress so far + plans still to-go
  • 10-15 minute talk (example this week…)

Milestone: due 5/8/15

  • 2-3 page write-up of results, +s, -s, and all of your source code

Final Project : due by 5/18/15 (or earlier, if you'd like!)

(final class meeting) (final hw due 5/1)

  • Include your project presentation slides!

(by email) (by email)

slide-14
SLIDE 14

10-15 min. talk guideline (feel free to alter to suit!)

slide-15
SLIDE 15

10-15 min. talk guideline (feel free to alter to suit!)

slide-16
SLIDE 16

What's your approach ? What library or libraries did you explore/use? Your testing -- and results What worked and what didn't? How did you adjust to what was feasible vs. not? Further progress and/or insights Things you're still planning to work on… anything else…?

10-15 min. talk guideline (feel free to alter to suit!)

Title + Intro "Big Picture"

  • verall context +

motivation What's the problem? Problem details (narrative > bullets)

to reducing the problem

Questions…

insights!

slide-17
SLIDE 17

"Aside Slides"

Interlaced notes about the slides… Suggestions and ideas… Stuff to ignore…

This is a talk that summarizes a robotics and vision research project we worked on…

blue!

slide-18
SLIDE 18

Nicole Lesperance ’11 Michael Leece ’11 Steve Matsumoto ’12 Max Korbel ’13 Kenny Lei Zach Dodds REU Harvey Mudd College – TePRA – 4/12/11

slide-19
SLIDE 19

Idea: use monocular texture to create a traditional range scan

Learning distance from texture

Zach Dodds 4/22/2015 IST338

slide-20
SLIDE 20

"Title" slide…

You don't need a fancy title I'm a fan of explanatory pictures… I'm less a fan of using clip art… Never hurts to have a short "big-picture" summary…

really?

slide-21
SLIDE 21

Looking at this image, we (humans) know how far away obstacles are from the camera, relatively…

Big picture: obtain distances from an image

slide-22
SLIDE 22

"Big picture" slide

What's the problem's overall goal Overall context Why it's interesting

You may have a lot to say, or just a little, but include at least one such slide… I'll help you brainstorm.

You do not need "alternative approaches"

slide-23
SLIDE 23

Context: other approaches

active lighting

depth, cost, weight

slide-24
SLIDE 24
  • depth, cost, weight
slide-25
SLIDE 25
  • depth, cost, weight
slide-26
SLIDE 26
  • to estimate: how and

how much the camera (or robot) moved

previous image next image

∆ ∆ ∆ ∆

to estimate: how and how much the image feature moved

δ δ δ δ

texture vs. time

slide-27
SLIDE 27

!

"#$%&' ( #$%)*

Could we improve resolution? Could we handle more general indoor textures?

slide-28
SLIDE 28

+

,- -.!,/01))2

  • 33
  • 45/+(

Could we benefit from larger patches of image texture?

slide-29
SLIDE 29

The problem: there's lots of floor!

indoor robot + webcam on netbook

slide-30
SLIDE 30

The data: lots of image patches!

sometimes the floor != the obstacles

slide-31
SLIDE 31

The dataset: lots of patches!

sometimes not

slide-32
SLIDE 32

The dataset: lots of patches!

not always interesting image patches…

slide-33
SLIDE 33

Image patches

hand-segmented image Each 20x20 pixel square is a single "patch"

slide-34
SLIDE 34

Image details…

hand-segmented image Each 20x20 pixel square is a single "patch" ~ 1200 numbers each!

slide-35
SLIDE 35

(1) Train groundplane vs.

  • bstacle textures.

6 #373833$

(3) Segment new images to find traversibility hypotheses (4) Unwarp segmentations into range scans (2) Classify new images using groundplane/obstacle models

slide-36
SLIDE 36

"Problem" slides

What's the computational problem? Insights into its value… Insights into its difficulty…

Highlight your contributions, e.g., columns Is it labeled (how? by hand?)

Can we see some of it?

slide-37
SLIDE 37

Library explored…

OpenCV

… watched it form and grow …

slide-38
SLIDE 38

Well documented!

OpenCV

slide-39
SLIDE 39

9:,;

#$ 138 87 53

20x20 texture patches, each represented by a few values. For example, average Red, Green, and Blue (out of 255)

average blue average green average red

slide-40
SLIDE 40

<7

. 194 191 211 3.2 25.6 4.1 ... 138 87 53

  • 1.14 8.6 1.4 ...

2

20x20 texture patches, distilled into 8 values

  • bstacle

ground

slide-41
SLIDE 41

texture + color filters

../TrainingImages/Playspacepswo13Patches/00029/randomBelow/0009.png 194.2575 191.4525 211.4775 195.0 192.0 212.0 8.6707 8.7688 7.2910 211.4775 191.4525 194.2575 212.0 192.0 195.0 7.2910 8.7688 8.6707 3113.1847 2918.6196 194.70780 -8.295e-09 -2.9999 3.4887 -0.1821 1.0586 0.7981 0.1422 1.3764 1.5171 - 3.2110 25.6053 4.0897 0.2096 3.4240 7.9828 0.6552 1.4017 1.2862 -0.0688 7.9768...

(Means, medians, stdev.,… for RGB/HSV colors and texture filters)

"features"

Each 20x20 pixel square is a single "patch"

<7

slide-42
SLIDE 42

= 7

/>?

5) 5)

slide-43
SLIDE 43

= 7

/>?@ 7

5) 5)

slide-44
SLIDE 44
slide-45
SLIDE 45

"Library" slide(s)

what modules or libraries are you using? explain a bit about what it can do… (!) show off some of its basics

  • after all, others may find they have a use for it!

embrace the messiness of

  • pen-ended projects!
slide-46
SLIDE 46

Evaluating the classifier

Number of nearest neighbors used: 1,5,10,25,50,&100

Training and testing

  • n SAME data set.

Train and test on non-overlapping data set. Train and test on

  • verlapping data set

(same orientation) Train and test on

  • verlapping data set

(novel orientation)

slide-47
SLIDE 47

Evaluating the classifier

Number of nearest neighbors used: 1,5,10,25,50,&100

Training and testing

  • n SAME data set.

Train and test on non-overlapping data set. Train and test on

  • verlapping data set

(same orientation) Train and test on

  • verlapping data set

(novel orientation)

slide-48
SLIDE 48

Hallway

  • verall accuracy: 95.4%

Library

  • verall accuracy: 94.1%
  • ther

locations

slide-49
SLIDE 49

Example predictions

classification + confidence segmentations after training on a small part of this lab environment…

segmentation.mp4 classification.mp4

slide-50
SLIDE 50

"Next steps" slides

how well did initial trials work? what are "typical" examples it gets right? what are "typical" examples it gets wrong?

What other things are you planning to analyze/investigate?

(note: this may just be the cross-validation answer!) It's always nice to "drill down" to a few detailed examples.

slide-51
SLIDE 51

Still to investigate…

  • Go from classification to segmentation…
  • How accurate are the distances?
  • Enough to control the robot?

pixels vs. meters Questions…?

slide-52
SLIDE 52

"Still to go" slides

What is left in your project? How could it be expanded/extended? What would you do differently, if you were to do it all again?

Perhaps nothing!? Nice to tie in to any personal plans you might have relating to the data

  • r the project …

everyone can benefit from your insights! loop at least once more by the final version!

slide-53
SLIDE 53

(

A #5$7 #$ #1$ @ #A$ 7#7$

slide-54
SLIDE 54

(

7

  • 77

#77 7$ # 7$

slide-55
SLIDE 55

/

0/+(

  • median pixel error <2 pixels

in all environments

  • 96B
slide-56
SLIDE 56
  • <B
  • !"
  • #

"θ " "

slide-57
SLIDE 57
  • <B
  • !"
  • #

"θ " "

slide-58
SLIDE 58

( #$

slide-59
SLIDE 59

/

median metric error <3 inches in all environments

  • ~ 30-75% drop in RMS error

compared to Plagemann et al.

slide-60
SLIDE 60

/

  • much worse!

as good as when stopped

  • too shaky!
slide-61
SLIDE 61

+,C

slide-62
SLIDE 62

(D#,(0+$

slide-63
SLIDE 63

E 90000! 7

slide-64
SLIDE 64

E

C++ knn implementation with

variable precision levels

Allowed for more complex real-time

segmentation algorithms

Made autonomous wandering

feasible, using only the segmenter

2 orders of magnitude speedup

Marius Muja: thank you!

<0==

<70 ==7 90000! 7

slide-65
SLIDE 65

E

5)C '

000!7

slide-66
SLIDE 66

,7

  • E 7
  • 7
  • 7-
  • .@

B

  • -.0/F
slide-67
SLIDE 67

What's your approach ? What library or libraries did you explore/use? Your testing -- and results What worked and what didn't? How did you adjust to what was feasible vs. not? Further progress and/or insights Things you're still planning to work on… anything else…?

10-15 min. talk guideline (feel free to alter to suit!)

Title + Intro "Big Picture"

  • verall context +

motivation What's the problem? Problem details (narrative > bullets)

to reducing the problem

Questions…

insights!

slide-68
SLIDE 68

Final words: project schedule…

This week: example talk and a bit on Turing Machines Next week: project work during class (join in!)

  • Wed. 5/6: project presentations (~10 min. per project)
  • Your source-code to date (showing off your library)
  • One-page write-up of progress so far + plans still to-go
  • 10-15 minute talk (example this week…)

Milestone: due 5/8/15

  • 2-3 page write-up of results, +s, -s, and all of your source code

Final Project : due by 5/18/15 (or earlier, if you'd like!)

(final class meeting) (final hw due 5/1)

  • Include your project presentation slides!

(by email) (by email)

slide-69
SLIDE 69
slide-70
SLIDE 70

Electromechanical computation Water-based computation Integrated circuits Tinkertoy computation Parallel computers Molecular computation Quantum computation

http://www.cs.virginia.edu/~robins/The_Limits_of_Quantum_Computers.pdf http://www.arstechnica.com/reviews/2q00/dna/dna-1.html

So far, all known computational devices can compute only what Turing Machines can...

some are faster than others…

Turing machine

slide-71
SLIDE 71

Alan Turing

1946 WWII

Enigma machine ~ The axis's encryption engine

2007

Bletchley Park

AI! 1912-1954

slide-72
SLIDE 72

Alan Turing

1946 WWII

Enigma machine ~ The axis's encryption engine

2007

Bletchley Park

AI! 1912-1954