Color detection for threads / woods

dougp:
Never checked but, there could well be a smart phone app out there which does this or could be modified. I expect it'd take more than a single thread, maybe several bunched together to make an acceptable target.

Cuts the Arduino out of the loop but I take it the object is not to utilize an Arduino but to meet a need.

.02

There are several phone apps to identify colors. None of them are particularly easy to use, nor are they very accurate - they depend on the quality of the illumination. I wanted to use one in the grocery store to determine which bananas are ripe, cause like GFS' friend, light green looks just like pale yellow to me. But even my deuteranopic eyes were better at distinguishing bananas than any of the apps!

A thread discriminator must have consistent illumination, and some way of minimizing all the light that isn't reflected off the thread. Perhaps a box, painted black on the inside, with a small hole. The thread is placed across the hole, and illuminated from an angle. This way the light that goes past the thread will not be reflected directly back out the hole.

Use white light for illumination and then filter the reflected light between the sample and the sensor. Use an IR blocking filter as well, as some textiles are highly IR reflective, which would give incorrect readings to the light sensor.

Sample three colors and overall brightness and make a simple spectrum. Then match the spectrum to a library of colors. Each color spectrum would be a long integer - the four bytes representing each color band. The exact wavelength doesn't matter, but you'd need to calibrate each filter used. An Arduino would be able to hold a few hundred different colors. The algorithm would find the closest color for any sample, so it would always come up with an answer.

This machine seems like it would be useful in a lot of applications.