使用决策树

发布于 2024-10-17 04:55:36 字数 479 浏览 7 评论 0原文

我知道 tl;dr;

我将尝试解释我的问题,而不会用大量蹩脚的代码来打扰您。我正在做一项学校作业。我们有蓝精灵的图片,我们必须通过前景背景分析来找到它们。我有一个 Java 决策树,其中包含所有数据(HSV 直方图)1 一个节点。然后尝试找到最佳属性(从直方图数据)来分割树。然后执行分割并创建左子树和右子树,并将数据分割到两个节点树上。所有数据仍然保存在主树中,以便能够计算基尼指数。

因此,在分析了蓝精灵 26 分钟后,我的电脑上有一棵巨大的树,其中包含分裂和其他数据。现在我的问题是,任何人都可以给我一个关于如何分析新图片并确定哪些像素可能是“蓝精灵像素”的全局概念。我知道我必须使用新蓝精灵的 HSV 直方图生成新的数据点数组,然后我需要使用生成的树来确定哪些像素属于蓝精灵。

谁能指导我如何做到这一点?

一些附加信息。
每个决策树对象都有一个 Split 对象,该对象具有分割的最佳属性、分割的值和基尼指数。

如果我需要提供任何其他信息,我想听听。

I know tl;dr;

I'll try to explain my problem without bothering you with ton's of crappy code. I'm working on a school assignment. We have pictures of smurfs and we have to find them with foreground background analysis. I have a Decision Tree in java that has all the data (HSV histograms) 1 one single node. Then tries to find the best attribute (from the histogram data) to split the tree on. Then executes the split and creates a left and a right sub tree with the data split over both node-trees. All the data is still kept in the main tree to be able to calculate the gini index.

So after 26 minutes of analysing smurfs my pc has a giant tree with splits and other data. Now my question is, can anyone give me a global idea of how to analyse a new picture and determine which pixels could be "smurf pixels". I know i have to generate a new array of data points with the HSV histograms of the new smurf and then i need to use the generated tree to determine which pixels belong to a smurf.

Can anyone give me a pointer on how to do this?

Some additional information.
Every Decision Tree object has a Split object that has the best attribute to split on, the value to split on and a gini index.

If i need to provide any additional information I'd like to hear it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

╰つ倒转 2024-10-24 04:55:36

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

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

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

我希望这在您的上下文中有意义。

OK. Basically, in unoptimized pseudo-code: In order to label pixels in a new image:

For each pixel in the new image:

  • Calculate pixel's HSV features
  • Recursively, starting from the tree's root :
  • Is this a leaf? if it is, give the pixel the dominant label of the node.
  • Otherwise, check the splitting criterion against the pixel's features, and go to the right or left child accordingly

I hope this makes sense in your context.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文