【发布时间】:2012-06-12 07:01:25
【问题描述】:
我正在尝试为图像特征构建 KD 树(独立)。我已经提取了图像特征,该特征包含假设 1000 个浮点值。
使用map-reduce根据分类(例如,猫,狗,枪)在集群的节点之间分配图像,即。每个节点将包含一堆相似的图像,然后在每个节点上构建图像的 KD 树。我对如何构建树感到困惑。
那么如何使用 map-reduce 构建 KD 树呢?每个节点都将包含树,对吗?分发图像的逻辑是什么?在构建 KD-tree 时,我应该在什么基础上在树中添加图像特征向量(即左子或右子)?
任何帮助表示赞赏。在此先感谢。
【问题讨论】:
-
不确定我是否完全按照您的描述进行操作。您确定需要为此任务使用 map-reduce/hadoop 吗?如果您想要非常精细地控制哪些数据进入哪个节点,则某种分片机制可能会更好。此外,您必须使您的 kd 树可查询并从 HDFS 提供数据,这听起来并不有趣。
-
嘿,谢谢....看,我要做的是,我有大量的图像,并且我已经提取了图像的特征。每个向量包含 1000 个浮点值。那么我应该如何根据这些值构建 kd 树,以便在搜索过程中帮助我。我需要使用 map-reduce 将相似的图像集分配给节点,这意味着在节点之间分配图像。我怎么能做到这一点?
-
您是否在在 mapreduce 组件之前根据相似性对图像进行分类?所以你在 mapreduce 组件之前就知道哪些图像应该组合在一起。
-
是的....图像已分类...我只需要在节点之间分配图像并构建 kd 树。
-
@GirishRao...但是如何在每个节点上构建树?什么逻辑可以用来决定左孩子还是右孩子?
标签: java hadoop mapreduce kdtree