Попытка сравнить значения интенсивности из растрового массива с использованием C ++ - PullRequest
0 голосов
/ 11 мая 2018

ЦЕЛЬ:

Код сравнивает интенсивности в каждом элементе массива, который содержит битовую карту оттенков серого .

Сканирует поле слева направо, сверху вниз.

ПРОБЛЕМА:

У меня возникла проблема, связанная с переходом прямо к разделу оператора if.
Я распечатывал значение пикселя каждый раз, и оно 255.

У меня возникают проблемы при сравнении значений в растровом массиве с целочисленным значением.

КОД:

   int threshold = 100;
   // This loop goes column by column from the right edge
   // until the left edge of the box
  iCol = leftbox;
    while (iCol <= RightBox)   
    {
            //starts at the top of the box for every iteration
    iLine = TopBox;
          // This loop goes line by line from the top of the box to the         
          bottom
    while (iLine <= BottomBox)
    {
        index1 = (ImageY - iLine)* ImageX + iCol;
        index1 *= 4;
        pixel = (int)(arrImage2[index1]);
        if (pixel > threshold)
        {
            toppixels[iCol - LeftBox] = iLine;
            iLine++;
            break;
        }   
        iLine++;
          }
            iCol++;
         }
...