Композиция QC, которая преобразует черные и белые пиксели в два других цвета
Я только начинаю узнавать о Quartz Composer, и первое, что я хотел бы создать, - это композиция, которая в конечном итоге может быть использована в приложении Cocoa, которое будет принимать черно-белое изображение и два NSColor и менять черные пиксели на NSColor #1 и белые пиксели для NSColor #2.
Я провел некоторое время, играя с QC, но не могу понять, как собрать все части вместе.
О единственной вещи, которую я понял, это то, что мне нужно использовать шаблон Image Filter, и я вижу, что есть патч Image Pixel, который может получать пиксели из изображения... однако я не вижу патча для установки пиксели. Также кажется возможным, что исправление Pixellate может быть необходимо... хотя, мне не нужно беспокоиться о том, что оно создает изображение с бесконечными размерами, поскольку мои исходные изображения будут иметь только изображения PNG фиксированного размера.
1 ответ
Посмотрите на False Color
патч - он берет изображение и переназначает его с парой цветов.
На самом деле, так как False Color
patch - это просто обертка вокруг фильтра Core Image с тем же именем (CIFalseColor
), вы могли бы сделать это без участия Quartz Composer - просто установите и примените CIFilter
экземпляр вашего NSImage.
Отредактируйте или напишите свой собственный фильтр Core Image, начиная с чего-то вроде этого:
kernel vec4 remapBasedOnRed(sampler image,__color colorForDark,__color colorForLight)
{
return mix(colorForDark,colorForLight,sample(image, samplerCoord(image)).r);
}
... который принимает яркость красного канала входного изображения (sample(image, samplerCoord(image)).r
) и использует его в качестве коэффициента для линейной интерполяции между colorForDark
а также colorForLight
,