遭受病虫害的农作物无法正常生长,直接导致生产总量下降。因此,正确识别病虫害种类对提高农作物产量、促进经济增长具有重要作用。但对于普通农民来说,如何正确识别病虫害是一大难题。随着计算机技术的飞速发展,深度神经网络技术也被应用于图像识别分类。深度神经网络训练出来的模型能够自动获得输入图像的特征,在图像分类识别领域有着出色的性能。卷积神经网络已经在图像分类识别、语音识别、自然语言处理等领域取得了重大突破,成为一种流行的高效机器学习方法。
本文开发的软件核心功能是检测识别农作物病虫害种类。同时考虑到用户的交流需求,软件需要有个聊天室功能。为了区分每个用户,软件应该有登录和新用户注册功能。因此,软件使用流程为:首先用户需要登陆客户端,新用户需要注册后才能登陆。登陆后进入主页,主页包含两个功能:农作物病虫害识别功能和聊天室功能。农作物病虫害识别功能可以让用户上传农作物图片获悉农作物所遭受病虫害种类;聊天室功能可以让用户进入聊天室与其他用户讨论农作的物病情和防治方法。
一、登录
服务端从客户端收到用户输入的账户和密码后,调用函数与数据库建立连接,然后检索用户数据库,判断该账户是否已被注册。若输入的账户已经被注册,则验证密码是否正确,若密码正确,则用户登陆成功并允许用户进入主页。若输入的账户未被注册或密码不正确,则向客户端反馈相关提示信息。
二、注册
服务器端从客户端收到用户申请注册的账号和密码后,在数据库中检索是否已有当前用户账号。若无,则注册成功,并将该账号密码写入数据库,同时将注册成功信息反馈给客户端。若当前用户账号已经存在,则注册失败,向客户端返回该用户账号已被注册的信息。
三、农作物病虫害识别
从客户端接收用户上传的农作物图片,先判断图片格式是否合法,要求图片只能为jpg、jpeg、png、bmp这四种图片格式。然后调用已训练好并被保存为pkl文件的卷积神经网络模型对图片进行识别。最后将识别准确率最高的结果返回给客户端。
四、聊天室
服务器端采用多线程,为每个进入聊天室的用户端建立WebSocket连接。创建一个WS对象,让这个对象在端口监听并接收客户端发送的消息数据。接收完后,将消息数据发送给当前聊天室中的所有用户客户端。用户离开当前聊天室后,断开WebSocket连接。
五、退出
服务器断开与该客户端的连接,并将该客户端在线状态更改为下线状态。
六、客户端设计
登录功能:与服务器建立连接并登录,能显示密码不正确、当前账户不存在等错误信息。
主界面显示:主界面为功能界面,显示农作物病虫害种类识别、聊天室和退出三个功能。
农作物病虫害种类识别功能:拥有图片显示区、图片上传按钮、图片选择按钮。图片选择包括拍照或从相册选择两种方式。图片上传后会自动跳转到识病结果界面。该界面有图片显示区和结果显示区。结果显示区包含识别状态码、识别状态、疾病种类、预测率四个部分。其中状态码:0表示成功,1表示失败;识别状态,有成功、没有结果、图片格式不正确三种状态。
聊天功能:用户可以进入界面显示已有的聊天室。若已有的聊天室无法满足用户的需求,用户也可以创建一个聊天室。用户进入聊天室后会创建WebSocket来与服务器进行连接。用户在聊天室中可以查看该聊天室的所有聊天记录。用户在一个聊天室中发送的消息能显示到该聊天室内其他所有用户的界面上,并能看到该聊天室内其他所有用户发送的消息。
退出功能:在用户界面有个退出按钮,用户可以由此退出登陆。退出成功后界面会自动跳转到登录界面,等待用户的下一次登陆。
转载请注明:http://www.0431gb208.com/sjszlfa/4361.html