由于最近做项目要使用opencv的原因,需要使用到这个功能
是要将image 转成 cv::Mat 识别
- (cv::Mat)cvMatFromUIImage:(UIImage*)image{
@autoreleasepool {
CGColorSpaceRef colorSpace = CGImageGetColorSpace(image.CGImage);
CGFloatcols = image.size.width;
CGFloatrows = image.size.height;
cv::Mat cvMat(rows, cols, CV_8UC4); // 8 bits per component, 4 channels (color channels + alpha)
CGContextRefcontextRef =CGBitmapContextCreate(cvMat.data, // Pointer to data
cols, // Width of bitmap
rows, // Height of bitmap
8, // Bits per component
cvMat.step[0], // Bytes per row
colorSpace, // Colorspace
// kCGImageAlphaNoneSkipLast |kCGBitmapByteOrderDefault // 此处有修改适配laplacian的接入色值转换
kCGBitmapByteOrder32Little|kCGIma