设为首页 加入收藏

TOP

OpenCV机器学习库MLL
2014-11-24 07:17:46 来源: 作者: 【 】 浏览:1
Tags:OpenCV 机器 学习 MLL

学习机器学习的时候,基本都是在用Matlab、Python写算法,做测试;


由于最近要用OpenCV写作业,兴起看了看OpenCV的机器学习模块(The Machine Learning Library——MLL)。


来看看MLL的主要构成:Statistical Model是个基类,下面的K-NN、SVM等都是其子类。



不太喜欢这个Statistical定语,Statistics在ML界横行的好多年,感觉温度已经降下来了。


来看下Statistical Model:


class CV_EXPORTS_W CvStatModel
{
public:
CvStatModel();
virtual ~CvStatModel();


virtual void clear();


CV_WRAP virtual void save( const char* filename, const char* name=0 ) const;
CV_WRAP virtual void load( const char* filename, const char* name=0 );


virtual void write( CvFileStorage* storage, const char* name ) const;
virtual void read( CvFileStorage* storage, CvFileNode* node );
virtual bool train(const Mat& train_data, const Mat& responses, Mat(), Mat(), CVParms params );
virtual float predict(const Mat& sample, ...);


protected:
const char* default_model_name;
};


void CvStatModel::clear() 清除内存重置模型状态;



void CvStatModel::save() /load() 保存/加载文件和模型;


void CvStatModel:read() /write() 读写文件和模型;


bool CvStatModel::train() 训练模型;


float CvStatModel::predict() 预测样本结果;



那么朴素贝叶斯、K-近邻、支持向量机、决策树等类都是继承CVStatModel;


使用这些方法的基本框架就是:


Method.train(train_data, responses, Mat(), Mat(), params);


Method.predict(sampleMat);


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇双边滤波Matlab实现<The Bilat.. 下一篇二分类SVM方法Matlab实现

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·数据库:推荐几款 Re (2025-12-25 12:17:11)
·如何最简单、通俗地 (2025-12-25 12:17:09)
·什么是Redis?为什么 (2025-12-25 12:17:06)
·对于一个想入坑Linux (2025-12-25 11:49:07)
·Linux 怎么读? (2025-12-25 11:49:04)