我的AVCaptureVideoDataOutputSampleBufferDelegate
方法中有图像流:
- (void)captureOutput:(AVCaptureOutput )captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection )connection;
然后我想sampleBuffer
为 C++openalrp
库提供它来识别哪些需要图像字节或原始像素数据。我应该使用什么功能以及如何转换sampleBuffer
为合适的输入类型,std::vector<char>
或者unsigned char* pixelData
?
从alpr.h
文件:
// Recognize from an image on disk
AlprResults recognize(std::string filepath);
// Recognize from byte data representing an encoded image (e.g., BMP, PNG, JPG, GIF etc).
AlprResults recognize(std::vector<char> imageBytes);
// Recognize from byte data representing an encoded image (e.g., BMP, PNG, JPG, GIF etc).
AlprResults recognize(std::vector<char> imageBytes, std::vector<AlprRegionOfInterest> regionsOfInterest);
// Recognize from raw pixel data.
AlprResults recognize(unsigned char* pixelData, int bytesPerPixel, int imgWidth, int imgHeight, std::vector<AlprRegionOfInterest> regionsOfInterest);