Authoring Sensor-Based Interactions by Demonstration with Direct - - PowerPoint PPT Presentation

authoring sensor based interactions by demonstration
SMART_READER_LITE
LIVE PREVIEW

Authoring Sensor-Based Interactions by Demonstration with Direct - - PowerPoint PPT Presentation

Authoring Sensor-Based Interactions by Demonstration with Direct Manipulation and Pattern Recognition Bjrn Hartmann, Leith Abdulla Manas Mittal, Scott R. Klemmer 1 How would you prototype a workout monitoring system? [Apple, Nike] 2


slide-1
SLIDE 1

1

Authoring Sensor-Based Interactions by Demonstration

with Direct Manipulation and Pattern Recognition

Björn Hartmann, Leith Abdulla Manas Mittal, Scott R. Klemmer

slide-2
SLIDE 2

2

How would you prototype…

[Apple, Nike]

…a workout monitoring system?

slide-3
SLIDE 3

3

How would you explore…

[Nintendo]

…motion-based game controllers?

slide-4
SLIDE 4

4

How would you build…

[Ju, Lee, Akers]

…a proximity-aware whiteboard?

slide-5
SLIDE 5

5

Sensor-based Interaction Design

slide-6
SLIDE 6

6

[Hartmann et al., UIST ’06]

d.tools

slide-7
SLIDE 7

7

d.Tools Student Project

d.tools

slide-8
SLIDE 8

8

Designing Sensor-based Interactions

PROTOTYPE APPLICATION LOGIC SPECIFY RELATIONSHIP BETWEEN SENSOR DATA AND APPLICATION LOGIC PROVIDE SOFTWARE ABSTRACTION FOR HARDWARE SPECIFY RELATIONSHIP BETWEEN SENSOR DATA AND APPLICATION LOGIC

slide-9
SLIDE 9

9

Types of Sensors

Continuous Categorical Discrete

IR/Ultrasonic Rangers Force Sensitive Resistors RFID Accelerometers Phototransistors

slide-10
SLIDE 10

10

Current Tools: Oscilloscopes

[CC image by Timo Arnall]

slide-11
SLIDE 11

11

LabView

Current Tools: LabView

slide-12
SLIDE 12

12

Representation Matters

//detect accelerometer peaks //read data sample xVal[t++]=readA2DValue(xPin); //look for changes in derivative if(((xVal[t]-xVal[t-1]) >= 0 && (xVal[t-1]-xVal[t-2]) < 0) (((xVal[t]-xVal[t-1]) < 0 && (xVal[t-1]-xVal[t-2]) >= 0 //peak detected //send message

  • scSendMessageInt("/x/peak",1);

} else { //no peak }

Accelerometer X axis Accelerometer Y axis

slide-13
SLIDE 13

13

Idea: Programming by Demonstration

slide-14
SLIDE 14

14

Idea: Programming by Demonstration

slide-15
SLIDE 15

15

Tacit Knowledge

slide-16
SLIDE 16

16

Crux: Generalization

slide-17
SLIDE 17

17

Crux: Generalization

slide-18
SLIDE 18

18

Crux: Generalization

slide-19
SLIDE 19

19

Exemplar

slide-20
SLIDE 20

20

Exemplar

slide-21
SLIDE 21

21

Exemplar

slide-22
SLIDE 22

22

Exemplar

slide-23
SLIDE 23

23

slide-24
SLIDE 24

24

Exemplar UI

slide-25
SLIDE 25

25

Exemplar UI

slide-26
SLIDE 26

26

Exemplar UI

slide-27
SLIDE 27

27

Exemplar UI

slide-28
SLIDE 28

28

Exemplar UI

slide-29
SLIDE 29

29

Exemplar UI

slide-30
SLIDE 30

30

Exemplar UI

slide-31
SLIDE 31

31

[Flash animations from the talk are not included in this presentation]

slide-32
SLIDE 32

32

[Sakoe, H. Chiba, S. ‘78]

Dynamic Time Warping

Demonstration Signal Matching Input Signal

slide-33
SLIDE 33

33

Offset Y-Axis Scaling Smoothing Rate of Change

Filters

slide-34
SLIDE 34

34

Extensible Filter Set

slide-35
SLIDE 35

35

Understanding the Exemplar Approach

Cognitive Dimensions of Notation (CDN) Inspection First-Use Laboratory Study Class Deployment Used as Design Tools for “Building Upon Everyday Play” CHI Interactivity Exhibit Analysis of Exemplar as a visual authoring environment Threshold and usability Real-world stress test Complexity ceiling for knowledgeable users

What? Why?

slide-36
SLIDE 36

36

Lab Study

[sketches by Wendy Ju]

slide-37
SLIDE 37

37

Lab Study

[sketches by Wendy Ju]

47 min 22 min 26 min 31 min 27 min 18 min

slide-38
SLIDE 38

38

slide-39
SLIDE 39

39

Mini Joystick Bend Sensor taped to table Navigation with Accelerometer Navigation with XY Joystick Test Play

slide-40
SLIDE 40

40

Mini Joystick Bend Sensor taped to table Test Play Test Play Trigger with Bend sensor Refine trigger detection

slide-41
SLIDE 41

41

Post-Test Questionnaire

slide-42
SLIDE 42

42

Post-Test Questionnaire

slide-43
SLIDE 43

43

CHI Interactivity

[Control Freaks by Haiyan Zhang]

slide-44
SLIDE 44

44

CHI Interactivity

Compulsory latency of pattern matching precludes use for fast-paced actions

Threshold crossed here Pattern matched here time

[Control Freaks by Haiyan Zhang]

slide-45
SLIDE 45

45

Related Work

a Capella [Dey et al., CHI 04] Crayons [Fails & Olsen, CHI 03] Monet [Li, Landay, UIST 05] Papier-Mâché [Klemmer et al., CHI 04] HID Toolkit [Steiner, NIME 05] MnM [Bevilacqua et al., NIME 05] FlexiGesture [Merrill & Paradiso, CHI 05] LabView/ Lego Mindstorms NXT

PBD Tools for Ubicomp Musical controller Design tools Commercial Dsp software

slide-46
SLIDE 46

46

A CAPella (Dey et al., CHI 04)

Related Work

slide-47
SLIDE 47

47

FlexiGesture (Merrill CHI05)

Related Work

slide-48
SLIDE 48

48

LabView

Related Work

slide-49
SLIDE 49

49

Lego Mindstorms NXT

Related Work

slide-50
SLIDE 50

50

Future Directions

Export: Generate code + specifications Programming sensor networks by demonstration d.mix: Programming by A Sample for Web Service APIs Integration of direct manipulation environments with textual programming

slide-51
SLIDE 51

51

Acknowledgments

We thank MediaX/DNP for funding, Intel for equipment donation, Wendy Ju for illustrations, David Merrill & Timo Arnall for photos.

slide-52
SLIDE 52

52

Download Exemplar: http://hci.stanford.edu/exemplar CHI Interactivity “Building Upon Everyday Play” Talk tomorrow, 11:30am, Room C2