I am VEJEE: valerie and shampoo bottles


designed to confuse the blur me.

FIRST ENCOUNTER: it didn’t work at all, huh bummer. At first, all the patches were not sensing me at all.

I tried the different patches thinking that they would work, but the red regions were always highlighted and yet did not send bang signals or play the audio input.

Then I remembered motion region was a way to help MAX distinguish between what was there before and what we had just put into the screen input. There I looked into it and there and behold, I refreshed the screenshot and adjusted the threshold (to 33) to which it would sense the background and me well.

Subsequently, I looked into the more important parts of the project.

Firstly, Under pGrabSequence is where motion boxes was programmed. At first, I saw a list of numbers I could barely put a title on and realized shortly after that it was the coordinates of the motion region boxes that would sense the different things I put in it!

I then added 4 more boxes as there were supposed to be 8 music files compiled with it. 

Then came the part where I had to match the motion region boxes with the music files! I had a very hard time trying to refer back and forth between windows of trigsound playsound and motionregion so I decided to remove that function and add that to the main patch itself!

In that, I added one button which would receive messages sent by the motion region and would send ‘1’  to the audio file whenever there was a threshold difference in the image coming in. However, the audios were overlapping with each other and getting very messy even though there was nothing in the frame! so there was a problem in getting the audios to stop running whenever I start it

Then I added the second bang which turned out to be a better addition as then the audios would then switch off by themselves as they received a’0′ from the bang when the motion regions did not receive a threshold difference in the image previewed!

Hence the final product, I did it with my arms and spare shampoo bottles I had lying around 🙂 enjoy!

EM3/ IAmMyFather

This class, we learnt how to ‘change our faces’ through face detection in MAXmsp! In the patch given, the programme seemed fine, however, it wasnt perfectly smooth and the face was not adjusting to my face proportionally so i tried to fix it!

Problem 1: Resizing.

i tried many things shifting the numbers of the jit.matrix and jit.movie and the boundary steps in the patch.

however, when I tried to toggle with the boundary step – ($1 $2, dsdimend $3 $4) and changed it to things like adding in dimensions of ($1 + 50) or bigger numbers like 200 it didnt really help!

that’s why I tried adding Jit.matrix as shown in the red circle as highlighted and it worked better after that! not perfect but close enough. so far, i can only think that the jit.matrix helps to limit the space of the image in comparison with my face!

and sooooo this is the final product of my face mashed up with my dad’s and may i say we look alike with the likeness of a pig :”))  #FAMILY

I hope I can explore this function in the near future and make it applicable to more people on the screen!




Done by: Tan Chloe and Ye Min Valerie

Presenting our Final project powerpoint slides and process video!


And a clip of our project during submission day! (CR: Jakeru)

MAX was very tricky to work alongside other apps like arduino and faceOSC but through much proofreading the days before final submission, we (mostly chloe) really tried to find out why the applications were not communicating to each other as smoothly as they should. Thus, there were alot of delays and different bang buttons added onto the patcher.

If we were to do this project again, we hope we can find better applications and sensors to better assist the patch! and maybe we could even venture into things better suited for the patch such as simple sounds or even a music piece!

Mirror Mirror on the wall? Am i not the fairest of them all?

Almost like sorcery, Christian Moeller’s dimming ‘mirror’ gets darker the closer an audience member gets to it. And it’ss up to us to tweak LPD’s version to be as close to a real sorcerer’s mirror.

At first glance, using the original patch. There were a few glitches:

  1. the dimming of the output screen was a bit too jumpy where it would get dimmer only every second, which is evidently too slow.
  2. even if my face was too close to the screen, the mirror would not be dimmed at all.
  3. the screen was not acting like a mirror, it does not reflect me as a mirror would.

Problem #1:

Looking at the program as it was i tried toggling with the split settings as shown.

This was because I thought the size of the ‘split’ was too big and not controlled enough that is why the programme was very confused. But through toggling with these functions, I learned that this meant that the ‘split’ function can help me sift out values I do not want.

TIP: the bottom left output of the ‘split’ function outputs the values that are in between the limits, the bottom right ones outputs the values that are not.

Through this, I can streamline the size of my face from rather 40%- 99% to 30%-75% to allow the audience see their face as they advance closer instead of only having them see their face when they are too close to the mirror.And this is what i have eventually altered it to.

Going back to the real problem, I realized it was the number of frames the program was running by each second. The components that needed changing was not in the first few, it was in the ‘p area2brightness’ patcher. The ‘$1 100’ message is to generate a timed ramp. Each ramp generating a reading for face recognition and the scale of the face is increased now, therefore, the transition for the dimness of the lights are smoother.

2. Along with this, I changed the scale of the camera so that it can register a bigger face on the area of the screen.

3. Tackling the last point, I went into the first patch ‘p videoin’ and added in ‘jit.dimmap’ that are able to flip the image output around given the extension @invert.

This is the video of the mirror upgraded :”)