根据文档(开放CV版本2.4)我可以使用python中的随机树集合(http://docs.opencv.org/modules/ml/doc/random_trees.html)
导入cv2后我可以看到变量cv2.RTree,但它没有任何方法或属性(例如火车方法)。
包装在哪里以及我如何使用它(如果有的话)
答案 0 :(得分:2)
你绝对可以在python中使用OpenCV中的随机树。 cv2.RTree是构造函数,所以你基本上只需要说:
forest = cv2.RTree(...)
哪里......是你的论点。当您只想使用默认参数运行时,可以省略这些。无论如何, forest 对象现在允许您进行训练和预测。如果您使用
查看帮助文档help(cv2.RTree)
你会看到它说:
RTrees() -> <RTrees object>
帮助(RTrees())给出:
class RTrees(StatModel)
| Method resolution order:
| RTrees
| StatModel
| __builtin__.object
|
| Methods defined here:
|
| __repr__(...)
| x.__repr__() <==> repr(x)
|
| clear(...)
| clear() -> None
|
| getVarImportance(...)
| getVarImportance() -> retval
|
| predict(...)
| predict(sample[, missing]) -> retval
|
....
我知道它通常很难阅读cv2 python文档,但最终你掌握了它。基本上,这个文档告诉你,RTrees()将构造对象,一旦构造,你将获得一个你正在寻找的方法的对象。因此,回到具体示例,一旦您创建了森林,就可以调用:
forest.train(...)
forest.predict(...)
使用您的数据矩阵。如果您需要有关各个方法的帮助,现在可以询问:
help(forest.train)
虽然,cv2帮助文档在python中经常有点迟钝。如果您还没有使用它,我建议使用ipython(http://ipython.org),因为它使试用过程非常简单。
祝你好运。