Shop OBEX P1 Docs P2 Docs Learn Events
Color detection. — Parallax Forums

Color detection.

GotenGoten Posts: 70
edited 2005-06-26 18:36 in Robotics
smilewinkgrin.gif·would like to know, if it is posible to recognize colors with one bs2?, I have a few sensors, but I do not know the algorithm, if someone could help me i'll be grateful.

Best Regars.

Comments

  • Jon WilliamsJon Williams Posts: 6,491
    edited 2005-06-25 19:03
    Doing it reliably is tricky -- but here's a product that can do it: http://www.parallax.com/detail.asp?product_id=30054

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Jon Williams
    Applications Engineer, Parallax
  • edited 2005-06-25 19:06
    Goten,

    You might visit www.robotroom.com. Seems that David Cook has at least experimented with building a color sensor array. You will find it listed toward the bottom of his web site, can't miss it. I'd reccommend the Taos TCS230 available from Parallax. Or you might want to look at the CMU camera as an option. You will see that David Cook gave up ever developing his project into something suitable. But at least it might give you some ideas.

    Regards,
    Michael G. Jessat
  • GotenGoten Posts: 70
    edited 2005-06-25 19:08
    so.. that's the only way to recognize color?,
    i got a irpd04 sensor, and also ir simple sensor, i guess spend US$80.00 it's to much.

    anyway if there's any other sensor or way to do it, please let me know.

    Thanks.
  • edited 2005-06-25 19:14
    Goten,

    I cannot find any datasheets for the irpd04 you mention. Are you looking at line detecting (white or black tape)? Or are you looking for a full colour spectrum detection sensor?

    Regards,
    Michael G. Jessat
  • Jon WilliamsJon Williams Posts: 6,491
    edited 2005-06-25 19:33
    Indeed, there is a very big difference between detecting black or white against the opposite background -- that has to do with level and not color spectrum. There are many low cost sensors in the QRB series that are easy to use.

    See this thread for an example: http://forums.parallax.com/showthread.php?p=518403

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Jon Williams
    Applications Engineer, Parallax
  • GotenGoten Posts: 70
    edited 2005-06-25 19:48
    Sorry, the sensor is a RBSS000INF02 infrared (i bought it on Chile (South America) at www.rambal.cl , i'm not looking for full colour spectrum detection sensor, at least green, blue and red, i know that if i need just a black and white detection sensor i could use a photoresistor or something like that.


    Best Regards.

    It's for a IEEE LatinAmerican Contest, i need a robot that could detect 3 different size, color, weight balls and grab it, and then put it into different trash cans.
  • edited 2005-06-25 20:11
    Goten,

    Sorry to say that sensor will not do colour detection. Its strictly for detecting distance from an object. You might look closer at the PACC00027924 Light to Frequency chip they offer. I have read somewhere other than the Parallax Nuts and Volt's article about adapting it to 'crude' colour detection. I think the website was taken off-line awhile ago. But, if I can find the article I will post it for you.

    Regards,
    Michael G. Jessat
  • edited 2005-06-25 20:46
    Goten,

    You might want to look at the "Basic Stamps Experiments Using the TSL230". Its available for download at www.parallax.com/dl/docs/prod/compshop/tsl230.pdf. It might provide you with more ideas concerning its use for colour detection. As I posted earlier, it would be crude at best.

    Regards,
    Michael G. Jessat
  • GotenGoten Posts: 70
    edited 2005-06-25 22:33
    Thank you very much, i'll keep searching.
  • Jon WilliamsJon Williams Posts: 6,491
    edited 2005-06-26 04:55
    You could experiment with putting a colored gel filter in front of a CdS photocell and taking a reading. Since you're just looking to identify three pimary colors and not the make-up a mixed color, this may work for you.

    This link may give you some ideas: http://www.plazaearth.com/usr/gasperi/MUX2.HTM

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Jon Williams
    Applications Engineer, Parallax
  • LarryLarry Posts: 212
    edited 2005-06-26 05:54
    I've gone the CDS route with fair success. I used some pretty good gels from the experimenters kit that came with my college wave theory book from the 1960's It had volet, blue.green , red and ultraviolet filters.

    I made three detectors with lenses from Polaroid cameras I had hacked for their sonars and used different filters with the aim of measuring the brigtness ratios between the CDS sensors. Best success was with the red and blue filters. I was able to distinguish a blue target from a red one. Green wasn't very different from blue.

    the sensor was very sensitive to changes in ambient light and would probably have needed a large table stored in eeprom to be useful in varying conditions.

    Then the CMUcam came out and I put the experiment on my museum shelf. Since then, I noticed that my TAP PLastics outlet sell some pretty good gels in large sheets.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
  • Bruce BatesBruce Bates Posts: 3,045
    edited 2005-06-26 06:48
    Goten -

    I've seen the following unusual optical assembly in this surplus catalog for years, and have always wanted to purchase one to see what could be done with it:
    http://www.mpja.com/directview.asp?product=3278+OP

    I honestly can't pass on whether it would do the kind of color detection you need, but for $5.00 US it might be fun to try and find out.

    Regards,

    Bruce Bates
  • edited 2005-06-26 13:27
    Bruce,

    That really is a neat item. I have to believe that the module is a cadmium telluride solar cell (CdTe 'p'-type semiconductor). However, unless used in a 'controlled' environment the CdTe cell would produce more variability than the CDS to ambient light.

    Regards,
    Michael G. Jessat
  • Beau SchwabeBeau Schwabe Posts: 6,560
    edited 2005-06-26 16:40
    Along the same lines as what Jon said... If you can put your sample to be color detected in a "black box", then you can sequentially
    illuminate a RED,GREEN, and BLUE led to take readings off of the CdS cell for each color.

    Note:
    If you normalize your Cds values to a "white sheet" on all three colors prior to your sample, your color matching will be more
    accurate.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Beau Schwabe

    IC Layout Engineer
    Parallax, Inc.
  • edited 2005-06-26 17:46
    Beau,

    I haven't heard the word 'normalise' used since my days working with the Simco Ramic, Inc. Chroma-Sort machines. They were manufactored back in 1990. Simco Ramic employed a similar technique using a laminated plastic strip. It had several varying shades of bright white to dark grey. You placed it under the camera and took several manual frames. Under software control this made the belt (white) invisible to the camera. The machine used high intensity lighting to illuminate the 'scan' area. I wonder if a similar approach could be used here? Using an enclosure, with a 'clear' window, place a row of high intensity white LEDS, followed by a row of matched CdS cells, followed by another row of LEDS. You would create a similar 'scanning window'. The enclosures 'clear window' would then be focused, downward, with the light shining directly on the floor ahead of the robot. All that would be left to do is 'normalise' the CdS cells in relationship to the floor, if its not some funky multicoloured material. Then place each coloured object you want to detect under the 'scanner'. All that would be left is storing the resulting value from the CdS cells in memory. These would be 'looked up' by the stamp in colour detect mode. Sort of like Simco Ramic's version of statistical colour lookup table. It was lovingly refered to by Simco Ramic techs as the S.L.U.T, I'm not joking. They had to change the name to S.T.A.C.S, I wonder why?

    Regards,
    Michael G. Jessat

    P.S. - An example of this would be 'white = 255,255,255', 'black = 0,0,0', and so on....

    Post Edited (Dobermann (Black Dog Systems, LLC)) : 6/26/2005 6:29:05 PM GMT
  • Beau SchwabeBeau Schwabe Posts: 6,560
    edited 2005-06-26 18:17
    'normalize' ? - I use this term so that you can provide a reference 0-100% or 0-255 whichever the case that is most appropriate.

    Years ago, when I worked at a prosthetic facility, I came up with a device similar to what I described above where you could place
    a "black box" sensor over a persons opposite arm or leg to determine a patients base color skin tone. From here the RGB values
    were converted into CMYK pigment values that could be added to the technicians airbrush. This method worked well for getting a
    nice base color to start with.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Beau Schwabe

    IC Layout Engineer
    Parallax, Inc.
  • edited 2005-06-26 18:26
    Beau,

    LOL, its just that I don't seem to have heard or seen the word 'normalised' used since my days with Simco Ramic colour sorting machines. It took me back 15 years ago to 1990, sort of a 'flashback' to the past. Gosh, I don't feel THAT old. Funny how the years will fly by......

    BTW, I guess my UK'isms are showing, normalise (UK) and normalize (US). I lived and worked in the United Kingdom for so many years that my grammer/spelling had to be corrected. Since I was preparing alot of documentation for Cannington College, in Bridgwater, Somerset County, England.

    Respectfully,
    Michael G. Jessat

    Post Edited (Dobermann (Black Dog Systems, LLC)) : 6/26/2005 6:55:56 PM GMT
  • Beau SchwabeBeau Schwabe Posts: 6,560
    edited 2005-06-26 18:36
    Doberman,

    It was probably about 15 years ago that I was using a sensor like that - [noparse]:o[/noparse])

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Beau Schwabe

    IC Layout Engineer
    Parallax, Inc.
Sign In or Register to comment.