Rumah  >  Soal Jawab  >  teks badan

c - iOS开发中,如何从视频数据sampleBuffer中将数据转换成灰度图像数据?

项目中用到了人脸识别,目前工作是需要从摄像头中拿数据传入到人脸算法中。
现在数据我通过AVFoundation中的代理方法拿到了原始数据sampleBuffer。

- (void)captureOutput:(AVCaptureOutput *)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection *)connection
{
    
}

我如何从原始数据sampleBuffer中将数据转成算法能接收的灰度图像数据?

PHPzPHPz2715 hari yang lalu647

membalas semua(2)saya akan balas

  • PHPz

    PHPz2017-04-18 09:37:18

    CVImageBufferRef imageBufferRef=CMSampleBufferGetImageBuffer(sampleBuffer);
        
    CVPixelBufferLockBaseAddress(imageBufferRef, 0);
        
    unsigned char *ptr_image=CVPixelBufferGetBaseAddressOfPlane(imageBufferRef, 0);
        
    unsigned char* dst = (unsigned char *)malloc(sizeof(unsigned char) * 640 * 480 * 4);
        

    Antaranya, 480 dan 640 ialah lebar dan ketinggian algoritma pengecaman muka masuk, bergantung pada keperluan algoritma

    balas
    0
  • 黄舟

    黄舟2017-04-18 09:37:18

    Saya juga mengalami kaedah ini, tolong beri saya panduan.

    balas
    0
  • Batalbalas