Macos 如何从CVImageBufferRef类型(OSX)的每个像素获取信息

Macos 如何从CVImageBufferRef类型(OSX)的每个像素获取信息,macos,image,buffer,pixel,isight,Macos,Image,Buffer,Pixel,Isight,我试图从QT电影的各个帧中提取像素数据 我想我需要使用CV,因为QTKit和NSImage会 太慢了 我需要比较缓冲区(CVImageBufferRef)中包含网络摄像头(iSight)当前帧的图像的每个像素。 所以我需要速度 对不起,我的英语不好,我是意大利人。请看问题中的代码,这是一个更大的问题,但涉及相同的问题。以下是您需要的基本代码(来自该问题的OP): 请务必阅读已接受的答案,以便对数据格式进行更全面的解释 CVImageBufferRef imageBuffer = CMSample

我试图从QT电影的各个帧中提取像素数据

我想我需要使用CV,因为QTKit和NSImage会 太慢了

我需要比较缓冲区(CVImageBufferRef)中包含网络摄像头(iSight)当前帧的图像的每个像素。 所以我需要速度


对不起,我的英语不好,我是意大利人。

请看问题中的代码,这是一个更大的问题,但涉及相同的问题。以下是您需要的基本代码(来自该问题的OP):

请务必阅读已接受的答案,以便对数据格式进行更全面的解释

CVImageBufferRef imageBuffer = CMSampleBufferGetImageBuffer(sampleBuffer); 
/*Lock the image buffer*/
CVPixelBufferLockBaseAddress(imageBuffer,0); 
/*Get information about the image*/
uint8_t *baseAddress = (uint8_t *)CVPixelBufferGetBaseAddress(imageBuffer); 
size_t bytesPerRow = CVPixelBufferGetBytesPerRow(imageBuffer); 
size_t width = CVPixelBufferGetWidth(imageBuffer); 
size_t height = CVPixelBufferGetHeight(imageBuffer); 

/*We unlock the  image buffer*/
CVPixelBufferUnlockBaseAddress(imageBuffer,0);