как получить значение HSV из изображения - PullRequest
0 голосов
/ 04 мая 2019

Я пытаюсь получить значение каждого канала в HSV, RGB и YCrCb Я не знаю, является ли мой ответ истинным или ложным. Каков диапазон любого канала

        Mat orig = new Mat(@"D:\more-pic\m1.jpg", ImreadModes.Color);
        pictureBox1.Image = orig.Bitmap;
        Image<Bgr, byte> finalimg = new Image<Bgr, byte>(orig.Width, orig.Height);
          Image<Bgr, byte> finalimg1 = new Image<Bgr, byte>(orig.Width,    orig.Height);
           using (Mat hsv = new Mat())
           {
            CvInvoke.CvtColor(orig, hsv, ColorConversion.Bgr2Hsv);
            hsv.CopyTo(finalimg);
            pictureBox2.Image = finalimg.Bitmap;
            Mat[] channels = hsv.Split();

            RangeF H = channels[0].GetValueRange();
            RangeF S = channels[1].GetValueRange();
            RangeF V = channels[2].GetValueRange();
            label1.Text = "H.Min: " + H.Min.ToString();
            label2.Text = "S.Min: " + S.Min.ToString();
            label3.Text = "V.Min: " + V.Min.ToString();

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