Click here to Skip to main content
14,330,121 members
Rate this:
Please Sign up or sign in to vote.
I am trying to get max and min HSV values, but I get the same result of any picture
the result is:
H:255
S:255
V:179

I don't know what I must do to get a good result, and what the range of each component?
in Bgr each channel has max = 255

What I have tried:

private void button1_Click(object sender, EventArgs e)
        {

            Mat orig = new Mat(@"D:\pic\ SecondCamera2920.jpg", ImreadModes.Color);
            pictureBox1.Image = orig.Bitmap;
            

            using (Mat hsv = new Mat())
            {
                CvInvoke.CvtColor(orig, hsv, ColorConversion.Bgr2Hsv);
                
                Mat[] channels = hsv.Split();

                RangeF H = channels[0].GetValueRange();
                RangeF S = channels[1].GetValueRange();
                RangeF V = channels[2].GetValueRange();

                label1.Text = H.Min.ToString();
                label2.Text = S.Min.ToString();
                label3.Text = V.Min.ToString();

                label4.Text = H.Max.ToString();
                label5.Text = S.Max.ToString();
                label6.Text = V.Max.ToString();

            }
        }
Posted

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)




CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100