From the start, I kept rewatching the Laser Graffiti video to get a feel of what is going on and how to go about doing it. After which I started changing the Silhouette Blob Tracking patch provided by Prof LP in the dropbox.

I did quite a lot of research on how to get the blob tracking to work especially in MAX MSP and have referred to a few patches I found online regarding blob tracking.

My initial idea was to play with the RGB for colour detection so that it can track a blob with a specific colour or at least something with high contrast.

The red plus sign shown in the window indicates the detection.

[Video Trial 1]

However, I realised that it did not do much other than this and I found out that I did not connect one of the parts properly. After some changes, I did an image subtraction instead and this is what I got.

[Video Trial 2]

However, I did not know exactly how to change the patch such that it will detect a particular item or something accurately. Hence, I moved on to my second approach and changed the patch.

Instead of using Jit.Brcosa for saturation, perhaps I should use it with brightness instead, something I also used for the previous assignments.

I have also added the silhouette blob patch side by side to see how can I integrate this patch with the one I have currently to make both work at the same time.

After a long process of connecting things here and there, shifting things around, and testing out functions that I can remove that will not affect the result, I have come to the final patch.

The blob tracking shows that there is an indication.

I also realised that running the patch fullscreen in darkness works a lot better, if not there will be quite a lot of noise detected on the screen. Without a projector, the emulation is not exactly the same as the Laser graffti one but instead, I used my laptop webcam, and turned it towards the desktop like Vejee.

After which I shone my red laser on the desktop to test if it could work. The patch is now able to detect the laser beam and draws according to the area subtraction method used in the patch. The program will then dim, erases all graffiti and restarts again after a short time lapse.

Here are 2 attempts at trying out the laser tracking graffiti.

 

[FINAL PATCH ATTEMPT 1]

In the first attempt, you can actually spot me in the first few seconds of the video before I push down the laptop lid to face my desktop before shining the laser beam.

[FINAL PATCH ATTEMPT 2]

In the second attempt, if you look hard enough, you can actually spot me waving my laser pointer as I did not push down my laptop lid as much and have moved further away from the laptop, resulting in a thinner draw line.

I still feel that the patch can be further optimised and that perhaps it will run differently if connected to a projector on a larger scale. Appropriate adjustments have to be made then but nonetheless, I am still happy with what I got as of now, something I feel that is close to the graffiti concept, though I am not quite there yet.

Feeling really happy to be exploring MAX from EM1 to EM4 and my final project, I have definitely learnt a lot and the semester has been enjoyable for Interactive II.