gpt4 book ai didi

image - 将UIimage(拍照)转成NSData

转载 作者:行者123 更新时间:2023-11-28 08:29:13 27 4
gpt4 key购买 nike

我用这个方法拍了一张照片。

func convertImageFromCMSampleBufferRef(sampleBuffer:CMSampleBuffer) -> CIImage{
let pixelBuffer:CVPixelBufferRef = CMSampleBufferGetImageBuffer(sampleBuffer)!;
let ciImage:CIImage = CIImage(CVPixelBuffer: pixelBuffer)

if done == true {

newImage = UIImage(CIImage:ciImage, scale: CGFloat(1.0), orientation: .DownMirrored)

var imageData = UIImageJPEGRepresentation(newImage, 0.6)
var compressedJPGImage = UIImage(data: imageData)
UIImageWriteToSavedPhotosAlbum(compressedJPGImage!, nil, nil, nil)
}

return ciImage;
}

代码应该可以工作,但是变量 imageData = nil我尝试将图像转换为 PNG,但结果相同。

打印

newImage = , {720, 1280} imageData = nil

最佳答案

您必须将 CIImage 转换为 CGImage,然后将 CGImage 转换为 UIImage,然后将 UIImage 转换为 NSData。

static let context = CIContext(options:nil);
let tempImage:CGImageRef = context.createCGImage(ciImage, fromRect: ciImage.extent())
let image = UIImage(CGImage: tempImage);
let imageData: NSData? = UIImageJPEGRepresentation(image, 0.6);

关于image - 将UIimage(拍照)转成NSData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39221864/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com