实时抠图的一点经验

来源:互联网 发布:mac抹掉磁盘重装系统 编辑:程序博客网 时间:2024/06/05 06:00

最近接手开发一个需要实时处理人物图像的软件功能, 参考了网络上一些贴子. 基本上搭建单色背景环境进行拍摄, 主要是蓝色或者绿色, 然后实时抠除单色背景图并进行合成新图像.

理论上单色背景其颜色的RGB值是一样的, 抠除一个RGB颜色值是相当容易的.  实际上因为灯光还有物件阴影问题,  采集到的图像背景颜色差异还是比较大的.  一开始想设定一个单色RGB值范围, 图像中像素值只要在此RGB值范围就抠除, 但需要注意的是一定要保证在蓝或绿背景中B和G值是最大的, 大概要比其它两值大30左右( 经验值 ), 已避免RGB三值比较接近时也被认为是蓝或者绿色抠除.  此方法与采用HSI方法大同小异, 不过在处理效率方面大约能提高一倍. 在一张600*800的图像采用像素RGB值判断抠除并和指定背景合成时间约为150MS, 而采用HSI处理需要350MS.  这两种方法不能完全精准抠出单色背景中的物件, 但基本也还能接受.  另外抠图还有一种方法叫"边缘检测法",  此方法需要经过大量数学计算, 处理图像应该能够更精准, 不过面对于实时上效率上是很难达到要求.