Skip to content

Instantly share code, notes, and snippets.

@iosdevie
Created June 29, 2021 16:59
Show Gist options
  • Save iosdevie/d497de5996584050bea85c4871d42657 to your computer and use it in GitHub Desktop.
Save iosdevie/d497de5996584050bea85c4871d42657 to your computer and use it in GitHub Desktop.
func runCoreImage(){
let filter = CIFilter.personSegmentation()
let input = CIImage(cgImage: inputImage.cgImage!)
filter.inputImage = CIImage(cgImage: inputImage.cgImage!)
if let maskImage = filter.outputImage{
let ciContext = CIContext(options: nil)
let maskScaleX = input.extent.width / maskImage.extent.width
let maskScaleY = input.extent.height / maskImage.extent.height
let maskScaled = maskImage.transformed(by: __CGAffineTransformMake(maskScaleX, 0, 0, maskScaleY, 0, 0))
let maskRef = ciContext.createCGImage(maskScaled, from: maskScaled.extent)
self.outputImage = UIImage(cgImage: maskRef!)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment