根据文档(开放 CV 版本 2.4),我可以使用 python 中的随机树集合(http://docs.opencv.org/modules/ml/doc/random_trees.html)
导入 cv2 后,我可以看到变量 cv2.RTree,但它没有任何方法或属性(例如 train 方法)。
包裹在哪里以及如何使用它(如果有的话)
根据文档(开放 CV 版本 2.4),我可以使用 python 中的随机树集合(http://docs.opencv.org/modules/ml/doc/random_trees.html)
导入 cv2 后,我可以看到变量 cv2.RTree,但它没有任何方法或属性(例如 train 方法)。
包裹在哪里以及如何使用它(如果有的话)
您绝对可以在 python 中使用来自 OpenCV 的随机树。cv2.RTree 是构造函数,所以你基本上只需要这样说:
forest = cv2.RTree(...)
哪里 ... 是你的论点。当您只想使用默认参数运行时,您可以省略这些。无论如何,森林对象现在允许您进行训练和预测。如果您查看帮助文档,请使用
help(cv2.RTree)
你会看到它说:
RTrees() -> <RTrees object>
并且 help(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 ),因为它使试用过程变得非常简单。
祝你好运。