python图像分类_关于使用SVM进行图像分类:使用SVM进行图像分类-Python

时间:2025-04-07 07:46:23

我有一组图像分为高质量图像和劣质图像。 我必须训练一个分类模型,以便可以将任何新图像分类为好/坏。 SVM似乎是执行此操作的最佳方法。 我已经在MATLAB中完成了图像处理,但没有在python中完成。

谁能建议如何在python中做到这一点? 什么是图书馆? 对于SVM scikit,图像和PCA的特征提取如何?

请注意,您要处理的问题不是分类就是质量评估。 我不是Python专家,但是从图像处理的角度来看,这是两个不同的问题。

@ BH85我同意。 但是问题是要评估质量,并在质量的基础上对它的好坏进行分类。 什么是正确的方法?

我将开始阅读这个简单的教程,然后进入Python的OpenCV教程。另外,如果您熟悉sklearn界面,则还有Scikit-Image。

我正在使用opencv 2.4,python 2.7和pycharm

SVM是用于数据分类的机器学习模型.Opencv2.7具有pca和svm。使用svm构建图像分类器的步骤是

调整每个图像的大小

转换为灰度

找到PCA

放平并添加到培训列表中

将标签附加到训练标签

示例代码为

1

2

3

4

5

6

7

8

9

10for file in listing1:

img = (path1 + file)

res=(img,(250,250))

gray_image = (res, cv2.COLOR_BGR2GRAY)

xarr=((gray_image).astype(np.float32))

m,v=(xarr)

arr= (v)

flat_arr= ()

training_set.append(flat_arr)

training_labels.append(1)

现在训练

1

2

3

4

5trainData=np.float32(training_set)

responses=np.float32(training_labels)

svm = ()

(trainData,responses, params=svm_params)

('svm_data.dat')

我想这会给你一些想法。

谢谢,但是为了上帝的爱,请给我们一个巨大的提示(对于我们这些人来说,这就是arent python gurus)"此代码实际上没有用,"所以我们这些人(而不是精通python的arent)浪费了很多时间,试图弄清楚 找出为什么会出现大量错误...谢谢!

看一下dlib和opencv。两者都是使用python绑定以C ++实现的成熟的计算机视觉框架。这很重要,因为这意味着它依赖引擎盖下的已编译代码,因此比直接用python进行编译要快得多。我相信目前dlib中SVM的实现是基于最近的研究,因此您可能需要考虑这一点,因为使用它可能会获得更好的结果。