Ios 更改参数KCIIInputSharpnessKey

Ios 更改参数KCIIInputSharpnessKey,ios,swift,xcode,core-graphics,ciimage,Ios,Swift,Xcode,Core Graphics,Ciimage,为什么在我更改KCIIInputSharpnessKey时应用程序会停止 var filters: [String : Float] = [ kCIInputSharpnessKey : 0.4 ] let filter: CIFilter init(image: UIImage) { self.image = image filter = CIFilter.init(name: "CIColorControls")! } func sharpness(n: Fl

为什么在我更改KCIIInputSharpnessKey时应用程序会停止

var filters: [String : Float] = [
    kCIInputSharpnessKey : 0.4
]

let filter: CIFilter

init(image: UIImage) {
    self.image = image

    filter = CIFilter.init(name: "CIColorControls")!
}

func sharpness(n: Float) {
    filters[kCIInputSharpnessKey] = n
}

func getImage() -> CIImage? {
    let coreImage = CIImage(image: image)

    filter.setValue(coreImage, forKey: kCIInputImageKey)

    for (key, value) in filters {
        filter.setValue(value, forKey: key)
    }

    return filter.outputImage
}
错误消息:

***由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:“[setValue:forUndefinedKey:]:此类不符合密钥输入清晰度的键值编码。”


什么类型是
过滤器
?它是CIFilter。并非所有过滤器都有
KCIIInputSharpnessKey
输入参数。您是否检查了输入参数?它没有名为
inputSharpness
(=
KCIIInputSharpnessKey
)的参数。