The first sketch project was assigned the past Monday. I would have never thought that the interactive pieces that I had known from childhood, is now something I could do. Since Max is built with unlike other programs I have used, it took a few hours of playing around with examples before I understood the parts. Since the first sketch assignment requires careful planning and understanding of the graphic programming language Max Msp, our first team action was to break down our concept and the parts so that they would be manageable. Both of us had a lot to do for other courses this week, so we could not begin earlier. Each of us did our own research and looked at a lot of examples to help us explore what is available and what the easiest ways are to perform the functions we needed. After breaking it down to parts, we looked at them as small puzzles we needed to solve and get through. The main ones that took longer to do were to figure out how to calculate the area a person takes up in front of the backdrop, how we could get signals to scale to another range, how we could mask without the difficulty of matching the mask to the video. Most of the other parts were just tedious in that information on them were hard to find or their explanations on the site were not for the laymen. After a very long late nighter and morning. we finally got the sketch working.
We ran into many difficulties with finding suitable codes to modify since a majority of Max users are focused on the audio aspect of its capabilities. As well the fact that testing the system on the computer with a web cam does not give a good estimate of how it would perform when set up life size. A lot of the time, our bodies were half background and half recognized blobs which was difficult in tracking the area of a person. Our solution was not to calculate the people, but made the assumption that the screen in class would be better and that there would be better visual fidelity for the camera. We therefore took the approach to track the white space, those that are above the threshold and then used a blob detection technique to isolate the largest white blob as to give us better and smoother outputs in the values of the numbers.
The next step is organize and comment the patches so that they could be easily understood and to test the program at its intended site to ensure everything works.
Below are screen shots of our project in progress.
The first one shows our attempt at stabilizing incoming values from webcam signals so that it will output numbers between zero and 20.
The second image shows how we utilized a button to link all the toggles or buttons that must be pressed to save time when initiating the program.
The third image is our switch system to give either a “play”, “reverse” or “stop” signal that is used to control the video playback of the growing tree. The values that came in were between negative to positive numbers where when one moves more, the number becomes more positive; when no motion is detected, the number is negative. We used if statements to determine what is done when different signals come in. When one boolean expression is true, it sends out a number to the video’s 1$ rate in which the video will play at that rate.
Though in our program we have three states. We chose not to have a stalling range of values where “stop” really happens(when incoming signal = 0). We felt that the video should always be playing either forward or reverse to give people feedback that the installation is working.

