Подсчет групп черных пикселей в строке двоичного растрового изображения - PullRequest
0 голосов
/ 14 сентября 2018

Я пытаюсь найти способ отображения количества черных пикселей в группах (один или несколько), разделенных белыми пикселями, в черно-белом растровом изображении.Каждый раз, когда цикл встречает белый пиксель, он должен сохранять counter в метке и сбрасывать его.Таким образом, если у меня будет группа из 5 черных пикселей, несколько белых и 3 черных снова, у меня будет 2 моих ярлыка, показывающих 5 и 3 подряд.

private void CountInRow(int NumOfRow, Bitmap bmp)
{
    int counter = 0;
    for (int i=9;i>0;i--)
    {
        if(bmp.GetPixel(i,NumOfRow)==Color.Black)
        {
            counter++;
        }
        else
        {
            //write the value of couter in a label and go to the next label
            counter = 0;
        }
    }
}

Проблема, с которой я столкнулся, заключается в том, что я не могу найти способ перейти к следующей метке, чтобы я мог записать в нее значение следующей группы.Все растровые изображения будут иметь ширину 10 пикселей.

1 Ответ

0 голосов
/ 14 сентября 2018

Таким образом, чтобы записать свое значение в метку, замените ваш комментарий следующими строками:

var name = "lab" + NumOfRow + "x" + i;
((Label)this.Controls[name]).Text = counter.ToString();

Это сохранит значение в соответствующей метке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...