没有合适的资源?快使用搜索试试~ 我知道了~
OpenCV中的K-Means聚类
作者|OpenCV-Python Tutorials
编译|Vincent
来源|OpenCV-Python Tutorials
### 目标
- 了解如何在OpenCV中使用cv.kmeans()函数进行数据聚类
### 理解参数
#### 输入参数
1. **sample**:它应该是**np.float32**数据类型,并且每个功能都应该放在单个列中。
2. **nclusters(K)**:结束条件所需的簇数
3. **criteria**:这是迭代终止条件。满足此条件后,算法迭代将停止。实际上,它应该是3个参数的元组。它们是`(type,max_iter,epsilon)`:
a. 终止条件的类型。它具有3个标志,如下所示:
- **cv.TERM_CRITERIA_EPS**-如果达到指定的精度epsilon,则停止算法迭代。
- **cv.TERM_CRITERIA_MAX_ITER**-在指定的迭代次数max_iter之后停止算法。
- **cv.TERM_CRITERIA_EPS + cv.TERM_CRITERIA_MAX_ITER**-当满足上述任何条件时,停止迭代。
b. max_iter-一个整数,指定最大迭代次数。
c. epsilon-要求的精度
1. attempts:该标志用于指定使用不同的初始标签执行算法的次数。该算法返回产生最佳紧密度的标签。该紧凑性作为输出返回。
2. flags:此标志用于指定初始中心的获取方式。通常,为此使用两个标志:**cv.KMEANS_PP_CENTERS**和**cv.KMEANS_RANDOM_CENTERS**。
**输出参数**
1. 紧凑度:它是每个点到其相应中心的平方距离的总和。
2. 标签:这是标签数组(与上一篇文章中的“代码”相同),其中每个元素标记为“0”,“ 1” .....
3. 中心:这是群集中心的阵列。
现在,我们将通过三个示例了解如何应用K-Means算法。
### 1. 单特征数据
考虑一下,你有一组仅具有一个特征(即一维)的数据。例如,我们可以解决我们的T恤问题,你只用身高来决定T恤的尺寸。因此,我们首先创建数据并将其绘制在Matplotlib中
```python
import numpy as np
import cv2 as cv
fro
点击阅读更多
资源推荐
资源评论
2022-06-24 上传
192 浏览量
157 浏览量
117 浏览量
2025-02-10 上传

2024-06-08 上传
2021-05-02 上传
115 浏览量
135 浏览量
199 浏览量
145 浏览量
190 浏览量
150 浏览量
188 浏览量


111 浏览量
118 浏览量
2022-09-21 上传