如何使用 GPUImage 框架将图像卡通化?
How to cartoonize images using GPUImage framework?
我正在尝试通过组合来自 GPUImage 框架 的多个滤镜来创建卡通效果,但结果并不理想。我已经阅读了所有关于卡通化或卡通化图像的问题,但它们都是旧的,实际上没有代码示例的答案。所以如果可能的话,有人可以帮我解决这个问题。
我的代码如下:
var picture:PictureInput!
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
// Filtering image for display
picture = PictureInput(image:UIImage(named:"girlFace.png")!)
DispatchQueue.main.async {
self.doFilter()
}
}
private func doFilter() {
// to soften
let sharp = UnsharpMask()
sharp.blurRadiusInPixels = 30
sharp.intensity = 8
// to give oil paint look
let kuwahara = KuwaharaFilter()
kuwahara.radius = 6
picture --> sharp --> kuwahara --> renderView
picture.processImage()
}
but I want something like or near to
所有答案,想法都可以接受。
嗨,编码员 ACJHP 理解你的问题,
首先是为什么不使用 ToonFilter,然后应用 KuwaharaFilter,它可能会起作用。
但是看到你的最终图像输出,我确信这可以使用 AI 和 coreMl 模型来完成。
对于你的输出,你可以看到这个 link - https://blog.prismalabs.ai/diy-prisma-app-with-coreml-6b4994cc99e1
对于 coreml 模型,使用此 link - https://likedan.github.io/Awesome-CoreML-Models/
这里可以直接下载模型使用。
希望这对您有所帮助
我正在尝试通过组合来自 GPUImage 框架 的多个滤镜来创建卡通效果,但结果并不理想。我已经阅读了所有关于卡通化或卡通化图像的问题,但它们都是旧的,实际上没有代码示例的答案。所以如果可能的话,有人可以帮我解决这个问题。
我的代码如下:
var picture:PictureInput!
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
// Filtering image for display
picture = PictureInput(image:UIImage(named:"girlFace.png")!)
DispatchQueue.main.async {
self.doFilter()
}
}
private func doFilter() {
// to soften
let sharp = UnsharpMask()
sharp.blurRadiusInPixels = 30
sharp.intensity = 8
// to give oil paint look
let kuwahara = KuwaharaFilter()
kuwahara.radius = 6
picture --> sharp --> kuwahara --> renderView
picture.processImage()
}
所有答案,想法都可以接受。
嗨,编码员 ACJHP 理解你的问题,
首先是为什么不使用 ToonFilter,然后应用 KuwaharaFilter,它可能会起作用。 但是看到你的最终图像输出,我确信这可以使用 AI 和 coreMl 模型来完成。
对于你的输出,你可以看到这个 link - https://blog.prismalabs.ai/diy-prisma-app-with-coreml-6b4994cc99e1
对于 coreml 模型,使用此 link - https://likedan.github.io/Awesome-CoreML-Models/
这里可以直接下载模型使用。 希望这对您有所帮助