Click here to Skip to main content
16,016,537 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
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, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900