2
我有两个问题将我的图像(只有jpeg文件)从NSImage转换为IplImage。我的第一个问题是转换后的图像与原始图像颜色强度不一样。转换后的图像在某种程度上比原始图像更无音。
我的第二个问题是只有8/10图像完全转换,2/10图像只有部分图像会被转换。我的意思是只有图像的左上角会被转换。我希望你能理解我,我的英语不是最好的。转换NSImage到IplImage
IplImage* convert(NSImage* bild){
//converting the NSImage into an IplImage
NSBitmapImageRep *bitmap2 = [NSBitmapImageRep imageRepWithData:[bild TIFFRepresentation]];
int depth = [bitmap2 bitsPerSample];
int channels = [bitmap2 samplesPerPixel];
int height = [bitmap2 size].height;
int width = [bitmap2 size].width;
IplImage *iplpic = cvCreateImage(cvSize( width,height), depth, channels);
cvSetImageData(iplpic, [bitmap2 bitmapData], [bitmap2 bytesPerRow]);
for (int i = 0; i < iplpic->imageSize; i += 3) {
uchar tempR, tempG, tempB;
tempR = iplpic->imageData[i];
tempG = iplpic->imageData[i+1];
tempB = iplpic->imageData[i+2];
iplpic->imageData[i+2] = tempR;
iplpic->imageData[i+1] =tempG;
iplpic->imageData[i] = tempB;
}
cvSaveImage("/Users/goette/out.jpg", iplpic, 0);
return iplpic;
}
如果您张贴样本图像以显示“颜色强度”的含义,这将对您有所帮助。首先猜测是伽马校正。 – etarion 2011-05-24 13:08:39
对不起,我不能发布样本图片。我没有足够的声誉。 – 2011-05-24 13:31:32
您可以在http://imgur.com上载并在此处张贴链接。 – etarion 2011-05-24 13:50:23