python - 从 numpy 中的二维图像中提取特征向量

标签 python numpy machine-learning classification feature-extraction

我有一系列两种类型的二维图像,星形或五边形。我的目标是分别对所有这些图像进行分类。我有 30 张星星图像和 30 张五边形图像。这里并排显示了每个图像的示例:

Sample Images

在应用 KNN 分类算法之前,我需要从所有图像中提取特征向量。特征向量必须具有相同的大小,但是二维图像的大小都不同。我已经提取了图像中的读取内容,并返回了一个包含零和一的二维数组。

image = pl.imread('imagepath.png')

我的问题是如何处理图像以生成有意义的特征向量,该特征向量包含足够的信息以允许我进行分类。它必须是每个图像的单个向量,我将使用它来进行训练和测试。

最佳答案

如果你想使用 opencv 那么:

将图像大小调整为标准尺寸:

import cv2
import numpy as np

src = cv2.imread("/path.jpg")
target_size = (64,64)

dst = cv2.resize(src, target_size)

转换为一维向量:

dst = dst.reshape(target_size.shape[0] * target_size.shape[1])

关于python - 从 numpy 中的二维图像中提取特征向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49180941/

相关文章:

python - 在 Python 中并行运行函数

python - 如何让 OpenGL 在 pygame 中绘制非显示表面?

python - Tensorflow 仅针对变量的某些元素进行最小化

machine-learning - 机器学习中的梯度下降和网格搜索有什么区别?

Python 类设计 : explicit keyword arguments vs. **kwargs 与 @property

python - 如何根据两列进行计算创建Dataframe?

python - numpy 是否在内部存储数组的大小?

python - 使用数组的前一个结果将许多二维数组乘以向量

python - 凯拉斯错误 : Expected to see 1 array

python - Tkinter Treeview 右键单击​​事件识别返回上一个右键单击行