基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题

    • 1 简介
    • 2 环境搭建
      • 2.1 Pycharm安装
      • 2.2 Conda安装
      • 2.3 Tensorflow-gpu安装
        • 2.3.1 cuda安装
        • 2.3.2 cuDNN安装
        • 2.3.3 tensorflow-gpu安装
    • 3 系统运行

1 简介

这里是一只从零开始机器学习的小白,搭建的这个果蔬识别系统来自up主肆十二-的: 果蔬识别系统,不过up主使用cpu进行训练,这里将其修改为使用gpu训练,在搭建环境的过程中出现了许多问题,特记录下来。

该系统界面如下图所示,上传图片后即可识别是哪一种水果。

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第1张图片

代码: vegetables

数据集在代码里

2 环境搭建

搭建过程可参考博客: 水果蔬菜识别系统-基于tensorflow2.3开发

以下主要是搭建过程中遇到的问题。

2.1 Pycharm安装

pycharm下载地址: PyCharm (社区版即可,安装时复选框全勾上)
基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第2张图片

2.2 Conda安装

下载地址: Conda

下载哪个版本的按理说没啥影响,我下载的版本如下图所示:
基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第3张图片
安装时勾选这个,可以自动配置环境变量,比较方便一些

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第4张图片
安装完毕后,打开命令行,输入conda env list

显示下列信息则表示安装成功且环境配置完成

在这里插入图片描述

2.3 Tensorflow-gpu安装

tensorflow-gpu安装过程参考博客: tensorflow-gpu版本安装教程(过程详细)

安装步骤:cuda -> cuDNN -> tensorflow-gpu

2.3.1 cuda安装

上述链接里很详细,因此仅记录下本机安装的版本

首先是本机的驱动配置CUDA 11.6.134 driver
基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第5张图片

下载链接: CUDA Toolkit

安装版本11.6.0
基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第6张图片

2.3.2 cuDNN安装

下载链接: cuDNN

下载版本,直接最新,这可能也为之后遇到的问题埋下了伏笔

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第7张图片

tensorflow-gpu、Python、CUDA、cuDNN之间的版本对应关系查看: link

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第8张图片

综上:本机选择安装的是

tensorflow_gpu:2.6.0 -> 2.8.0 (因为安装了2.6.0报错,所以改成了2.8.0,这一点在后面会提到)

python:3.7

cuDNN:8.4

CUDA:11.6.0

2.3.3 tensorflow-gpu安装

cmd打开命令行

(1)为加速下载速度,切换镜像源

pip config set global.index-url https://opentuna.cn/pypi/web/simple

(2)创建虚拟环境

conda create -n tf2.6 python==3.7

(3)激活虚拟环境

conda activate tf2.6 

(4)安装tensorflow-gpu (起初安装的是2.6.0版本,后来报错改为2.8.0即可)

pip install tensorflow-gpu==2.6.0

(5)测试是否安装成功

python
import tensorflow as tf
tf.config.list_physical_devices('GPU')

如下图所示即为安装成功

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第9张图片

(6)安装果蔬识别系统所需的包

pip install pyqt5 -i https://mirror.baidu.com/pypi/simple
pip install pillow -i https://mirror.baidu.com/pypi/simple 
pip install opencv-python -i https://mirror.baidu.com/pypi/simple 
pip install matplotlib -i https://mirror.baidu.com/pypi/simple 

3 系统运行

在Pycharm中打开项目

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第10张图片

添加刚才建立的虚拟环境

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第11张图片

打开window.py,运行即可
基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第12张图片

发生报错

ImportError: cannot import name ‘dtensor’ from ‘tensorflow.compat.v2.experimental’

解决方案参考: tensorflow 2.x常见问题

本机解决方案:将tensorlfow更新为2.8

pip install tensorflow==2.8 -i https://pypi.tuna.tsinghua.edu.cn/simple

再次运行,又发生报错

在这里插入图片描述

解决方案参考: 解决Loaded cuDNN version 8400加载问题

本机解决方案:
(1)下载 zlibwapi

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第13张图片

(2)将下载后的安装包解压,里面的三个文件加入命名“zlib123dllx64”的文件夹

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第14张图片

(3)将zlib123dllx64文件夹移入C:\Program Files (x86)路径下,将此路径设置在path中

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第15张图片

基于tensorflow-gpu的果蔬识别系统搭建过程及遇到的问题_第16张图片

至此,问题解决,成功运行

你可能感兴趣的:(tensorflow,python,人工智能,深度学习,conda)