混合两个图像的数学方程

时间:2017-07-25 05:13:30

标签: matlab image-processing overlay photoshop blending

我已经看过许多教程,人们在Photoshop中混合两个非常好地放在一起的图像。例如,这里有两个放在一起的图像:

enter image description here

然后在Photoshop完成一些工作后,边缘(较小的图像周围)将被删除,两个图像很好地混合。 例如,这可能是最终结果:

enter image description here

可以看出,没有边缘,两个图像非常好地混合,没有模糊。

有人能指出任何显示背后数学的文章或帖子吗?如果有一个可以做到的MATLAB代码,那就更好了。或者至少如果有人能告诉我这个词的正确用语是什么,那么我就可以在这个主题上进行谷歌搜索。

2 个答案:

答案 0 :(得分:1)

单独进行直接α混合是不够的,因为它会对两个图像进行均匀混合。

要获得漂亮的效果,您需要定义一个alpha贴图,即根据应占据主导地位的图像调整透明度的相同尺寸的图像。

要获取蒙版,您可以手动绘制,例如作为填充轮廓,作为路径或多边形。然后你必须强烈模糊这个蒙版以获得平滑的混合。

自动执行此操作看起来非常困难(如果不是不可能),因为没有任何软件可以猜出您想要增强的内容。

答案 1 :(得分:0)

您正在寻找的术语是Alpha混合。 https://en.wikipedia.org/wiki/Alpha_compositing#Alpha_blending

背后的数学归结为一些阿尔法加权和。

Matlab提供了实现此目的的函数imfuse: https://de.mathworks.com/help/images/ref/imfuse.html

编辑(因为它似乎还不清楚)

让我们假设你想要混合2张A和B图像。

您将一个图像放在另一个图像上,这样每个坐标就有2个RGB图形。 现在您需要定义两个图像的权重。您是否只能看到图像A或B的颜色或您选择混合它们的比例? 这是通过alpha值完成的。

所以你需要的是一个2d函数,它定义了每个像素的混合比。 通常你有0到1之间的值,其中0表示一个图像,1表示另一个图像,0.5将它们平均混合等等...

请阅读我已关联的文章。它为您提供了清晰的数学定义。我无法提供更多细节。

如果您在理解方面遇到问题,我建议您阅读一本关于图像处理基础知识的书。