这个问题在这里已有答案:

我为UIImage创建了以下扩展:

extension UIImage {

func toCIImage()->CIImage?  {

    if let ciImage = CIImage(image: self) {
        return ciImage
    }
    else    {
        guard let cgImg = self.cgImage else {
            return nil
        }

        return CIImage(cgImage: cgImg)
    }
}

}

然而,这个有时也会返回nil,尽管我的UIImage是从FilterOutput(CIImage)或UIImageView.image创建的 . 我错过了什么?谢谢 .