在Swift(Xcode,MacOS和iOS目标)中使用GPUImage2,我成功拍摄了一张绿屏照片作为PictureInput,并将其连接到ChromaKeying滤镜和AlphaBlend滤镜。连接PictureOutput,然后处理图像并保存结果的PNG文件。结果确认,在色度滤镜之后,有一个Alpha通道可以在背景图像上正确融合。因此,所有的过滤器配置都运行良好。
Package: testtruncnorm
Type: Package
Title: What the Package Does Using Title Case
Version: 1.0
Date: 2018-10-23
Author: Your Name
Maintainer: Your Name <your@email.com>
Description: More details about what the package does. See
<http://cran.r-project.org/doc/manuals/r-release/R-exts.html#The-
DESCRIPTION-file>
for details on how to write this part.
License: GPL (>= 2)
Imports: Rcpp (>= 0.12.19), RcppTN
LinkingTo: Rcpp, RcppArmadillo, RcppTN
但是,我的目标是生成一个UIImage / NSImage(可以选择将其导出到带有Alpha的PNG文件中),该输入图像的输入图片中去除了绿色背景,并且色度滤镜添加了Alpha通道。设置很简单,但是我找不到在不丢失alpha通道的情况下将图像移出GPUImage域的方法。我怀疑使用PictureOutput.imageAvailableCallback处理GPUImage图像并返回NSImage时,它会丢失。
background --> blend
picture --> chroma --> blend --> output
我的问题是:
是否存在滤镜链或PictureOutput的其他配置,才能将Alpha通道一直带入渲染的图像?
我应该使用不同的Output方法获取渲染的图像数据,然后将其转换为NS / UIImage吗?
注意:发布后,我在GitHub上发现了一个问题讨论-https://github.com/BradLarson/GPUImage2/issues/44