I am colour-blind. I have always been colour-blind, and I used to think I would always be colour-blind. However, recently, I learnt that there might be a cure for it.
It all started when I found an app called “Color Blind Pal”. This app helps its users identify colours by displaying the name of the colour. It also has a filter that increases the contrast between colours. To me, the latter is more useful, however, it is not perfect. Even with the filter, I still can’t pass a colour-blindness test (though it improved my performance).
Some people think that colour-blind people see the world in black and white. That’s not what happens in a majority of cases. In most cases, such as mine, a colour-blind person cannot tell the difference between two colours (like red and green). My case is mild so I only have trouble with similar shades. I don’t find my colour blindness to be a severe impediment in my day-to-day life. However, I did have trouble titrating in school.
Taking inspiration from the Color Blind Pal app, I decided to code my own digital filter. To do this, I wrote a program using WebGL (which is a way of using a device’s GPU in a web app) to transform the RGB values of each pixel from the camera input.
Like with most digital filters, in my program, I consider the colour of a pixel to be a vector, and its transformation a matrix. I was able to find a collection of matrices that simulate colour blindness. To cure my colour blindness, I simply took the inverse of the matrix which simulated my specific condition and used it as the transformation matrix in my filter. You can try it out yourself here.