Элемент карты цветов RGBQUAD
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой
Смещение Имя Описание
0 RgbBlue Значение синего для элемента карты цветов
1 RgbGreen Значение зеленого для элемента карты цветов
2 RgbRed Значение красного для элемента карты цветов
3 RgbReserved Ноль

 

Данные bitmap следуют сразу за картой цветов. Данные могут быть несжатые, либо же для 4- и 8-битных изображений может использоваться схема сжатия RLE.

Логически биты (и физически, при отсутствии сжатия) сохраняются построчно. Каждая строка дополняется нулевыми байтами до 4-байтовой границы. Строки сохраняются в порядке снизу вверх.

В bitmap с одним битом на пиксель каждый пиксель – единственный бит, биты упаковываются по восемь в байт. Старший бит в байте – самый левый пиксель.

В bitmap с 4 битами на пиксель для несжатого изображения в байт упакованы два пикселя, причем старший полубайт будет самым левым пикселем, и каждая строка дополняется нулями до 4-байтовой границы.

В bitmap изображениях с 8 битами на пиксель в несжатом виде один пиксель упакован в байт с дополнением каждой строки на границу 4 байт.

В bitmap изображениях с 24 битами на пиксель каждый пиксель – три байта, содержание значения синего, зеленого и красного в том же порядке. Каждая строка дополняется нулями до границы 4 байт. Именно этот формат данных используется в разрабатываемой в подсистеме выделения текстильных волокон.

 

3.2 Преобразование изображения из RGB – представления в HSB

 

Исходное изображение преобразуется из RGB – представления в HSB в случае выбора пунктов 2 либо 3 из главного меню с целью построения гистограмм цветности, яркости и насыщенности. Обрабатываемое изображение представляет собой картинку в формате BMP 24 бит. Это значит, что, согласно разделу 3.1, после заголовка файла, размером 54 байта, следует информация о строках изображения, где каждой точке изображения соответствуют 3 байта со значениями голубого, зеленого и красного цвета. Причем строки изображения выровнены по длине до границы 4 байт.

Таким образом, читая из исходного файла по 3 байта информацию о каждом пикселе можно получить значение яркости (Brightness).

В качестве значения яркости выбирается значение максимальной компоненты RGB – представления:

 

B = max(r, g, b),(3.1)

 

где r,g,b – значения компонент RGB – представления [5].

 

Исходя из полученных значений строится гистограмма яркости, которая сохраняется в файле Br_gist.bmp. Пример получаемой гистограммы предложен на рис.3.1.

 


Рис. 3.1. Гистограмма яркости изображения

 

Гистограммы сохраняются в bmp – файлах с целью улучшения визуального восприятия информации, т.к. наглядность в этом случае гораздо выше, чем у текстового представления.

Насыщенность S определяется через максимальные и минимальные компоненты RGB – представления. Насыщенность определяется относительным количеством белого, который надо добавить к полностью насыщенному цвету. Уровень белого определяется минимальной компонентой RGB – представления. Остальные две компоненты окрашивают белую подложку [5].

 

S= 1 - min(r, g, b)/max(r, g, b).(3.2)

 

Гистограмма насыщенности, пример которой представлен на рис. 3.2, сохраняется в файле Sa_gist.bmp.

 

Рис.3.2. Гистограмма насыщенности

 

Для вычисления цветности определяются сектора цветового круга, в которые данный цвет попадает. Цвет определяется большей по уровню компонентой RGB – представления. Сначала вычитается уровень белого – цвет приводится к насыщенному виду.

 

{r’, g’, b’} = {r - min, g - min, b - min}.(3.3)

 

Остается 2 ненулевых компоненты, возможные варианты соотношений между ними и цветностью представлены в табл. 3.4.

 

Таблица 3.4.

Ситуация Сектор Угол в секторе, j Цвет r’ ³ g’ 0° - 60° (g’/r’)60° j g’ > r’ 60° - 120° (r’/g’)60° 120° - j g’ ³ b’ 120° - 180° (b’/g’)60° 120° + j
Ситуация Сектор Угол в секторе, j Цвет b’ > g’ 180° - 240° (g’/b’)60° 240° - j b’ ³ r’ 240° - 300° r’/b’)60° 240° + j r’ > b’ 300° - 0° (b’/r’)60° 360° - j

 

Блок – схема данного алгоритма представлена на чертеже РТДП 5.000.003.

Следует отметить, что насыщенность лежит в диапазоне 0…1, в то время как цветность располагается на окружности (или другой топологически эквивалентной кривой). Существует ряд случаев, когда определить значение цветности с достаточной точностью невозможно. Это случаи так называемого серого цвета от черного до белого. Эти случаи характеризуются низким уровнем насыщенности [5].

Гистограмма цветности рис.3.3 сохраняется в файле Hu_gist.bmp. Кроме того, гистограммы сохраняются в текстовых файлах name.txt либо name_.txt в зависимости от выбора пункта главного меню, где name.bmp – имя исходного файла для дальнейшей обработки иными программными средствами в случае необходимости. При построении гистограмм согласно пункту 2 меню учитываются все пикселы изображения. При выборе операции “Создание H,S,B планов для точек с большой (малой) насыщенностью” при построении гистограмм учитываются лишь те точки, значение насыщенности которых соответствует задаваемым пользователем параметрам.

Гистограмма цветности в дальнейшем используется для выделения волокон на исходном изображении.

 

Рис. 3.3. Гистограмма цветности изображения

 

В случае достаточной насыщенности цвет определяется однозначно. При обработке цветных изображений данный алгоритм цветоопределения показывает достаточно высокую производительность и не уступает более сложным методам определения цветности, основанным на использовании непрерывных функций и выводящим метрики формально.

Используя полученные значения для цветности, и сравнивая их с порогом цветности можно выделить на изображении окрашенные и неокрашенные участки. Таким образом, если участок на изображении является неокрашенным, то, следовательно, не имеет дальнейшего смысла обработка данного участка на предмет определения наличия на нем окрашенных текстильных волокон.

Информация о HSB – представлении исходного изображения хранится в одноименном файле с расширением *.hsb. Дальнейшие преобразования основаны на анализе содержимого данного файла. Здесь следует отметить, что для избежания ошибок следует предусмотреть наличие на диске »25 Мбайт свободного пространства в случае проведения полного анализа изображения, т.к. для проведения манипуляций с данными программа создает ряд графических и текстовых файлов.

 



Дата: 2019-07-24, просмотров: 237.