如何应用LUT滤镜?

How to apply LUT filter?

提问人:Kamlesh Shingarakhiya 提问时间:10/24/2023 更新时间:10/24/2023 访问量:19

问:

我想在图像上应用LUT滤镜,并且我有LUT图像大小,256x16大小为256x16。它可以正常工作,LUT 图像尺寸为 512x512。我正在使用 GPUImage 框架来应用过滤器。如果您知道如何使用 GPUImage Framework 或其他方式应用 LUT 256x16 图像,请帮助我。

let lutImage = UIImage.init(named: "lut2.png") ?? UIImage()
imgPreview.image = setFilter(lutImage, image: imgPreview.image!)

public extension PlatformImageType {
    func filterWithOperation<T:ImageProcessingOperation>(_ operation:T) -> PlatformImageType? {
    return filterWithPipeline{input, output in
        input --> operation --> output
    }
}

func filterWithPipeline(_ pipeline:(PictureInput, PictureOutput) -> ()) -> PlatformImageType? {
    let picture = PictureInput(image:self)
    var outputImage:PlatformImageType?
    let pictureOutput = PictureOutput()
    pictureOutput.onlyCaptureNextFrame = true
    pictureOutput.imageAvailableCallback = {image in
        outputImage = image
    }
    pipeline(picture, pictureOutput)
    picture.processImage(synchronously:true)
    return outputImage?.fixOrientation()
}
}
iOS Swift iPhone 滤镜 GPU图像

评论


答: 暂无答案