Вернуться наверх
aco.ifmo.ru photonic
вернуться в оглавление предыдущая глава предыдущий параграф следующий параграф следующая глава


Яркостный срез

С использование яркостного среза изображения, можно выделить те его участки, где яркость соответствует выделенному интервалу. При этом остальные участки можно полностью "погасить" (имеют яркость, соответствующую уровню черного) или оставить неизменными. Перемещая выделенный интервал по яркостной шкале и изменяя его ширину, можно детально исследовать содержание картины.

а) б)

Рис. 1. Функции препарирования типа яркостный срез

Для выполнения яркостного среза lookup-таблица может быть подготовлена следующим образом:

void BrightnessShearing(IplLUT* lut, int shear, int width, int type)
// int shear - значение яркости среза
// int width - ширина среза
// int type - тип среза

{
    lut->interpolateType = IPL_LUT_INTER; // режим интерполяции
    lut->num = 4; // количество ключевых значений
    lut->key[0] = 0;
    lut->key[1] = shear - width / 2;
    lut->key[2] = shear + width / 2;
    lut->key[3] = 255;
    lut->factor[0] = type;
    lut->factor[1] = 0;
    lut->factor[2] = type;
    lut->value[0] = 0;
    lut->value[1] = 255;
    lut->value[2] = 0;
}