【问题标题】:How to extract the branch structure and the foliage from a tree image如何从树图像中提取树枝结构和树叶
【发布时间】:2016-01-16 17:31:29
【问题描述】:

我正在解决一个问题,我需要分别从树中提取可见的分支结构和树叶。建议的技术可以是全自动的或半监督的(用户画几笔来帮助分割)。我想知道如何实现这一点,哪些工具、技术或语言最方便完成这项任务。

【问题讨论】:

  • 您对图像有任何假设吗? IE。你能确定背景不是更多的树吗?也许背景主要是天空?叶子大部分是绿色的吗?
  • 是的,我可以考虑这些假设。如果您列出的假设是正确的,那么解决方案是什么。另外,如果我说背景没有更多的树木,但背景中不仅有天空,还有建筑物/墙壁/车辆。
  • 好吧,如果树叶是绿色的,试着只看 G 通道。与背景相比,它可能更加突出。或者它可能在 HSV 颜色空间中相对于图像的其余部分具有唯一的 H 值,如果您可以接受最少的用户输入,您可以让他们选择一片叶子,然后使用非常窄的色调范围来寻找其他叶子,并且它对阴影的敏感度会降低一些。我将写一个答案,以便我可以详细说明。

标签: image-processing graphics computer-vision


【解决方案1】:

不一定是答案,但这太多了,无法放在评论中。我在一张树的照片上摆弄了几分钟。

这是我的原图:

我尝试使用这个(在 MATLAB 中)获取 G 和 RB 之间的差异以突出显示绿色区域:

green_diff = 2*image(:,:,2) - (image(:,:,1)+image(:,:,3));
figure, imshow(green_diff)

我还尝试只查看 HSV 颜色空间中的 H 通道。

htest = rgb2hsv(image);
htest(:,:,2:3) = 1;
figure, imshow(hsv2rgb(test))

您无需将其转换回 rgb — 这样看起来更酷。

我现在对分支机构没有任何好主意。唯一真正想到的是试图利用树枝与树叶相连的事实,并且树枝通常呈现出树状的形状(我知道,这很奇怪)。

【讨论】:

  • 非常感谢 Matthew Pope ... 颜色分割似乎是一个不错的方法。
【解决方案2】:

是否可以移除相机上的 IR(红外线)滤光片?现在可以很便宜地完成它。如果是这样,您可能会利用树叶中的叶绿素非常强烈地反射红外波长并因此在红外波长中显示出明亮的事实。

尝试谷歌搜索“NDVI”(归一化差异植被指数)以获得进一步解释。

Demonstration/Explanation of NDVI

【讨论】:

  • 图像将使用手机捕获,因此我认为 ndvi 不会有帮助。我需要一种方法,它可以先从背景中分割出树,然后从中分割出树叶和可见的树枝。
猜你喜欢
  • 2017-09-26
  • 2015-04-22
  • 2012-07-27
  • 1970-01-01
  • 1970-01-01
  • 2022-01-02
  • 2013-04-30
  • 2016-05-01
相关资源
最近更新 更多