OpenCV常用函数分析

1. 聚类:将拥有最相似属性的数据归为一类.

K-means聚类:

python调用格式:compacness, labels, centers = cv2.kmeans(data, K, criteria, bestLabels=None, attempts, flags, centers=None)

data: 需要被聚类的输入数据。 K: 类别数目。 criteria: 算法终止标准, 比如最大循环次数,期望的准确率。 attempts: 算法使用不同的初始位置,执行的次数,算法返回最优结果。

flags: (1) KMEANS_RANDOM_CENTERS: 每次attempt中,选择随机初始中心。(2) KMEANS_PP_CENTERS: 利用Arthur and Vassilvitskii方法选择初始中心。 (3) KMEANS_USE_INITIAL_LABELS: 第一次尝试,使用用户提供的中心, 之后的尝试,使用随机或者半随机中心。

centers: 聚类中心的输出矩阵,每个聚类中心一行。

输出: compactness: 每个点到对应中心的平方距离和。 labels: 标签矩阵,每个元素被标识为‘0’,‘1‘......。centers: 类中心的矩阵。

实例:(1)灰度图像分割时,将图像的灰度值分成K类,得到我们想要的区域。(2)输入N个人的身高,体重,成绩,外貌分等X类特征数据,将这N个人分成K类,找到各自较为相似的类。

2. PCA主成分分析:找出并保留能最大程度上区分个体的前K个属性(也即从大到小排序后,前K个特征值对应的特征向量方向)

python调用格式:

实例:(1)丢弃特征向量较小的部分,重构数据,去除输入数据中的噪声。(2)数据维度太高,去除区分度很低的属性,降低数据维度,举个例子,输入的一组数据中,所有人的体重都在70Kg附近小范围波动,这对于区分个体并没有什么帮助作用,我们便可以遗弃‘体重’这一属性。

时间: 2024-08-08 20:07:27

OpenCV常用函数分析的相关文章

opencv 常用函数介绍

××××××××××××××××××××××××××××××××××××××× CvScalar imgmean,imgstd; double imgmax,imgmin; cvAvgSdv(img,&imgmean,&imgstd); cvMinMaxLoc(img,&imgmin,&imgmax,NULL,NULL); printf("mean:%f std:%f max:%f,min:%f\n",imgmean.val[0],imgstd.val[

OpenCV 常用函数

resize(src, dst,size) src:源图像 dst:目标图像 size:图像尺寸 waitKey() 函数原型:          C: int cvWaitKey(int delay=0)          C++: int waitKey(int delay=0) 函数功能:不断刷新图像,频率时间为delay,单位为ms.          delay>0时,延迟"delay"ms 使用cvWaitKey(0)则只会显示第一帧视频          delay

Opencv常用函数讲解

1.approxPolyDP(Mat(ps), poly, 5, true);//根据点集,拟合出多边形 2.fillConvexPoly(mask, Mat(ps), Scalar(255));根据点集,绘制并填充出多边形 3.fillPoly(mask, Mat(ps), Scalar(255)); ;根据点集,绘制出多边形 原文地址:https://www.cnblogs.com/raorao1994/p/8542464.html

Qt5和opencv常用函数

QImage Mat2QImage(cv::Mat cvImg) { QImage qImg; if(cvImg.channels()==3) //3 channels color image { cv::cvtColor(cvImg,cvImg,CV_BGR2RGB); qImg =QImage((const unsigned char*)(cvImg.data), cvImg.cols, cvImg.rows, cvImg.cols*cvImg.channels(), QImage::For

[opencv]常用阵列操作函数总结

/*=========================================================================*/ // 阵列操作 /*=========================================================================*/ 基本矩阵和图像运算符 ———————————————————————————————————————————————————————————————————————————

如何验证一个地址可否使用—— MmIsAddressValid函数分析

又是一篇内核函数分析的博文,我个人觉得Windows的内核是最好的老师,当你想实现一个功能之前可以看看Windows内核是怎么做的,说不定就有灵感呢:) 首先看下官方的注释说明: /*++ Routine Description: For a given virtual address this function returns TRUE if no page fault will occur for a read operation on the address, FALSE otherwis

如何验证一个地址可否使用——MmIsAddressValid函数分析

又是一篇内核函数分析的博文,我个人觉得Windows的内核是最好的老师,当你想实现一个功能之前可以看看Windows内核是怎么做的,说不定就有灵感呢:) 首先看下官方的注释说明: /*++ Routine Description: For a given virtual address this function returns TRUE if no page fault will occur for a read operation on the address, FALSE otherwis

mysql 常用函数以及常见查询语句

MySQL 常用函数 1.数据库中取昨天的日期 mysql> select date_sub(current_date(),interval 1 day); +-----------------------------------------+ | date_sub(current_date(),interval 1 day) | +-----------------------------------------+ | 2016-01-11                           

Loadrunner11之VuGen常用函数lr_user_data_point(一)

Loadrunner11之VuGen常用函数lr_user_data_point(一) 上一篇 / 下一篇  2011-11-15 00:15:33 / 精华(1) / 置顶(1) / 个人分类:性能测试工具 查看( 222 ) / 评论( 0 ) / 评分( 0 / 0 ) 每篇一问:什么贵重的东西最容易不翼而飞? 1. lr_user_data_point定义 a)        自动记录一个自定义的数据标记: b)       Lr_user_data_point函数允许你自动记录你自己的