2013-07-20 5 views
-1

Мне нужно создать одиночную гистограмму серого цвета изображения PGM для проекта класса. У меня уже есть код для чтения изображения PGM. Однако я не совсем понимаю, как подсчитать уникальные значения пикселей. Мне не нужно выводить график или что-то в этом роде. Любая помощь будет принята с благодарностью!Как создать гистограмму из изображения PGM

Код для чтения PGM изображения http://sun.iwu.edu/~shelley/sie/zoo/journal/pgm.c.html

+0

Вам нужно быть более конкретным - Вы хотите, отдельные гистограммы для/компонентов/B G R , или вам нужна одна гистограмма для интенсивности или какое-то другое количество? –

+0

Я считаю, что одна гистограмма. Назначение просто говорит, чтобы вычислить гистограмму шкалы серого. – richieboy89

+0

ОК - кроме кода, с которым вы связаны, создается RGB-изображение. Если ваш входной файл имеет оттенки серого, тогда я предполагаю, что компоненты R/G/B будут иметь одинаковое значение? Если это так, вы можете просто гистограммировать один из них? –

ответ

1

псевдокода, предполагая 8 битное полутоновое изображение:

int histogram[256] = { 0 };  ; init histogram of all possible grey values to all zero 

for i = 0 to rows - 1   ; for each row 
    for j = 0 to cols - 1  ; for each col 
     p = image[i][j]   ; get pixel value 
     histogram[p]++   ; increment histogram bin 
+0

Спасибо, я думаю, это может помочь , Мне просто нужно выяснить, как это назвать. – richieboy89

Смежные вопросы