BioColorCalculator

Программа для работы с цветом в биологии
 

Кратко основные функции программы:
- поиск и визуализация плашки в цветовых таблицах, наиболее похожей на указаный цвет (образец). В частности, можно моментально найти любой произвольно заданный цвет в фундаментальных таблицах Ridgway (1912) Color standards and color nomenclature, которые содержат более 1100 именованных цветов. Программа покажет название наиболее похожего цвета и его численное отличие (deltaE 2000) от образца
- работа со спектрофотометрами серии i1 (тестировали на i1Pro): измерение спектра излучения и отражения
- визуализация сохраненных спектров и вычисление различных характеристик (цвет, фотосинтетически активная радиация, индексы цветопередачи, и т.п.)
- что-то еще по мелочи

Технические моменты
- Для работы со спектрофотометрами используется библиотека Argyll. Если предполагается работать со спектрофотометром, то эта библиотека должна быть скачана и установлена, и необходимо прописать путь к папке bin внутри Argyll в Windows. На текущий момент программа тестировалась только с Argyll V2.3.1, будет ли она работать с другими версиями, мы не проверяли. Далее, чтобы Argyll мог напрямую взаимодействовать с i1Pro, надо установить драйвер. Как это сделать, описано в разделе "USB Instruments" в середине этой страницы (сложность в том, что драйвер не подписан и напрямую в лоб Windows не дает его установить). Следует помнить, что если подключен драйвер Argyll для i1Pro, то родной драйвер для i1Pro отключается, и родные программы с этим инструментом выдают ошибку. Приходится переключаться с одного драйвера на другой в зависимости от того, с чем мы работает (это легко делается в диспетчере устройств).
- Использованы алгоритмы колориметрических расчетов, разработанные Михаилом Сартаковым cielab.xyz (он является одним из крупнейших специалистов по цвету, и мы премного благодарны ему за то, что поделился исходным кодом расчетов!).
- Для работы с биологическими таблицами цветов (они же - таблицы именованных цветов или шкалы цветов, применяемые в биологии), они должны быть оцифрованы. На текущий момент оцифрованы таблицы Ridgway (1912) "Color standards and color nomenclature" (классическая работа с более чем 1100 именованными цветами) и шкала Romagnesi (цвета споровых отпечатков сыроежек). Другие таблицы нам не доступны, если кто может помочь с ними, пишите, присылайте, оцифруем, сделаем доступными для всех или можно оцифровать самостоятельно - формат файлов шкал можно посмотреть в папке с программой, он самоочевиден.

Применение
Наиболее очевидное применение - работа с таблицами именованных цветов и различными шкалами цветов. Если говорить простыми словами - хотим узнать, как называется тот или иной цвет по каталогу Ridgway (1912) "Color standards and color nomenclature" (это фундаментальная работа, в которой приведены более 1100 плашек разных цветов, каждая со своим названием, которую до сих пор используют, особенно микологи)? Указываем интересующий наc цвет (в Lab или RGB), программа определяет наиболее похожие по цвету плашки в каталоге и выдает первые две из них, название этих цветов, численные значения и численные отличия от того, что искали. Хотим определить к какому полю (плашке) на шкале наиболее близок наш образец? Выбираем нашу шкалу в выпадающем списке, и программа укажет близкую по цвету плашку (даже если цвет ни одной из них точно не совпадает с искомым).

Но изначально программа была написана исключительно для собственных нужд: для точного (а не на глазок, как это традиционно делается) определения цвета споровых отпечатков шляпочных грибов - это важный признак для их определения (остальные функции - такие как определение качества освещения, цветопередачи, которые можно использовать, например, для определения качества бытовых светодиодных лампочек - были добавлены позже просто в качестве дополнения).

Споровые отпечатки шляпочных пластинчатых грибов выглядят так:

Шляпку гриба кладем на бумагу и через некоторое время получаем отпечаток. Казалось бы, все просто и однозначно. Но у микологов все всегда сильно сложнее, чем представляется простым людям. К примеру, какого цвета представленный на фото отпечаток? Очевидный (для не миколога) ответ - он коричневый. Но у микологов коричневого цвета не бывает. У них есть шоколадно-коричневый, землисто-коричневый, ржаво-коричневый, пепельно-коричневый и миллион других, столь же невнятных названий цветов, ничего не говорящих простому человеку. Почему бы не измерить цвет (как это давно делают в полиграфии и в других отраслях, где требуется точное описание цвета) и не выдать его цифрами, причем не цифрами RGB (или, тем более CMYK - эти цифры не определяют цвет), а в Lab?

Проще всего измерить цвет ручным спектрофотометром, мы пользуемся i1Pro (который был куплен когда-то давно для калибровки мониторов). Но все оказалось не так просто. Споры по бумаге рассыпаны неравномерно, поэтому замеры в разных местах дадут разные значения. Кроме того, как оказалось, обычная офисная белая бумага на самом деле совсем не белая: она нам кажется образцом белого цвета (из-за адаптации глаз), но на деле имеет заметный синий оттенок из-за флуоресцентного красителя, который в нее вводят, чтобы бумага казалась белее белой. Спектрофотометр этот синий сразу видит. Вот, к примеру, замеры обычной офисной бумаги в числах Lab (напомним, что в Lab первая цифра, L - это светлота (0 - черный, 100 - самый светлый), a - зелено-красный канал и b - сине-желтый):

- обычная офисная бумага в один слой: L=92.8 a=1.9 b=-8.7 (слегка краснит и сильно синит, -8.7 в канале b)
- обычная офисная бумага в два слоя: L=93.3, a=2.1, b=-9.4 (чуть ярче, яркость 93, но синит еще сильнее, -9.4)
- очень белая (на глаз) толстая бумага для цветного принтера: L=95.5, a=0.7, b=-3.1 (то есть ярче чем офисная, но тоже синит, хотя и не так сильно, всего -3 )
- белый плотный беззольный бумажный фильтр: L=93.6, a=-0.26, b=4.1 (желтит!)

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

Поэтому, цвет спор было решено измерять на стекле. Методика такая: собираем споры со спорового отпечатка лезвием на тонкое покровное стекло в небольшую кучку. Диаметр зрачка спектрофотометра 4 мм, так что кучка может быть маленькой и спор надо совсем немного. Можно накрыть сверху вторым покровным стеклом (не обязательно, результаты измерений от этого не зависят). Кладем стекло со спорами на зрачок спектрофотометра как показано на фото ниже и измеряем.

Программа измеряет спектр, визуализирует его и делает ряд вычислений; для нас сейчас важен лишь цвет в цифрах Lab. Результаты программа сохраняет в файл с расширением .sp. Это обычный текстовый файл (можно открыть в блокноте, посмотреть или отредактировать, если надо). Несколько замеров можно для удобства объединить в один файл, как на скриншоте ниже:

Если требуется сравнить цвет со шкалой, которую используют для данной таксономической группы, то это можно сделать во второй вкладке. Выбираем шкалу из выпадающего списка и жмем на кнопку "Сравнить со шкалой". Программа сравнивает цвет образца с цветом каждой плашки шкалы и находит наиболее похожую плашку. Сравнение идет по алгоритму DeltaE 2000, который учитывает особенности человеческого зрения и весьма сложен (еще раз спасибо Михаилу Сартакову за исходные коды расчетов). Результат выводится в браузер и выглядит так:

Скачать можно по ссылке: xxxxx
Получить программу (бесплатно) можно написав авторам.


Copyright © 2004 - 2024 K. & N. Sanamyan. The photos from this site may not be used without written permission of their authors.