python机器视觉水果分类
时间: 2023-09-27 14:08:43 浏览: 92
机器学习贝叶斯python实现水果分类
3星 · 编辑精心推荐
以下是一个简单的Python机器视觉水果分类代码示例:
```
import cv2
import numpy as np
# 加载训练数据
fruits = ['apple', 'banana', 'orange']
samples = []
labels = []
for i, fruit in enumerate(fruits):
for j in range(1, 11):
img = cv2.imread(f'data/{fruit}{j}.jpg')
img = cv2.resize(img, (100, 100))
samples.append(img)
labels.append(i)
# 建立模型
model = cv2.ml.KNearest_create()
samples = np.array(samples).reshape(-1, 100 * 100 * 3).astype(np.float32)
labels = np.array(labels).reshape(-1, 1).astype(np.float32)
model.train(samples, cv2.ml.ROW_SAMPLE, labels)
# 测试
img = cv2.imread('data/apple12.jpg')
img = cv2.resize(img, (100, 100))
test = np.array(img).reshape(-1, 100 * 100 * 3).astype(np.float32)
ret, result, neighbours, dist = model.findNearest(test, k=3)
print(fruits[int(result)])
```
首先,我们加载训练数据,包括苹果、香蕉和橘子的图像。然后,我们使用K最近邻算法建立一个模型,并使用训练数据进行训练。
接下来,我们使用测试图像进行测试。测试图像是一个苹果图像,我们将其调整为100x100大小,并将其转换为模型所需的格式。然后,我们使用模型的findNearest方法找到最接近的三个邻居,然后将结果打印出来。
这个简单的机器视觉水果分类示例可以用于更复杂的任务,例如识别多种不同的水果,或者用于智能农业和食品加工等应用。
阅读全文