About two years ago I started with a friend - who happen to be a color scientist as well - a series of research experiment having for goal to study projector displays and wondering if we could evaluate some of theirs properties - such as response curve and color gamut - without proper measuring device - meaning without expensive measuring devices.
Said like that I admit it doesn't sound very sexy. But that were the fun come in, it is not because it doesn't sound über cool that the approach can't be fun. Inspired by the work of other researchers where instead of using measuring devices experiments were conducted using a panel of human observers. A series of images were presented to the observers. Based on their decision, to say if pairs of color patches were identical in brightness/intensity - one made of a single gray continuous value and the second made using halftone technique - the famous response curve could be described. There is so much things you can do with the response curve but I will not pursue in that direction today.
Our idea is simple and we are not the first to have had this idea: to replace the observer by a camera, a webcam. Three simple reasons to do so: for having been several time one of the observer I know it is super annoying to be part of such experiment, mimicking an eye with a camera is a nice challenge and webcam are cheap. And not to mention that opencv is there to avoid you to loose to much time in accessing the video stream of your webcam and programming in Python is pleasant.
To be short, we are re-doing a pair single color patch comparison. One patch is a continous patch and the second halftoned. The project is called devForWebCam, it's programmed in Python and located here. The code should help to setup an experiment in order to gather data.