Slide 1

Slide 1 text

Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.info o ffi ce: 14 -227 CSC 486 Human-Computer Interaction Lecture 14. Final Review

Slide 2

Slide 2 text

Announcements 2 * Final Exam March 13 (Lecture Time) * Final Project Due by March 20 (no extensions)

Slide 3

Slide 3 text

Grading

Slide 4

Slide 4 text

Grading 4 Project 20/ 5 = 4 20/ 5 = 4

Slide 5

Slide 5 text

Grading 5

Slide 6

Slide 6 text

Final Project Submission

Slide 7

Slide 7 text

Submission a ) Fin a l Version of your Source Code - submit your J a v a f iles b) D a t a set - collected or simul a ted c) short p a per - (4 p a ges) d) Final presentation video – Sh a re a link to your recorded present a tion. 7

Slide 8

Slide 8 text

Short Paper

Slide 9

Slide 9 text

Format: Word, Latex 9 Go to: https://template-selector.ieee.org/ And select conferences.

Slide 10

Slide 10 text

Content • Title – A concise a nd descriptive title th a t re f lects the m a in topic of the p a per. • Abstr a ct (Option a l) – A brief summ a ry (usu a lly 150–250 words) outlining the p a per’s objective, key f indings, a nd conclusions. • Introduction (1) – Introduces the m a in topic, a nd st a tes the rese a rch question or problem. It should highlight the project purpose a nd signi f ic a nce. WHAT you did a nd WHY • B a ckground (1) – Summ a rizes relev a nt context: BCI or Eye Tr a cking, or XR, or Robotics, even Docker. Things th a t a lre a dy exist a nd you used • Methodology – Brie f ly expl a ins HOW d a t a w a s collected or a n a lyzed or HOW you implemented a n a pplic a tion th a t a d a pt in re a l-time • Discussion/An a lysis (1) – Presents a rguments, evidence, or insights a bout wh a t work a nd wh a t did not. Showc a se your a chievements a nd do not be a fr a id to disclose f a ilures. • Conclusion – Summ a rizes the m a in points, reinforces key f indings, a nd m a y suggest future rese a rch or a pplic a tions. • References (1) – Lists sources cited in the p a per, following the required cit a tion form a t (e.g., APA, IEEE, or MLA). 10

Slide 11

Slide 11 text

Video Presentation Part 1. Demo

Slide 12

Slide 12 text

First Act – The product for the Customer Demo of your project. Show your project running. :: notes :: you c a n, a ddition a lly, t a lk (brie f ly) a bout your extr a items or missing items. 12

Slide 13

Slide 13 text

Video Presentation Part 3. Code

Slide 14

Slide 14 text

Thoughts? 14 Publisher Publisher Publisher Subscriber

Slide 15

Slide 15 text

Video Presentation Part 3. Data or Data Analysis

Slide 16

Slide 16 text

What can you tell about or do for them? 16

Slide 17

Slide 17 text

Disclaimer

Slide 18

Slide 18 text

Disclaimer for Final Exam Review The f in a l ex a m is comprehensive, encomp a ssing a ll course m a teri a ls. This review covers only a subset of topics. Import a nt: • Ensure you review a ll lecture slides a nd course m a teri a ls. • The following slides include ex a mples rel a ted to selected topics. • This is NOT a n exh a ustive list of ex a m topics. 18

Slide 19

Slide 19 text

Concepts Lectures 1

Slide 20

Slide 20 text

Concepts • Inter a ction • F a ctors (A ff ective + Cognitive) • Input • Output • Sensing • Perception • UX 20

Slide 21

Slide 21 text

Sensing • Br a in • F a ci a l Gestures • Eyes • He a rt R a te • Skin Conduct a nce • Body Postures 21 😀

Slide 22

Slide 22 text

Questionary 1. Wh a t is a Hum a n? 2. Wh a t is a Computer? 3. Wh a t is Inter a ction? 4. Wh a t m a kes a “good” inter a ction? 5. Wh a t m a kes a “b a d” inter a ction? 6. Wh a t is aff ect (emotion, mood)? 7. Wh a t is Ple a sure? 8. Wh a t is Arous a l? 9. Wh a t is Domin a nce? 10.Wh a t we c a lled a n “input”? 22

Slide 23

Slide 23 text

Questionary 11. Wh a t we c a lled “processing or thinking”? 12.Wh a t we c a lled a n “output”? 13.Wh a t is us a bility? 14.Wh a t is us a bility engineering? 15.Wh a t is “user friendly”? 16.Wh a t is a cognitive f a ctor? 17. Wh a t is a n interf a ce (user interf a ce)? 18.Provide a n ex a mple of a “good” user interf a ce in a softw a re a pplic a tion 19.Provide a n ex a mple of a “b a d” user interf a ce in a softw a re a pplic a tion 23

Slide 24

Slide 24 text

Affect Lectures 2, 3, 10

Slide 25

Slide 25 text

PAD 25

Slide 26

Slide 26 text

Emotiv Data 26

Slide 27

Slide 27 text

Tobii Data 27

Slide 28

Slide 28 text

Data File • First, time information is represented by the attribute time. • The device information includes metrics such as batteryLevel, batteryPercent, wirelessSignal, and sensorsQuality. •For facial actions, attributes like actionEye, actionUpperFace, powerUpperFace, actionLowerFace, and powerLowerFace capture various facial expressions and their intensities. •The emotional metrics encompass a range of states, including engagement, excitement, longTermExcitement, stress, relaxation, interest, and focus. In addition, boolean fl ags, such as isENG, isEXC, isSTR, isREL, isINT, and isFOC, indicate whether speci fi c emotional states are active. •The Pleasure, Arousal, and Dominance (PAD) model is represented through the attributes Pleasure, Arousal, and Dominance. Finally, ignore SAM. 28

Slide 29

Slide 29 text

More Data Lectures 11, 12

Slide 30

Slide 30 text

Face 30

Slide 31

Slide 31 text

Motion 31

Slide 32

Slide 32 text

Your Java Desktop Application 32

Slide 33

Slide 33 text

MQTT Data { “leftEye”:{"x":-0.4216550588607788,"y":0.8787311911582947,"z":-0.00456150621175766}, “rightEye":{"x":-0.3755757808685303,"y":0.8756504058837891,"z":0.04438880831003189}, “leftEyeGaze":{"x":0.050619591027498248,"y":-0.0809454470872879,"z":0.9954323172569275}, “rightEyeGaze":{"x":0.050619591027498248,"y":-0.0809454470872879,"z":0.9954323172569275}, “eyeFixationPoint":{"x":0.11886614561080933,"y":-0.13097167015075684,"z":2.974684476852417}, “leftHand”:{"x":0.0,"y":0.0,"z":0.0}, "rightHand":{"x":0.0,"y":0.0,"z":0.0}, “cube":{"x":-0.5114021897315979,"y":1.5798050165176392,"z":0.024640535935759546}, “head":{"x":-0.7167978286743164,"y":0.8024232983589172,"z":0.17002606391906739}, “torso":{"x":-0.6404322385787964,"y":0.5270168781280518,"z":0.035430606454610828}, “leftFoot":{"x":-0.8061407804489136,"y":-0.16039752960205079,"z":0.25339341163635256}, “rightFoot":{"x":-0.5946151614189148,"y":-0.15849697589874268,"z":0.33175137639045718}, “hips":{"x":-0.6485552787780762,"y":0.33673161268234255,"z":0.0795457512140274}, “leftArmUp":{"x":-0.8079588413238525,"y":0.7046946287155151,"z":0.0354776531457901}, “lefArmLow":{"x":-0.6874216794967651,"y":0.5375530123710632,"z":-0.05098365247249603}, “rightArmUp":{"x":-0.5440698266029358,"y":0.7054383754730225,"z":0.16330549120903016}, “rightArmLow":{"x":-0.6227755546569824,"y":0.5135259032249451,"z":0.2464602291584015}, “leftWrist":{"x":-0.5440698266029358,"y":0.7054383754730225,"z":0.16330549120903016}, “rightWrist":{"x":-0.6227755546569824,"y":0.5135259032249451,"z":0.2464602291584015} } 33

Slide 34

Slide 34 text

MQTT Lectures 5, 7

Slide 35

Slide 35 text

Message Queuing 35 Publisher Subscriber

Slide 36

Slide 36 text

Eclipse Paho for Java Wh a t is Eclipse P a ho? • A set of MQTT client libr a ries developed by the Eclipse Found a tion. • It supports multiple l a ngu a ges, such a s J a v a , Python, J a v a Script, etc. J a v a Dependency (M a ven) org.eclipse.paho org.eclipse.paho.client.mqttv3 1.2.5 36

Slide 37

Slide 37 text

https://github.com/CSC3100/MQTT

Slide 38

Slide 38 text

https://github.com/CSC3100/MQTT

Slide 39

Slide 39 text

Nielsen Lectures 6

Slide 40

Slide 40 text

Usability Heuristics 40 Jakob’s Ten Usability Heuristics www.nngroup.com/articles/ten-usability-heuristics/ Designs should keep users informed about what is going on, through appropriate, timely feedback. Visibility of System Status 1 The design should speak the users' language. Use words, phrases, and concepts familiar to the user, rather than internal jargon. Match between System and the Real World 2 Users often perform actions by mistake. They need a clearly marked "emergency exit" to leave the unwanted state. User Control and Freedom 3 Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions. Consistency and Standards 4 Good error messages are important, but the best designs prevent problems from occurring in the first place. Error Prevention 5 Minimize the user's memory load by making elements, actions, and options visible. Avoid making users remember information. Recognition Rather Than Recall 6 Shortcuts — hidden from novice users — may speed up the interaction for the expert user. Flexibility and Efficiency of Use 7 Interfaces should not contain information which is irrelevant. Every extra unit of information in an interface competes with the relevant units of information. Aesthetic and Minimalist Design 8 It’s best if the design doesn’t need any additional explanation. However, it may be necessary to provide documentation to help users understand how to complete their tasks. Help and Documentation 10 Error messages should be expressed in plain language (no error codes), precisely indicate the problem, and constructively suggest a solution. Recognize, Diagnose, and Recover from Errors 9 Nielsen Norman Group

Slide 41

Slide 41 text

Visual Attention Lectures 8

Slide 42

Slide 42 text

Factors 1. S a lience: Color, Dimension, Orient a tion, Size 2. Motion: onset, looming, unpredict a ble, depicted 2. Motion: c a p a city, body, n a tur a l, 3. Agents: f a ces, bodies, a nim a ls 4. Sp a ti a l Cues: Eye g a ze, pointing, a rrows 4. Sp a ti a l Cues: direction a l words 5. High Arous a l 6. Unexpectedness: Novelty 7. Self-relev a nce: your n a me, your f a ce, 8. Go a l-relev a nt: no-go a l 8. Go a l-relev a nt: go a l-directed 42

Slide 43

Slide 43 text

Cognition Lectures 10

Slide 44

Slide 44 text

De f inition • A cognitive f a ctor is s ment a l a bility th a t in f luences how individu a ls process, a n a lyze, use inform a tion to inter a ct with their environment. • Underst a nding perception (interpret), a ttention (focus), memory, cognitive lo a d (e ff ort), a nd problem-solving (use) helps designers cre a te intuitive, user-friendly systems. • Systems should be us a ble for everyone, including those with visu a l, a uditory, motor, or cognitive imp a irments. 44

Slide 45

Slide 45 text

De f inition How users ret a in a nd rec a ll inform a tion while inter a cting with a system • Short-term memory (Working Memory): Tempor a ry stor a ge of inform a tion, such a s remembering a menu p a th or a recently entered p a ssword. • Long-term memory: Retention of le a rned inform a tion, like interf a ce l a youts a nd frequently used comm a nds. Interf a ces should minimize reli a nce on memory. E.g. by using cle a r n a vig a tion, tooltips, a nd recogniz a ble icons. 45

Slide 46

Slide 46 text

Attention Attention determines how users focus on t a sks a nd f ilter out distr a ctions. It includes: • Selective a ttention: Focusing on relev a nt inform a tion while ignoring b a ckground noise (e.g., distinguishing key a lerts in a cluttered d a shbo a rd). • Divided a ttention: M a n a ging multiple t a sks simult a neously (e.g., using multiple a pps on a split-screen). • Sust a ined a ttention: M a int a ining focus over a long period (e.g., re a ding a long document). Well-designed interf a ces should guide a ttention. 46

Slide 47

Slide 47 text

Perception Perception refers to how users interpret a nd m a ke sense of sensory input (e.g., visu a ls, sounds, touch). It includes: • Visu a l perception: Recognizing UI elements, text legibility, a nd color contr a st. • Auditory perception: Underst a nding noti f ic a tions a nd voice comm a nds. • H a ptic perception: Inter a cting through touch feedb a ck (e.g., vibr a tion responses). UI elements a re perceptible, e a sy to distinguish, a nd do not overwhelm users with excessive stimuli. 47

Slide 48

Slide 48 text

Problem Solving Problem-solving in HCI involves users f inding solutions within a n interf a ce, such a s troubleshooting errors, n a vig a ting complex softw a re, or completing t a sks with minim a l instruction. Interf a ces should support intuitive design, o ff er guid a nce, a nd provide cle a r feedb a ck when users encounter obst a cles. 48

Slide 49

Slide 49 text

Decision-Making Decision-m a king refers to how users choose between multiple options b a sed on a v a il a ble inform a tion, preferences, a nd p a st experiences. Ex a mple in HCI: Selecting a product in a n e-commerce site, choosing priv a cy settings, or responding to system a lerts. Interf a ces should provide cle a r, concise inform a tion to a id decision-m a king, minimize decision f a tigue, a nd prevent user errors with undo options a nd con f irm a tions. 49

Slide 50

Slide 50 text

Embodiment Lectures 12, 13

Slide 51

Slide 51 text

Embodiment • Inter a ction th a t involves the whole body a s a medium for eng a gement with digit a l environments. • Theoretic a l b a sis: physic a l sp a ce, a nd soci a l context in sh a ping hum a n inter a ctions • Immersive Computing, (VR/AR) - users feel fully present • A ff ective Computing - Physical actions c a n gener a te emotion a l st a tes; f a ci a l expressions can enh a nce soci a l a nd emotion a l eng a gement also • The Sensorimotor Loop: body’s movement provides feedback that shapes perception and decision-making. 51

Slide 52

Slide 52 text

Motion Tracking • Met a Quest uses a combin a tion of hand tracking, a nd AI-based body estimation to tr a ck the user’s movements. The system prim a rily focuses on head, hand, and body tracking, with emerging techniques for full-body tr a cking. • he a dset itself cont a ins a ll necess a ry sensors to tr a ck motion • Multiple outw a rd-f a cing c a mer a s th a t sc a n the environment a nd detect ch a nges in position. • Uses Simult a neous Loc a liz a tion a nd M a pping (SLAM) a lgorithms to cre a te a m a p of the sp a ce a nd tr a ck the user’s movement within it. • 6 Degrees of Freedom (6DoF): Met a Quest c a n tr a ck position (X, Y, Z) a nd rot a tion (pitch, y a w, roll) of the he a dset a nd controllers in re a l time. 52

Slide 53

Slide 53 text

HRI Lectures 13, 14

Slide 54

Slide 54 text

Thoughts? 54

Slide 55

Slide 55 text

Java Desktop 55

Slide 56

Slide 56 text

Java Desktop 56

Slide 57

Slide 57 text

Remote Control 57

Slide 58

Slide 58 text

Docker | Steps 58 2. A package that includes everything needed to run software, including the code, runtime, libraries, dependencies, and configuration files. 3. A container is a runtime instance of an image. It encapsulates the execution environment for a specific application or process, including the filesystem, environment variables, network settings, and runtime options. 1. A text file that contains instructions for building a Docker image

Slide 59

Slide 59 text

Questions 59

Slide 60

Slide 60 text

CSC 486 Human-Computer Interaction Javier Gonzalez-Sanchez, Ph.D. [email protected] Winter 2025 Copyright. These slides can only be used as study material for the class CSC 486 at Cal Poly. They cannot be distributed or used for another purpose.