我正在尝试将CIEdgeWork过滤器应用于我的inputImage,并将过滤后的图像放入myImage(这是一个UIImageView)。我没有得到任何结果(只是一个空白的屏幕)。这个相同的样式代码适用于其他过滤器,如CIEdges。谁知道我做错了什么?在ios10设备上进行测试。
let context = CIContext(options: nil)
if let edgeWorkFilter = CIFilter(name: "CIEdgeWork") {
let beginImage = CIImage(image: inputImage)
edgeWorkFilter.setValue(beginImage, forKey: kCIInputImageKey)
edgeWorkFilter.setValue(3.0, forKey: kCIInputRadiusKey)
if let output = edgeWorkFilter.outputImage {
if let cgimg = context.createCGImage(output, from: output.extent) {
let processedImage = UIImage(cgImage: cgimg)
myImage.image = processedImage
}
}
}
答案 0 :(得分:3)
找到解决方案,将图像的背景颜色设置为白色以外的其他颜色。