When I interned at a lighting company, I saw how much trouble people had identifying bulbs. Especially older bulbs with dated styles, it can be hard to figure out what the size, shape, style, brand, base and technology of your bulb is without a label or an easy reference. Worse, so many bulbs just have cryptic codes on the base, where googling won't return results. And what a pain it is to have the wrong kind of bulb! They might not fit in the base or burn out early, their light might be the wrong kind of brightness or shade - even the bulb itself might be a weird shape, which in an exposed fixture, looks ridiculous.
Whatsthatbulb is powered by a convolutional neural network trained on over thirty different categories of light bulbs. This is a new kind of machine learning called "deep learning" which is starting to approach human performance in image recognition problems. This website uses TensorFlow for the implementation.
Every time someone submits a photo of a bulb, it gets added to our database. This is a slow process, and right now, involves a lot of semi-automated image sorting. When I was just getting started, I built the data set manually, one photo of a lightbulb at a time - for tens of thousands of photos. Talk about tedious! Now, user submitted photos are added to the horde, providing more valuable real-world examples of light bulbs people can't identify. All of this becomes training data that helps teach the neural network what's what.
This whole site is a one-man project - when I was finishing my Master's, I became interested in image recognition, and started learning about neural networks. After I had a working prototype, I started to think about ways to share it. I had only ever done static web design before, but I started playing with Django, and pretty soon I had a working web app.
The site is powered with Django, a Python web framework, and hosted on Python Anywhere. I love Python Anywhere as a hosting service, since it makes it relatively easy to set up, but still powerful and flexible enough to be the backend of anything from a pet startup project to an industrial site.
I started this site in 2017, and officially launched in October of that year. Throughout, I've been gathering more data, improving the amount of inputs on each category. I've also been experimenting with different neural network architecture and structures. All this leads towards incremental progress accurately identifying bulbs.