Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Яркость пикселя

Ответить
Настройки темы
Яркость пикселя

Пользователь


Сообщения: 74
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Как нарисовать в делфи гистограмму зависимости количества пикселов от яркости для любой картинки, которую можно поместить в Image1?
В фотошопе это находиться в Image>Histograme. Мне надо сделать что-то наподобие этого. Народ, поделитесь идеями

-------
Mavlyudov


Отправлено: 00:34, 21-05-2005

 

Старожил


Сообщения: 401
Благодарности: 10

Профиль | Отправить PM | Цитировать


выкопал лабу (кому-то из друзей делал) в свое время было написано для Turbo Pascal 7.0 for DOS
(в то время Delphi в институтах не учили )
Код: Выделить весь код
program Histogram;

uses Crt;

const
  xmax = 100; ymax = 100; {размер картинки}
  colormax = 65535; {для 16-битной картинки}
  histomax = 640; {количество столбцов гистограммы, выводимой в режиме 640х480}

var
  image: array[1..xmax, 1..ymax] of word; {для 16-битной картинки}
  h: array[1..histomax] of integer;
  x, y: integer;
  a: real;
  k: real;

begin

  {здесь загрузка картинки в массив image}

  k := histomax / colormax; {коэффициент пересчета из цвета в гистограмму}

  for x := 1 to xmax do begin
    for y := 1 to ymax do begin
      a := image[x, y] * k; {приводим цвет к столбцам, здесь же можно превратить "цвет" в "яркость"}
      Inc(h[round(a)]); {прибавляем к соотв. столбцу}
    end;
  end;

  {здесь прорисовка результатов}

end.
предполагается что картинка - 16 бит градаций серого, т.е. это только общая идея, без выделения яркости и разбивки на цвета...
или вам нужен был именно алгоритм превращения номера цвета в яркость?..

-------
Успехов.


Последний раз редактировалось aESThete, 21-05-2005 в 09:54.


Отправлено: 09:41, 21-05-2005 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для hasherfrog

Старый параноик


Сообщения: 2423
Благодарности: 85

Профиль | Отправить PM | Цитировать


>> гистограмму зависимости количества пикселов от яркости для любой картинки
Сбивает с толку слово "зависимости". Скорее "распределения", да?

Яркость определяется компонентами R, G, B. Возможно, каждая компонента даёт не треть, а какое-то (пропорциональное) количество к яркости - тут я не очень большой знаток. Определяем всю шкалу как 0 - 255*3. Делим её, скажем, на 100 частей. В пределах одного процента получится 7.68 единицы. делаем массив из 100 ячеек, прогоняем для каждой точки картинки h[((R+G+B)*100)/768)]++; Ну а потом надо просто отстроить график.
Кстати, компонента A (прозрачность) также может влиять на яркость, наверное...

Отправлено: 23:45, 29-05-2005 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Яркость пикселя

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Не работает функциональная кнопка яркость (+/-) на Sony VAIO Petya V4sechkin Ноутбуки 313 23-01-2022 11:01
Debian/Ubuntu - [решено] Контролировать яркость экрана Artem-Samsung Общий по Linux 7 15-11-2010 16:37
Как найти максимальные и минимальные координаты искомого пикселя Не флужу AutoIt 3 16-08-2009 03:08
Разное - Яркость монитора mr.crowley999 Microsoft Windows 7 2 19-05-2009 22:06
Как узнать размер пикселя? SASHA 333 Программирование и базы данных 3 20-03-2005 20:19




 
Переход