にいくつかの操作を実行CVPixelBufferRef
して、cv::Mat
- 関心領域に切り抜く
- 固定寸法にスケーリング
- ヒストグラムを均等化
- グレースケールに変換 - ピクセルあたり 8 ビット (
CV_8UC1
)
これを行う最も効率的な順序はわかりませんが、すべての操作が open:CV マトリックスで使用できることはわかっているので、変換方法を知りたいです。
- (void) captureOutput:(AVCaptureOutput *)captureOutput
didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer
fromConnection:(AVCaptureConnection *)connection
{
CVPixelBufferRef pixelBuffer = CMSampleBufferGetImageBuffer(sampleBuffer);
cv::Mat frame = f(pixelBuffer); // how do I implement f()?