My Raspberry Pi - based microscope camera uses the high-quality Raspi camera that was released in early 2020. It features a 12.3 megapixel Sony IMX477 sensor, with a pixel size of 1.55μm × 1.55μm, which is twice the pixel area than the previous Raspberry Pi camera model. The image quality is much better than the previous Raspi camera models, or the old AmScope 3 MP USP camera (MU300) I had been using before.
This page contains a listing of all my posts. You can filter them by broad topic using the submenus under "Creative Outbursts". Or you can filter articles with the tag cloud in the sidebar to the right. You can also sign up to my RSS feed to be notified of new articles.
In the past, I've used the Python imaging library to blend images and place text overlays on frames. I recently wrote a version that does this in one single script, using OpenCV for manipulating the images. Maybe it's useful to someone...
I find Slack extremely useful for collaborating with a team. It's also great for quickly and easily getting notifications about the status of a script that's running on a remote computer somewhere. In my case, I'm running bioinformatics pipelines that take hours or days to run. Slack notifications tell me when programs finish running, or if something odd has happened.
Below are two code snippets I've found useful:
Timelapse video of a house demolition with a time-stamp overlay
Sadly, our neighbors sold their house and it was recently demolished to make way for two new buildings. On the plus side, this gave me an opportunity to try out my Raspberry Pi camera and make a time lapse movie of the process. Specifically, I wanted to try a quick-and-easy way to add a time-stamp in the corner of the video to give an indication of the current time of the day.
A short description of a program for tracking vehicles written in C++ using the OpenCV library. The goal is to count cars and collect statistics of estimated vehicle speeds. An adaptive background segmenter (MOG) and a perspective transform are used to pre-condition the video frames. If contours are found, their coordinates are fed to a Tracker class, which employs a Kalman filter and an assignment algorithm to keep vehicle identities straight.
My security camera has been running great for months. Issues have arisen only when the wireless router gets restarted or the wireless connection gets lost for some other reason. The problem is that the Raspberry Pi doesn't automatically reconnect after a wlan connection is dropped. Here's a possible solution to the problem that doesn't involve unplugging the RPi.
SASS/Compass with MacPorts on El Capitan. This is mostly a note to myself
When updating to El Capitan, my compass and sass installations had disappeared once again. But when I tried to just install the compass and sass gems with the system's build-in Ruby, I got a bunch of error messages like the ones shown here:
The Cajón that also doubles as a children's chair described below was a half-day project that I did together with my 3-year old twins. Obviously the kids can't be anywhere near a table saw, but they enjoyed listening to the loud noise from the garage from the safe distance of the room next door. And since this is a fairly simple project, cutting the pieces doesn't take long enought to bore them, nor long enough for them to run off and do mischief.
A few months ago I discovered the wood scraps box at The Joinery, a local manufacturer of handcrafted solid wood furniture. The Joinery makes the most beautiful high-quality furniture, but unfortunately it's pricey. The scap wood box is more in my price range: free. Below are projects made from various wood scraps found in their box. (Not shown are the various pieces of cherry and oak that serve as building blocks for Eli and Ian.)