重建被叶子遮挡的树枝


12

在树枝的部分被树叶覆盖的树的照片中,人们将如何大致重构树枝?

我可以通过脱阈,然后以几个不同角度的线段打开来提取分支的可见部分。但是我该如何(大约)填充树叶所覆盖的空间?

假设我们从下面的树图开始:

颜色树

将图像加载为灰度

uu = mmreadgray('tree2.jpg')

树

限制较深的颜色;转换为二进制;删除200px区域以下的连接区域

vv = mmareaopen(mmbinary(mmthreshad(mmneg(uu),200)),20)

树

用90、180、135和45度的10px线段打开vv;将这些图像加在一起形成标记图像zz

zz = mmaddm(mmaddm(mmaddm(mmopen(vv,mmseline(10,90))),mmopen(vv,mmseline(10,180))),mmopen(vv,mmseline(10,135))),mmopen(vv,mmseline(10,135))),mmopen(vv,mmseline(10,135))),mmopen(vv,mmseline(10,135))),mmopen(vv, mmseline(10,45)))

树

从标记图像zz重建vv中可见的肢体部分

aa = mminfrec(zz,vv)

树

在原始图片uu上方显示结果aa;合理地提取四肢

mmshow(uu,aa) 树

对于现在如何大致重建整个肢体的任何想法,我将不胜感激。(或改进上述步骤)。谢谢!


3
两个人支持您的问题-您现在应该可以上传图片了。
Niki Estner

1
@Martin我相信称为“修复”的技术可能值得一看。
Spacey 2013年

1
通过色调而不是通过亮度隔离分支会更有效吗?也就是说,选择图片的棕色部分而不是深色部分。因为是这样,您在分支中混入了许多叶子阴影,并且丢失了许多分支。
travisbartley

我会尝试在分支上使用照明渐变来帮助确定其方向,或者至少消除建议的不良填充。
2013年

Answers:


1

叶子所掩盖的遮蔽区域非常大,而边框和阴影似乎暗示了对人类隐藏的区域,因此不适合依赖于相当一致的边界的“修复”,例如前景对象暂时遮盖了后面连续的物体。

分支方向只是一个开始,但没有足够的数据来暗示树枝如何延伸,而没有橡树,柳树,杨树或松树的一些外部概念。3D分形建模比​​图像恢复更重要。

最不明显的用于绘画的算法涉及Photoshop中称为“修复”的纹理合成。 G'MICResynth是流行的开源工具,可作为GIMP的插件使用。尽管视觉连续性非常好,但它们没有树或深度的概念,只是二维补丁统计信息,因此在给出的示例中也需要来自美术师的输入。遮罩的外部边缘为白色背景,内部为较粗的分支。因此,纹理插值会产生奇怪的不自然结果。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.