AE 特效 ChromaKeyEffect

ChromaKeyEffect 是色度抠像 它把接近指定颜色的像素抠成透明,并压掉前景边缘上的溢色。默认键色是纯绿(0, 1, 0)。摄像头抠像和剪辑里的kChromaKey都走这个类。

抠像只比较颜色的色度,不看亮度。键色和每个像素都乘同一套 YUV 矩阵,取其中两个色度分量算距离。周围 4 个像素的距离按 2 倍权重和中心一起平均,用来减少噪点。

距离减去相似度后得到baseMask:

相似度(默认 150,着色器里除以 1000 得到 0.15):距离小于它的像素 alpha 变成 0,也就是被抠掉。越大,抠掉的颜色范围越宽。

平滑度(默认 70,即 0.07):从完全透明过渡到不透明的宽度。saturate(baseMask / smoothness)再做 1.5 次方后乘到原 alpha 上。

溢色抑制(默认 300,即 0.30):靠近键色的像素按亮度去饱和,把绿边、蓝边收掉;离键色越远,越保留原来的颜色。

三个数值范围都是 1–1000,传入着色器前除以 1000。

边缘还有两步,默认都是 0,不启用:

边缘收缩(0–10 像素):沿 16 个方向取周围 alpha 的最小值,把前景边缘往里啃一圈,去掉残留的键色边。

边缘羽化(0–10 像素):只对 alpha 做可分离高斯模糊,颜色仍用抠像前的结果。两者都开时,先收缩再羽化。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容