I was heading towards a Summer of George, with full autonomy and empty schedules, but like all Summers of George, this one ended before it started. Due probably to a lack of self esteem on my part, I abruptly ended up with two opportunities of a lifetime at the end of the semester. I don’t need to wait until the end of summer to retrospectively observe that I made a rookie mistake here by not choosing between them.
This summer, I’m writing a computer vision library for pygame via One Laptop Per Child via Google Summer of Code. The admittedly terse and vague project description is at Google Code. This is the culmination of the comparatively primitive vision experiments I’ve been documenting on this website (or is it the culmination like the tip of an iceburg?). Anyway, the plan is to start with adding v4l2 support to pygame, pulling frames from the camera buffer as surfarrays. Next up is adding any vision functions to pygame.transform that could be useful for gaming purposes: connected components, thresholding, centroids, optical flow, convolution, etc (I’m taking requests, if there is something else you want). Finally, I’ll make a simple example program that uses as many of the functions as possible. Apparently a lot of people are interested in using webcams in pygame, so this should be a good project. I’m also going to learn probably more than I ever wanted to about v4l2 drivers, python, and matrix operations.
This summer, I’m also doing tech consulting with the Ministry of Health in Palau via Tech Consulting in the Global Community, a program of TechBridgeWorld. I don’t yet know the full details of what my colleague and I will be doing, but we will be helping several people in Palau use technology to solve their problems in a way that is sustainable in the long term (awkwardly bludgeoning buzzwords). This consulting happens to take place in one of the most beautiful countries in the world. This consulting also happens to take place in a country with less bandwidth than the average dorm room.
Until then, I’m decompressing as much as possible for the time wedged between school and life.