Android平台Camera实时滤镜实现方法探讨(三)--通过Shader实现YUV转换RBG

本文探讨了在Android平台上,如何使用Shader将相机预览数据YUV420sp格式转换为RGB。通过将Y、UV通道分别处理,并在GLSL shader中进行转换。由于Android默认提供的是packed格式的YUV,不同于planar格式,因此在数据绑定时需要注意。文中还提到了其他实现方法,如双通道和单通道转换,并提供了相关代码示例。
摘要由CSDN通过智能技术生成

文章例如该链接通过将YUV分成三个纹理,在shader中取出并且经过公式变换,转换成RGB。我尝试了下,显示的是灰色的,可能是这篇文章采用的是planar格式的YUV,与Android平台的packed格式的YUV不同,因此需要在纹理绑定处进行数据指针的修改


之前在一篇13年北大硕士的论文基于android平台实时滤镜的设计与实现中提出了一种实现方法,采用双通道,将Y通道与UV通道分别贴图。网上也有单通道经过一些转换再转换的方法ÿ

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值