使用决策树

我知道这很长,不想读;

我会尽量不让你看到一大堆糟糕的代码来解释我的问题。我正在做一个学校作业。我们有蓝精灵的图片,我们需要通过前景背景分析来找到它们。我有一个Java的决策树,里面包含了所有数据(HSV直方图),这些数据都集中在一个节点上。然后尝试从直方图数据中找到最佳属性来进行树的分割。接着执行分割,并创建一个左子树和一个右子树,数据在这两个节点树之间进行分割。所有数据仍然保存在主树中,以便能够计算基尼指数。

经过26分钟的蓝精灵分析,我的电脑上出现了一个巨大的树,包含了分割和其他数据。现在我的问题是,有人能给我一个大致的思路,如何分析一张新图片并确定哪些像素可能是“蓝精灵像素”吗?我知道我需要生成一个新的数据点数组,包含新蓝精灵的HSV直方图,然后我需要使用生成的树来确定哪些像素属于蓝精灵。

有人能给我一些指导,如何做到这一点吗?

一些额外的信息。
每个决策树对象都有一个分割对象,该对象包含最佳分割属性、分割值和基尼指数。

如果我需要提供任何额外的信息,我很乐意听到你的建议。


回答:

好的。基本上,用未优化的伪代码来说,为了标记新图像中的像素:

对于新图像中的每个像素:

  • 计算像素的HSV特征
  • 从树的根节点开始递归:
  • 这是叶子节点吗?如果是,给像素赋予节点的主导标签。
  • 否则,根据像素的特征检查分割标准,并相应地转到右子节点或左子节点

希望这在你的情境中是有意义的。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注