You are on page 1of 3

Learn.

gold Philip Liu

IS71014B Workshops In Creative Coding 1


(2016-17)
Dashboard Academic Year 2016-2017 Computing Postgraduate
IS71014B (2016-17) Week 16 - OSC messaging face controller

face controller
Use your face to control graphics and audio!

FaceOSC will track a face and send its pose and gesture data over OSC, as well as the raw
tracked points (when selected in the GUI). Make sure you watch the demo below to get an idea
how to use FaceOSC. Also be sure you use Osculator (Mac only) to make sure the signals are
being sent and what their values are.

Step-by-step instructions to setup FaceOSC


If you don't want to build FaceOSC yourself, you can download an executable from here. If
you do that you can jump to the next set of instructions
Download the ofxFaceTracker addon and place it inside your addons folder inside the
openFrameworks directory.
Start a new project using the ofxCv, ofxFaceTracker, ofxGui, ofxOpenCv and ofxOsc addons.
You might need to download ofxCv because it doesn't come by default.
Download this file which contains all the models and source code your FaceOSC will need.
Copy the src and bin folder from the downloaded folder (or if you're using a Mac use it
straight away). If you've done things right this example should now be sending the face data.

Step-by-step instructions to complete the assignment


Start a new project based on the oscReceive example provided in class. Make sure it listens
on the same port that FaceOSC sends the data to. If you start the FaceOSC app up it will tell
you what port it is sending data to.
Study the list of OSC data packets sent by FaceOSC (see list below). Make a further change
in your oscReceive modification in order to read of the parameters provided by FaceOSC.
You could, for example, read the size of the mouth. This would be a good point to have the
incoming values printed on the console using something like
cout << myVariable << endl; (or use Osculator) so that you check first the range of
values you are receiving. This is important so that you know how to use them in your
program.
Modify your oscReceive program to include graphics that are aected by the mouth or other
more complicated gestures.

List of OSC data packets sent by FaceOSC


Pose
center position: /pose/position
scale: /pose/scale
orientation (which direction you're facing): /pose/orientation
Gestures
mouth width: /gesture/mouth/width
mouth height: /gesture/mouth/height
left eyebrow height: /gesture/eyebrow/left
right eyebrow height: /gesture/eyebrow/right
left eye openness: /gesture/eye/left
right eye openness: /gesture/eye/right
jaw openness: /gesture/jaw
nostril flate: /gesture/nostrils
Raw
raw points (66 xy-pairs): /raw

More details here.

What to submit
Important: In this assignment, you're going to submit a link to a video file uploaded on vimeo
or youtube instead of screenshots. You'll submit the link to the youtube or vimeo video on
learn.gold. Please don't submit a video file. A link to youtube/vimeo is friendlier :). Make sure you
show in the video both your face as it's captured by FaceOSC and the graphics that you control.
You can have the 2 programs run next to each other and capture the whole screen.

Of course you'll also need to submit the following code files too:

main.cpp
ofApp.cpp
ofApp.h
the link to the vimeo or youtube video.

(please no zips)

Submission status

Submission status No attempt

Grading status Not graded

Due date Monday, 27 February 2017, 2:00 PM

Time remaining Assignment is overdue by: 33 days 9 hours

Last modified -

Submission comments Comments (0)

Add submission

Make changes to your submission

ADMINISTRATION
Course administration

You are logged in as Philip Liu (Log out)


IS71014B (2016-17)

You might also like