首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >两幅图像的图像合成

两幅图像的图像合成
EN

Stack Overflow用户
提问于 2011-12-11 07:37:23
回答 1查看 758关注 0票数 0

我试图解决在Java中合成两个图像的问题。程序将获取第一个图像的一部分,并在第二个图像上通过它。其目的是使这两幅图像之间的边界不那么明显。在选择边界时,必须使两幅图像在边界上的差别很小。

我的任务:

编写一种方法来选择这两个图像之间的边界。该方法将接收输入图像的重叠部分。这必须首先被转换,这样边界总是从左上角开始到右下角。

注意:返回的图像不应该是连接的图像,而是给出了使用了这两个图像的哪些部分。

边界线的像素可以用常量(SEAM)标记。第一幅图像的像素可以用整数0标记,第二幅图像的像素可以用整数1标记,在选择了边界线后,floodfill算法可以用0或1填充额外的像素。

注意:图像可以表示为一个图形,其中每个像素都与其左、右、上和下邻居连接。所以使用洪水填充物就像深度优先搜索一样。

为了使边界变小,必须采用最短路径算法来选择边界。

注意:除了数组(甚至ArrayList)之外,i不能使用任何java数据结构。

伙计们,这是新来的,我想解决这个问题。我必须采取什么步骤来解决这个问题?或指向教程的指针

EN

回答 1

Stack Overflow用户

发布于 2012-02-07 22:17:19

我会这样做:

选择选中边框的宽度。听从你的意愿。1.找出像素的最大可能位移。对于正方形(+- D,+-D)中的所有可能位移,求出边界的k(相关商)。边境线是在转移的中间。3. k值最大的变化是最好的。让它被认为是理所当然的。4.现在开始移动边界,用"k“同样的方式检查边界。找到它的位置。好了。

如果D很大,而且过程很长,可以在两个(或更多)阶段进行。在第一阶段,计数k的步骤很大,最后一步是1,你也可以使用以前的过滤。

如果边界或相对图像的位置可以被旋转,那么算法也不会发生主要变化--只会在不同的稍微转弯的位置和后来的边界之间增加最佳的k值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8462577

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档