我正在尋找一種方法將來自相機的RAW8圖像轉換爲彩色圖像NSImage/CIImage。如何將RAW8轉換爲RGB8 NSImage
是否有框架類可以應用Bayer filter並給我一個彩色RGB圖像?
I.e.我有8bpp的字節數組,我想要一個32bpp的RGB NSImage或CIImage。
我試過CIFilter filterWithImageData但是這使Xcode停止與EXC_BREAKPOINT?
我正在尋找一種方法將來自相機的RAW8圖像轉換爲彩色圖像NSImage/CIImage。如何將RAW8轉換爲RGB8 NSImage
是否有框架類可以應用Bayer filter並給我一個彩色RGB圖像?
I.e.我有8bpp的字節數組,我想要一個32bpp的RGB NSImage或CIImage。
我試過CIFilter filterWithImageData但是這使Xcode停止與EXC_BREAKPOINT?
最後我想出了兩個解決方案:
使用的OpenCV(http://www.OpenCV.org):
CvMat M = cvMat(height, width, CV_8UC1, frame->image);
IplImage img;
cvGetImage(&M, &img);
IplImage *copyImg = cvCreateImage(cvSize(width, height), IPL_DEPTH_8U, 3);
cvCvtColor(&img, copyImg, CV_BayerBG2RGB);
但我缺少明顯的事實:我是從攝像機獲取圖像與libDC1394和提供了一種轉換方法本身:
dc1394_debayer_frames(frame, new_frame, DC1394_BAYER_METHOD_NEAREST);
爲什麼不用明顯的解決方案:ImageIO.framework can handle RAW images。
你能給我更多提示嗎?我列舉了圖像類型,並且有各種原始圖像類型(Adobe,sony)。我試圖創建一個CGImageSourceCreateWithData使用這些字符串作爲kCGImagSourceTypeIdentifierHint,但沒有運氣。 CGImageSourceCreateImageAtIndex(... 0)返回NULL,我無法查詢類型或計數等等。感覺這不能是正確的方式,因爲我沒有指定寬度/高度,bpp和實際的拜耳模式。 – msohn 2012-04-02 20:02:56