заморочки с пикселями
в общем, задача следующая: есть файл (jpg или tiff), нужно узнать цвет заданных пикселей. очень желательно, чтобы при этом учитывалось цветовое пространство, вшитое в этот файл.
пробовал решать в лоб: через адобовский ActionScript (который суть javascript со специфическими доворотами) открывать из-под фотошопа, но столкнулся с поразительным ньюансом - у фотошопа нет программных средств по определению цвета заданного пикселя. например, даже когда action вручную записываешь, и тыкаешь в изображение пипеткой, то пишется событие смены основного цвета (или фона), но нет никаких данных о координатах, из который цвет был прочитан. то есть, из экшенов тоже не вывернешься.
потом полез в Corel Photopaint. там есть фукнкция GetPixelColor, но чертов фотопаинт некорректно переводит цвет из одного пространство в другое, то есть мне надо результат в Lab, а результаты функции отдаются всегда в RGB. пытаюсь перевести цвет в Lab - он мне возвращает, например, в компоненте L числа, бОльшие 100, хотя этого быть не может в принципе.
в общем, если есть какой-то софт, позволяющий автоматизировать чтение цветовых данных из нескольких сотен пикселей одной картинки, поделитесь названием. очень буду признателен.
кстати, вопрос #2. как правильно сравнивать цвета? ведь в любой модели значение цвета складывается из нескольких компонент. если их тупо суммировать, то совершенно разные цвета могут дать одну и ту же сумму. а задача - определить, насколько цвета близки друг к другу. точнее, из более-менее однотонного квадрата пересчитать пиксели, резко отличающиеся от общего тона. ну и вычислить значение усредненного тона тоже.
в общем, такие вот задачки. гугль ничего определенного не говорит.
|