基于python农作物病害图片识别(pytorch中如何预测医学图像并保存)

技术Pytorch中如何实现病虫害图像分类本篇文章给大家分享的是有关Pytorch中如何实现病虫害图像分类,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、

本文是关于如何在Pytorch中实现害虫图像分类。边肖觉得很实用,所以分享给大家学习。希望你看完这篇文章能有所收获。话不多说,我们和边肖一起看看。

00-1010

一、pytorch框架

pyTorch是一个基于Torch的开源Python机器学习库,用于自然语言处理等应用。

2017年1月,脸书人工智能研究院(FAIR)推出了基于Torch的PyTorch。它是一个基于Python的可持续计算包,提供了两个高级功能:

1.具有强大GPU加速的张量计算(如NumPy)。

2.具有自动微分系统的深度神经网络。

1.1、概念

有很多不同,本博客只简单介绍其中一部分。以图片形式展示。

前者是机器学习的过程。

后者是深度学习的过程。

Pytorch中如何实现病虫害图像分类

1.2、机器学习与深度学习的区别

Pytorch中如何实现病虫害图像分类

00-1010本实验使用coco数据集中的病虫害数据集。分为训练文件Traindata和测试文件TestData。

TrainData有9个类别,每个类别有100张图片。

TestData有9个类别,每个类别有10张图片。

我下一篇博客中的开源数据集。

以下是我的数据集的截图:

Pytorch中如何实现病虫害图像分类

1.3、在python中导入pytorch成功截图

二、数据集

进口火炬

from orch . utils . dataimportdataset,DataLoader

importnumpayasnp

importmatplotlib

进口

importcv2

from PiLiimportimage

importtorchvision . transformsasstransforms

import torch . optima optim

from orch . autogradimportvariable

importtorch.nnasnn

import torch . nn . FunctionAsf

从测试。CNNimportNet

importjson

从test.train _ dataimportmydataset,pad _ image

三、代码复现

#构建神经网络

Net (nn.module) : #定义了网络模块。

def__init__(self):

超级(网,自我)。__init__()

#卷积,图片有3层,6个特征,5*5长宽的像素,每隔一步跳转。

self.conv1=nn。Conv2d(3,6,5)

#//(conv1):Conv2d(3,6,kernel_size=(5,5),stride=(1,1))

Self.pool=nn。最大池2d(2,2)#最大池

#//(

pool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
        self.conv2 = nn.Conv2d(6, 16, 5)#卷积
        #//(conv2): Conv2d(6, 16, kernel_size=(5, 5), stride=(1, 1))
        self.fc1 = nn.Linear(16*77*77, 120)#全连接层,图片的维度为16,
        #(fc1): Linear(in_features=94864, out_features=120, bias=True)
        self.fc2 = nn.Linear(120, 84)#全连接层,输入120个特征输出84个特征
        self.fc3 = nn.Linear(84, 7)#全连接层,输入84个特征输出7个特征
 
   def forward(self, x):
        print("x.shape1: ", x.shape)
        x = self.pool(F.relu(self.conv1(x)))
        print("x.shape2: ", x.shape)
        x = self.pool(F.relu(self.conv2(x)))
        print("x.shape3: ", x.shape)
        x = x.view(-1, 16*77*77)
        print("x.shape4: ", x.shape)
        x = F.relu(self.fc1(x))
        print("x.shape5: ", x.shape)
        x = F.relu(self.fc2(x))
        print("x.shape6: ", x.shape)
        x = self.fc3(x)
        print("x.shape7: ", x.shape)
        return x

3.3、测试代码

img_path = "TestData/test_data/1/Apple2 (1).jpg" #使用相对路径
image = Image.open(img_path).convert('RGB')
image_pad = pad_image(image, (320, 320))
input = transform(image_pad).to(device).unsqueeze(0)
output = F.softmax(net(input), 1)
_, predicted = torch.max(output, 1)
score = float(output[0][predicted]*100)
print(class_map[predicted], " ", str(score)+" %")
plt.imshow(image_pad) # 显示图片

四、训练结果

4.1、LOSS损失函数

Pytorch中如何实现病虫害图像分类

4.2、 ACC

Pytorch中如何实现病虫害图像分类

4.3、单张图片识别准确率

Pytorch中如何实现病虫害图像分类

以上就是Pytorch中如何实现病虫害图像分类,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/157911.html

(0)

相关推荐

  • Linux进程的内存管理举例分析

    技术Linux进程的内存管理举例分析这篇文章主要介绍“Linux进程的内存管理举例分析”,在日常操作中,相信很多人在Linux进程的内存管理举例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

    攻略 2021年11月23日
  • fabric开发流程(fabric网络架构设置)

    技术Fabric网络环境启动过程的示例分析小编给大家分享一下Fabric网络环境启动过程的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!fabric网络环境启动过程详解之前我们讲到 fabric

    攻略 2021年12月25日
  • 班门弄斧的主人公是谁,谁有《班门弄斧》的释字和翻译

    技术班门弄斧的主人公是谁,谁有《班门弄斧》的释字和翻译释义班:鲁班班门弄斧的主人公是谁,春秋时期鲁国人,著名的木匠。在鲁班门前舞弄斧子。
    比喻在行家面前卖弄本领,不自量力。
    出处唐·柳宗元《王氏伯仲唱和诗序》:“操斧于班

    生活 2021年10月25日
  • windows php闆嗘垚鐜(windows鎼缓php鐜)

    技术Win2008系统如何安装php环境这篇文章主要介绍了Win2008系统如何安装php环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    攻略 2021年12月15日
  • python模块shutil函数怎么用

    技术python模块shutil函数怎么用小编给大家分享一下python模块shutil函数怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!本文大纲os模块是Python标准库中一个重要的模块,里面

    攻略 2021年10月27日
  • html中的b标签是什么意思

    技术html中的b标签是什么意思这篇文章主要介绍“html中的b标签是什么意思”,在日常操作中,相信很多人在html中的b标签是什么意思问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”htm

    攻略 2021年11月17日