Итерация по 2D массиву блок за блоком в C++

Я работаю над домашним заданием по программе уменьшения изображения на C++. Моя картинка представлена двумерным массивом пикселей; каждый пиксель - это объект с членами "красный", "зеленый" и "синий". Для решения задачи я пытаюсь получить доступ к двумерному массиву по одному блоку за раз, а затем вызвать функцию, которая находит среднее значение RGB каждого блока и добавляет новый пиксель в уменьшенный массив изображения. Размер каждого блока (или масштабный коэффициент) вводится пользователем.

В качестве примера представьте себе двумерный массив из 100 элементов типа myArray[10][10]. Если пользователь введет коэффициент уменьшения 3, мне нужно будет разбить его на мини двумерные массивы размером 3 на 3. Мне не нужно учитывать переполнение, поэтому в данном примере я могу игнорировать последнюю строку и последний столбец.

2D Array

У меня написана большая часть программы, включая функцию для нахождения среднего цвета. Я запутался в том, как обойти двумерный массив. Я знаю, как последовательно проходить через двумерный массив (по одной строке за раз), но я не уверен, как получить маленькие квадратики внутри массива.

Любая помощь будет очень признательна!

7
задан Bill the Lizard 19 September 2012 в 16:24
поделиться