Необходимо получить R, G, B, G2 цвета из *.CR2 (Canon 5d M II) в точке с координатами X, Y. (фотометрия процессов, нужны абсолютно никак не обработанные данные + более высокая битность замеров даст большую точность)
Стандартными средствами VS для не-RAW файлов это делается просто:
Color pixelColor=image1->GetPixel(x,y); R=pixelColor.R; G=pixelColor.G; B=pixelColor.B;
а как то же самое сделать в LibRaw? Не могу разобраться.
Дайте, пожалуйста, фрагмент кода!
//VC 2010, clr-проект. LibRaw подключается, работает
#include "libraw.h" int main(array<System::String ^> ^args){ LibRaw iProcessor; ... iProcessor.open_file(FFF); iProcessor.unpack(); printf("Image size: %d x %d\n",iProcessor.imgdata.sizes.width,iProcessor.imgdata.sizes.height); ... }
P.S. Не сишник я, но очень нужно!
Простите, пропустил ваш
Простите, пропустил ваш вопрос, отвечаю не сразу.
У цифровых камер (кроме Foveon) - каждый пиксель имеет только один цвет. Узнать какой именно (из 4-х) можно вызовом COLOR(row,col)