It was quite a productive day with Dr. Hamel today!
Lights:
Still searching for the optimal light source...
Since the single LED worklight wasn't quite bright enough, Dr. Hamel suggested either using several strips of the worklights or looking into a brighter #clippable #desk #lamp and after some looking on #Amazon... voila! It's on the way! Looking forward to test out its brightness and spread of light when it comes in! It seems like we'll need to build something for the lamp to vertically clip onto as the arm isn't long enough for the light source to be behind our camera (required distance of 80cm to fit as much of our table's surface to use). #future #thingstodo
Camera:
We fixed up our sixth version of Tracker...
Opening up the Player module, we realized sound wasn't stopping despite that two-second delay banging a stop message into our [groove~] object. Turns out the reason was because: blob data wasn't being cleared! So, even if I removed a coloured blob, numbers were still being sent into our coll list of data. Why? I forgot to clear our data with indexed -100 -100 messages. #oops It was an easy fix when we found out what went wrong though (see yellow marking).
We were also getting a LOT of noise data/unwanted smaller blobs being detected. Some of this might've been that we were testing in a non-optimal lighting environment but this was helped by increasing the threshold on [cv.jit.label] (see pink marking) because I had previously set it much too low. #oops #again Now, blobs have to be larger than 100 pixels; otherwise, they are rejected and not recognized as blobs we want to track.
Lastly, my program CHI was getting a little confused with which blobs I was moving despite using [cv.jit.blobs.sort] reordering the labels of my blobs based on the location per frame. And guess why? I didn't choose a large enough threshold of allowed displacement for a blob to be considered as the same blob in [cv.jit.blobs.sort] (see green marking). #oops #thirdtimesthecharm We changed that from 20 to 100 for now. So now, I can move the objects around faster (greater displacement over time) and [cv.jit.blobs.sort] will still recognize it as a continuous movement and label it as the same blob!
Good news: Tracker6 using [cv.jit.blobs.sort] is working now!
... and also fixed our Sample Player Module!
My Volume module that allows each blob's y-data to act as a fader controller volume of each blob/instance's sound file wasn't working as intended. I didn't properly target the correct instance prior to adjusting volume controls but we fixed that today (see orange marking)! We also added a "master STOP" button (see blue marking) to turn off all instances using the target 0 message into our [poly~] object.
Action:
Debugging the visualization of tracked data and [nodes[
After using [cv.jit.blobs.sort], the visualization of our dots in the [jit.lcd] display didn't work properly before. I'll have to look into and debug that problem so our dots are showing up accurately again.
This week I'll also start looking at the [nodes] object and experimenting with out the relative distance between my coloured objects can control sounds! There seem to be a lot of fun attributes to work with so stay tuned for updates!
This week's task: 1. fix [jit.lcd] data visualization 2. get started on implementing [nodes]
コメント