python开发构建基于机器学习模型的番茄病虫害识别系统

编程入门 行业动态 更新时间:2024-10-25 10:22:30

python开发构建基于机器学习模型的番茄<a href=https://www.elefans.com/category/jswz/34/1759383.html style=病虫害识别系统"/>

python开发构建基于机器学习模型的番茄病虫害识别系统

在我之前的文章中已经做过基于CNN的农作物病虫害识别系统,农作物的病虫害识别相比都不是什么新鲜的事情,以往这个问题绝大多数的方法都是基于CNN开发的深度学习的模型,后面又基于LSTM系列的模型也有开发过,但是基本上都是基于深度学习模型实现的识别,那么不禁就在想:如果纯粹基于基础的机器学习模型是否能够实现高效的识别呢?理论上来讲,只要特征提取的好,简单的机器学习模型应该也有不错的识别效果的,而且机器学习模型的推理速度有优势,如果精度ok,本身就是一个不错的选择。

话不多说,首先看下效果图:

完整项目截图如下所示:

数据集如下:

简单看下数据。

【Early_Blight_Fungus】

【Healthy】

【Septoria_Leaf_Spot_Fungus】

【YLCV_Virus】

整体建模流程如下所示:

这里是基于SVM实现的识别模型,核心实现如下:

#随机划分
X_train, X_test, y_train, y_test = splitData(x_list, y_list, ratio=0.3)
#模型初始化
model = LinearSVC()
#训练拟合
model.fit(X_train, y_train)
#预测
y_predict = model.predict(X_test)
y_pred = y_predict.tolist()
#计算准确率
accuracy = model.score(X_test, y_test)
print("SVM model accuracy: ", accuracy)
Precision,Recall,F1=calThree(y_test,y_pred)
saveModel(model,save_path=model_path)
result={}
result['accuracy'],result['F_value']=accuracy,F1
result['precision'],result['recall']=Precision,Recall
print('type: ', type(y_test), type(y_pred))
result['y_true'],result['y_pred']=y_test,y_pred
plotConfusionMatrix(y_test, y_pred, save_path = saveDir + 'ConfusionMatrix.png')

结果输出如下所示:

这里绘制了混淆矩阵,如下所示:

为了直观简洁实用,这里开发了专用的可视化界面,如下:

更多推荐

python开发构建基于机器学习模型的番茄病虫害识别系统

本文发布于:2024-02-10 16:30:32,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1676228.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:病虫害   番茄   识别系统   模型   机器

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!