Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.20;
Скачать: CL | DM;

Вниз

Яркость и формат цвета   Найти похожие ветки 

 
VasRog   (2004-11-06 21:24) [0]

Нужна помощь в следующих вопросах:
1.  Как определить яркость пиксела для цветного/ монохромного изображения.
2.  Как из файла картинки извлечь информацию о ее размере и формате цвета (RGB, HSV итд.)
 Буду крайне признателен за любую оказанную помощь.


 
debuger ©   (2004-11-06 22:03) [1]

>> Как определить яркость пиксела для цветного/ монохромного изображения.
Покорректней вопрос пожалуйста. Первый ответ: Взять и посмотреть.

>> Как из файла картинки извлечь информацию о ее размере и формате цвета.
Какой файл с картинкой? : moricons.dll - там много картинок (маленьких, их еще иконками называют), или *.bmp - одна картинка и большая, а если анимированный .gif - то...

Еще раз: сделайте немного корректней постановку вопроса, если на такую, которая есть вам ответят - я буду слегка поражен.


 
VasRog   (2004-11-07 00:13) [2]

2.  Форматы файлов: bmp, jpg, tga, ico, tiff.
 1.  Ну вот например у меня есть картика jpg и мне нужна яркость n-ного пиксела. Как мне ее найти?


 
Jel ©   (2004-11-07 07:26) [3]

Для получения яркости пиксела можно воспользоваться весовыми коэффицентами цвета, принятыми в телевидении.

 Gray = R * 0.3 + G * 0.59 + B * 0.11

Для того, чтобы воспользоваться этой формулой понадобится информация о цвете n-ого пиксела.

Для извлечения информации о размерах картинки смотри описание конкретного формата.


 
VasRog   (2004-11-07 13:08) [4]

Подскажите пожалуйста где бы эти описания надыбать.


 
debuger ©   (2004-11-07 15:01) [5]

google


 
VasRog   (2004-11-07 17:13) [6]

почитал описания для bmp-формата,  но не понятно как мне использовать эти данные.  Вот например отрывок:
typedef struct tagBITMAPINFOHEADER
dword biSize;  //число байт, занимаемых структурой
   //BITMAPINFOHEADER
dword biWidth; //ширина битового образа в пикселах
dword biHeight; //высота битового образа в пикселах
word biPlanes; //число битовых плоскостей устройства
word biBitCount; //число битов на пиксель
dword biCompression; //тип сжатия
dword biSizeImage; //размер картинки в байтах
dword biXPelsPerMeter;//горизонтальное разрешение устройства,
   //пиксел/м
dword biYPelPerMeter; //вертикальное разрешение устройства,
   //пиксел/м
dword biClrUsed; //число используемых цветов
dword biClrImportant; //число "важных" цветов
BITMAPINFOHEADER;

Приведите пожалуйста хотя бы маленький пример использования этих данных. Например, как мне высоту и ширину изображения использовать.


 
Mihey_temporary ©   (2004-11-07 17:46) [7]


> Подскажите пожалуйста где бы эти описания надыбать.


Если ты будешь определять цвета, то всё равно надо бы загрузить эту картинку в TBitmap или что-нить другое, но так, чтобы независимо от того, JPEG ли это или что другое, был бы растр - массив пикселей.


 
VasRog   (2004-11-07 18:38) [8]

Да вот дело в том,  что мне нужно яркость пикселей определить, но ни форма, ни TBitmap  мне не нужны т.к.  не нужено визуальное наблюдение за картинкой.  Вот я и не знаю как это сделать.  Думал может через формат файла.


 
Mihey_temporary ©   (2004-11-07 20:12) [9]

Так непонятно, в чём проблема. Яркость пикселя загруженого растра ты можешь определить? Решение тебе уже дали, в том числе [5]. Яркость можешь определить, сконвертировав RGB в HSB, где B = Brightness. Далее. Ты планируешь загружать разные форматы, значит, нужна библиотечка либо библиотечки для загрузки этих форматов. Заходишь на www.torry.net, ишешь, что больше всего подходит. Вот и всё.


 
VasRog   (2004-11-08 22:04) [10]

Вот просмотрел еще раз формат bmp.  И не содержит он формата
   цвета (RGB,  HSB).  Подскажите пожалуйста как ее определить.


 
Jel ©   (2004-11-08 22:33) [11]


> VasRog   (08.11.04 22:04) [10]

Формат цвета в BMP всегда RGB. Цвет может быть индексированным (используется палитра) или нет. В любом случае нужно плясать от количества битов на пиксел. Если <= 8 - используется палитра, то есть вместо значений составляющих цвета используются индексы в палитре, а сами составляющие цвета хранятся в палитре. При 16 битах на пиксел может быть использован формат 555 и 565 то есть из 16 бит, отведенных на цвет 5 бит для R и т.д. При 24 и 32 битах на составляющие цвета отводится по одному байту. Лишний байт использется для Альфа-канала.

Формат HSB не ищи, не найдешь - есть HSL



Страницы: 1 вся ветка

Текущий архив: 2005.02.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.036 c
1-1107357716
Zuzya Penkin
2005-02-02 18:21
2005.02.20
Подсветка синтаксиса


4-1105357078
Norny
2005-01-10 14:37
2005.02.20
Изменение обоев Рабочего стола


4-1105121060
Oddin
2005-01-07 21:04
2005.02.20
Процессор


14-1107348317
Adil
2005-02-02 15:45
2005.02.20
CD


3-1105134573
Zlod3y
2005-01-08 00:49
2005.02.20
Проверка в триггере на not null





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский