文章结尾部分有CSDN官方提供的学长 联系方式名片
文章结尾部分有CSDN官方提供的学长 联系方式名片
关注B站,有好处!
功能介绍
编号:F045
🪲 vue+flask+neo4j+mysql 架构 (前后端分离架构)
🪲 棉花医院AI问答:前端聊天界面体验超棒(对接千问大模型API)
🪲 病虫害图片识别:基于CNN的棉花病虫害识别,可自己训练模型(基于pytorch)
🪲 数据为棉花的四个期对应的 各种虫害
🪲 知识图谱: 模糊查询+图标+双击+拖动等(双击展示数据)
🪲 数据大屏:中国地图显示产地: echarts 分析
🪲 病虫害查询: 分页+模糊查询+卡片展示
🪲 棉花生长周期:展示4个周期
🪲 关键词分析等、登录注册
视频讲解
F045vue+flask棉花病虫害CNN识别+AI问答知识neo4j 图谱可视化系统深度学习神经网络
病虫害知识问答
基于阿里千问大模型API实现的棉花病虫害问答
类似聊天界面
病虫害识别
基于Pytorch CNN卷积神经网络模型实现的病虫害识别
识别叶甲
上传图片,右侧展示识别结果、图片和相关的信息:
知识图谱可视化
可视化
支持模糊搜索显示知识图谱子图,输入“蕾”
点击节点,右侧展示详细节点信息
病虫害知识库搜索
可以搜索各种病虫害,支持模糊搜索+分页,画面美观
棉花周期科普
关键词分析
基于统计、textrank+tfidf双算法的关键词主题词分析
词云分析
基于jieba分词的词云分析
数据大屏
多种echarts可视化图形数据分析的应用,美观大方
通过中国地图分析棉花产地、药物类型、虫害分析、有效成分等
登录和注册
个人信息设置,可修改头像等
通过OCR识别技术进行实名认证
病虫害识别代码
class SimpleCNN(nn.Module):def __init__(self, num_classes):super(SimpleCNN, self).__init__()self.conv1 = nn.Conv2d(3, 16, kernel_size=3, stride=1, padding=1)self.conv2 = nn.Conv2d(16, 32, kernel_size=3, stride=1, padding=1)self.pool = nn.MaxPool2d(kernel_size=2, stride=2, padding=0)self.fc1 = nn.Linear(32 * 32 * 32, 128)self.fc2 = nn.Linear(128, num_classes)def forward(self, x):x = self.pool(F.relu(self.conv1(x)))x = self.pool(F.relu(self.conv2(x)))x = x.view(-1, 32 * 32 * 32)x = F.relu(self.fc1(x))x = self.fc2(x)return x# 预测函数
def predict(image_path, model, class_names):# 定义图像预处理# transform = transforms.Compose([# transforms.Resize((128, 128)), # 统一大小# transforms.ToTensor(),# ])transform = transforms.Compose([transforms.Resize((128, 128)),transforms.Lambda(lambda x: x.convert('RGB')), # 确保转换为RGB模式transforms.ToTensor(),])# 加载和预处理图像image = Image.open(image_path)image = transform(image).unsqueeze(0) # 增加批次维度# 将图像输入模型进行预测model.eval() # 设置模型为评估模式with torch.no_grad():outputs = model(image)# print(outputs)_, predicted = torch.max(outputs, 1)print(predicted.item())# 返回预测的类别return class_names[predicted.item()]def predict_interface(test_image_path):# 加载训练好的模型num_classes = 5 # 根据你的数据集类别数量修改model = SimpleCNN(num_classes)model.load_state_dict(torch.load(MODEL_PATH))model.eval()# 类别名称(根据你的数据集修改)class_names = ['中黑盲蝽', '台龟甲', '叶甲', '宽棘缘椿', '小长蝽',] # 替换为实际类别名称# 测试预测# test_image_path = '3.jpg' # 替换为测试图像的路径predicted_class = predict(test_image_path, model, class_names)return predicted_classif __name__ == "__main__":# 加载训练好的模型num_classes = 5 # 根据你的数据集类别数量修改model = SimpleCNN(num_classes)model.load_state_dict(torch.load('disease_model.pth'))model.eval()# 类别名称(根据你的数据集修改)class_names = ['中黑盲蝽', '台龟甲', '叶甲', '宽棘缘椿', '小长蝽',
] # 替换为实际类别名称# 测试预测test_image_path = '3.jpg' # 替换为测试图像的路径predicted_class = predict(test_image_path, model, class_names)print(f'Predicted class: {predicted_class}')