我有一系列的二维图像,分为两种类型:星星或五边形。我的目标是分别对这些图像进行分类。我有30张星星图像和30张五边形图像。以下是每种图像的示例并排展示:
在应用KNN分类算法之前,我需要从所有图像中提取特征向量。然而,尽管这些二维图像的大小各不相同,特征向量必须具有相同的大小。我已经读取了图像,并得到一个包含零和一的二维数组。
image = pl.imread('imagepath.png')
我的问题是如何处理image
以生成一个有意义的特征向量,该向量包含足够的信息让我能够进行分类。每个图像必须生成一个单一的向量,用于训练和测试。
回答:
如果你想使用OpenCV,那么可以这样做:
将图像调整到标准大小:
转换为1D向量:
dst = dst.reshape(target_size.shape[0] * target_size.shape[1])