CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 3 of 3

Hybrid View

  1. #1
    Join Date
    Aug 2002
    Posts
    756

    Image recognition in C++

    Hi, ALL,
    1. You guys were very good in the past so here I'm again asking for help.
    2. I don't know if this question belongs here. If not, please don't kick me too hard. ;-)

    I have a photograph taken by the Android/iPhone camera. This photo consists of:

    a) background
    b) white paper A4
    c) human foot

    Depending on the lightning condition and the position of the camera shadow will appear on the paper.

    My task is to find where the foot is on this picture and get some parameters out of it.

    I can successfully filter out the background and get the resulting image with just a paper and the foot.
    I can successfully skip processing the paper and find where the actual foot is located.

    However I can not differentiate between the actual skin of the foot and the shadow.
    Now I know that the resulting pixel of an image is a (background pixel (op) paper pixel (op) shadow pixel | foot pixel). Problem is I have no idea what (op) is and will getting the foreground pixel will help.

    I tried googling for "image recognition c++", There are lots and lots of theoretical books of how to do the face recognition what is this algorythm and why it is preferred over that algorythm. But there is no simple: you need to find this compazre with that if they don't match you found the edge.
    If they match you need to find the foreground pixel by doing a, b and c.

    So my question is: What would be the way of finding out the foreground rgb value of pixel and will it help in my case?

    I'm not doing face recgnition which is far more hard task. This is foot, the shape is known and the position is somewhere in the middle of the paper.

    Thank you in advance for any hints.

  2. #2
    Lindley is offline Elite Member Power Poster
    Join Date
    Oct 2007
    Location
    Seattle, WA
    Posts
    10,895

    Re: Image recognition in C++

    It seems to me that the internal color variation of the shadowed region on the paper will be very low. You might be able to use this to identify and discard it. Also, it will probably correspond to the color of the paper, except scaled down in brightness. (This relationship may hold better in non-RGB color spaces, such as CIELAB or HSV).

    The color of the foot will be on a continuum from dark brown to tan, but will certainly not be gray. This can also be a disambiguator.

  3. #3
    Join Date
    Aug 2002
    Posts
    756

    Re: Image recognition in C++

    Quote Originally Posted by Lindley View Post
    It seems to me that the internal color variation of the shadowed region on the paper will be very low. You might be able to use this to identify and discard it.
    How do you calculate it? I presume it is not the same as RGB or CMYK...

    Quote Originally Posted by Lindley View Post
    Also, it will probably correspond to the color of the paper, except scaled down in brightness. (This relationship may hold better in non-RGB color spaces, such as CIELAB or HSV).
    I can convert to greyscale and work with HSV. Is that what you meant? Or just get the HSV value of the actual image pixel?

    Quote Originally Posted by Lindley View Post
    The color of the foot will be on a continuum from dark brown to tan, but will certainly not be gray. This can also be a disambiguator.
    OK, will look at it.

    Thank you.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured