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附近小范围波动,这对于区分个体并没有什么帮助作用,我们便可以遗弃‘体重’这一属性。
OpenCV常用函数分析的更多相关文章
- OpenCV——常用函数查询
1.cvLoadImage:将图像文件加载至内存: 2.cvNamedWindow:在屏幕上创建一个窗口: 3.cvShowImage:在一个已创建好的窗口中显示图像: 4.cvWaitKey:使程序 ...
- Opencv常用函数
一.图像读写与简单处理 1. Mat cv::imread(const String& filename, int flags=IMREAD_COLOR). imread函数加载filenam ...
- OPENCV 常用函数
1.cvCloneImage: IplImage* cvCloneImage( const IplImage* image ); 在使用函数之前,不用特地开辟内存,即该函数会自己开一段内存,然后复制好 ...
- opencv 常用函数介绍
××××××××××××××××××××××××××××××××××××××× CvScalar imgmean,imgstd; double imgmax,imgmin; cvAvgSdv(img, ...
- opencv常用函数备忘
//显示图片 IplImage * src = cvLoadImage("xx.JPG"); cvNamedWindow(); cvShowImage("show_ima ...
- Opencv常用函数讲解
1.approxPolyDP(Mat(ps), poly, 5, true);//根据点集,拟合出多边形 2.fillConvexPoly(mask, Mat(ps), Scalar(255));根据 ...
- OpenCV图像处理中常用函数汇总(1)
//俗话说:好记性不如烂笔头 //用到opencv 中的函数时往往会一时记不起这个函数的具体参数怎么设置,故在此将常用函数做一汇总: Mat srcImage = imread("C:/Us ...
- Opencv 3.3.0 常用函数
如何调图像的亮度和对比度? //如何增加图片的对比度或亮度? void contrastOrBrightAdjust(InputArray &src,OutputArray &dst, ...
- 常用string函数分析
string函数分析string函数包含在string.c文件中,经常被C文件使用.1. strcpy函数原型: char* strcpy(char* str1,char* str2);函数功能: 把 ...
随机推荐
- 【USACO】接住苹果
接住苹果奶牛喜欢吃苹果.约翰有两棵苹果树,有 N 只苹果会从树上陆续落下.如果掉苹果的时候,贝西在那棵树下,她就能接住苹果.贝西一开始在第一棵树下.在苹果掉落之前,她有足够的时间来回走动,但她很懒,最 ...
- CoreJavaE10V1P3.5 第3章 Java的基本编程结构-3.5 操作符
最基本的操作为赋值操作,= 即赋值操作符 基本的算术操作为加.减.乘.除取模.除取余数,其对应操作符为 +.-.*./.% 算术操作与赋值操作联合衍生为:+=:-=:*=:/=:%=: 由于处理器硬件 ...
- [MFC美化] Skin++使用详解-使用方法及注意事项
主要分为以下几个方面: 1.Skin++使用方法 2.使用中注意事项 一. Skin++使用方法 SkinPPWTL.dll.SkinPPWTL.lib.SkinPPWTL.h ,将三个文件及相应皮肤 ...
- Servle资源注射
Servle资源注射@WebServlet(name = "DownloadServlet",urlPatterns ="/DownloadServlet" ) ...
- laravel 添加第三方扩展库
确定需要安装的位置 common.php测试代码 打开cmd 跳转到项目根目录下运行命令 composer install 打开文件 vender/composer/autoload_classmap ...
- mysql连接失败或出现“Too many connections”错误
mysql连接失败或出现"Too many connections"错误 # 按自己服务器的配置文件路径修改 vi /etc/my.cnf 查找:max_connections 修 ...
- 大数据揭示的10个常见JAVA编程错误
初学者最常犯的编程错误是什么呢?有可能他们总是混淆等值(==)与赋值(=),或者 & 和 &&:也有可能是他们在循环中使用错误的分隔符(for (int i = 0, i &l ...
- [Jmeter]jmeter之初体验(windows下的jmeter)
一.环境准备 1.安装JDK(传送门:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.ht ...
- js检测对象中是否存在某个属性
1.使用in关键字.该方法可以判断对象的自有属性和继承来的属性是否存在. 2.使用对象的hasOwnProperty()方法.该方法只能判断自有属性是否存在,对于继承属性会返回false. 3.用un ...
- ngrok内网穿透神器
ngrok类似国内的花生壳,可以将本地的内网映射到公网上,这样就可以做web开发,微信开发了.下面就介绍下ngrok是怎么配置的吧. 方式一: 一.打开ngrok的官网https://ngrok.co ...