Python – 图像识别分类器

我想评估我的屏幕上是否发生了某个事件,每次事件发生时,屏幕特定区域会显示一个特定的框/图像,该区域的结构非常相似。

我已经从该屏幕区域收集了一组84×94的.png RGB图像,我想构建一个分类器来告诉我事件是否正在发生。

因此,我的想法是创建一个包含两列的pd.DataFrame (df),df['np_array']包含每张图片作为np.array,而df['is_category']包含布尔值,指示该图像是否表示事件正在发生。

结构看起来像这样(大小不同):

我已经将图像调整为10×10用于训练,并转换为灰度

df = pd.DataFrame(    {'np_array': [np.random.random((10, 10,2)) for x in range(0,10)],     'is_category': [bool(random.getrandbits(1)) for x in range(0,10)]    })

我的问题是,我无法通过clf.fit(df['np_array'],df['is_category'])来拟合scikit-learn分类器

我之前从未尝试过图像识别,提前感谢任何帮助!


回答:

如果它是一个10×10的灰度图像,你可以将其展平:

import numpy as npfrom sklearn import ensemble# 生成随机2d数组image_data = np.random.rand(10,10, 100)# 生成随机标签labels = np.random.randint(0,2, 100)X = image_data.reshape(100, -1)# 然后使用任何scikit-learn分类模型clf = ensemble.RandomForestClassifier()clf.fit(X, y)

顺便说一句,对于图像,最佳性能的算法是卷积神经网络。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注