图像处理操作有一些组件,如减法、合并、获取差异等。试想一下,我们有两个图像,并希望将它们彼此相减。并且此操作生成结果图像。现在,如果我想通过添加图片 2 和结果图像来制作图片 2,我不能这样做。我用过Afroge.NET、openCV、magick等组件,结果一模一样!所以我认为我的算法有问题......
如何合并结果图像和图片 1 以制作图片 2?
先谢谢了。
更新
此图像是减去两个图像并使用 JPEG 保存的结果:
大小为 77 kb
图像处理操作有一些组件,如减法、合并、获取差异等。试想一下,我们有两个图像,并希望将它们彼此相减。并且此操作生成结果图像。现在,如果我想通过添加图片 2 和结果图像来制作图片 2,我不能这样做。我用过Afroge.NET、openCV、magick等组件,结果一模一样!所以我认为我的算法有问题......
如何合并结果图像和图片 1 以制作图片 2?
先谢谢了。
更新
此图像是减去两个图像并使用 JPEG 保存的结果:
大小为 77 kb
如果您可以发布一些代码以及用于减法的原始图像对,那就太好了。
通常,单独的直接减法不会给你结果。您必须获取两个图像之间的差异,然后计算差异的大小,并构建另一个图像,如果大小大于 0,则保留第一张图像的像素(如果您想补偿噪声,则保留一个小值) .
有一些opencv函数支持背景减法,但我没用过。您可能需要查看此页面以获取更多信息。
减去后的 JPEG 文件会更大,因为生成的图像有更多的变化。
你的问题不是很清楚。我假设您说您有图像 A 和 B 以及 A - B 的差异存储在图像 D 中。那么您想通过将 B 添加到 D 来恢复 A 来反转该过程?那是对的吗?
如果是这样,您最可能遇到的问题是 opencv 等将计算绝对差异。因此你的数学不会工作。测试制作具有已知值的两个图像,并查看差异图像是否符合您的期望。如果不编写您自己的减法算法并将结果存储在整数图像或可以支持负值的东西中。