图像处理中alpha matte

 

转载文章地址。 https://blog.csdn.net/program_developer/article/details/80008604

matte在字典里的解释是不平滑的意思,matting在photoshop里面是指消除图像的背景边缘或者去掉粗糙点。把digital matting技术应用于图像,是基于这样一个概念,它认为一幅图像是由背景和前景合成的,只是在不同的区域两者参与的比例不一样,在只有背景的地方,前景的参与比例为0%;而在只有前景的地方,背景的参与比例为0%。因此我们把这个比例值定义为一个未知数alpha,即α。这样我们把图像I分割成一个前景对象图像F,一个背景图像B和一个alpha matte α,于是就有了digital matting的数学定义: I=α×F+(1-α)×B。如果再具体一点,针对每个像素,背景颜色为B=[RB,GB,BB],前景对象颜色为F=[RF,GF,BF, α](或者F=[αRF, αGF, αBF]),于是matting方程为I=F+(1-α)×B。通常在应用中都是求这个方程的解,以获得图像的最后分割结果,但如何来解这个方程呢?

解法:灰度图。令RF=GF=BF,这样就只剩下三个方程和两个未知量。

R=α×RF+(1-α)×RB  求RF
G=α×GF+(1-α)×GB 求GF

B= α×BF+(1-α)×BB  求α

Alpha matting技术在图像中的应用主要在对象提取上面,因此在这方面的研究比较多,主要是从单幅图像中提取物体对象,除了人工参与手动描出对象边界外。微软亚洲研究院Jian Sun等人根据Patrick P´erez等人2003年发表的Poisson Editing方法提出Poisson Matting ,实际上是将透明度作为图像的一种内在属性——“场”,变向地寻求其最优解。

下面举一些Alpha Matte的应用场景:

Alpha Matte 是以下面的图层为源,用上面的图层的Alpha通道做选区。

(1)如果Foreground的图片没有Alpha通道,那么它的选区就相当于整个Alpha通道为白色。白色代表作用下的图层不受影响,黑色代表作用下的图层全变透明。其他的按灰阶过渡。于是,做Alpha Matte的结果是,全部显示Foreground图层。

(2)如果Foreground的图片有Alpha通道,那么,做Alpha Matte 的结果是,通道中黑色区域作用下的Foreground图层全为透明。白色作用下的Foreground图层显示。

(3)如果我们对Foreground图层做了一个选区遮罩,这相当于我们对它施加了一个Alpha通道,选区内为白色,选区外为黑色。于是,做Alpha Matte 的结果是,选区内全显示,选区外为透明,不显示。

注意:实际情况中Alpha Matte是一个0到1之间的实数,比如说0.5的话我们可以用下面的公式计算:

 

图片来源于:

https://blog.csdn.net/sherry_gp/article/details/53453234

Reference:

http://blog.sina.com.cn/s/blog_4dfdfdc30100nbf0.html