【ubuntu下验证下菜品识别,训练,部署,验证 CNN + TensorFlow / PyTorch】

news/2025/2/9 5:17:15 标签: cnn, tensorflow

下来我会详细介绍如何在 Ubuntu 上运行你训练和部署的 菜品识别模型,确保每一步都能理解并能在你的系统中运行。

  1. 环境准备
    1.1 安装必要的软件
    在 Ubuntu 上,首先需要安装 Python 和相关的依赖库:

更新系统: 打开终端,运行以下命令:

bash

sudo apt update && sudo apt upgrade -y
安装 Python 及 pip:

确保你的系统已经安装了 Python 3 和 pip,如果没有,可以使用以下命令安装:

bash

sudo apt install python3 python3-pip
安装 TensorFlow 和其他依赖:

使用 pip 来安装 TensorFlow 和其他必需的库:

bash

pip3 install tensorflow numpy matplotlib pillow scikit-learn
如果你有 GPU,确保你已经安装了 CUDA 和 cuDNN。你可以参考 TensorFlow GPU 安装文档 来完成这一步。

  1. 数据准备
    2.1 下载数据集
    你可以使用 Food-101 数据集,它包含 101 类菜品的图像。首先,下载并解压这个数据集:

下载数据集:

bash

wget https://data.vision.ee.ethz.ch/cvl/food-101.tar.gz
解压数据集:

bash

tar -xvzf food-101.tar.gz
解压后的文件夹将是 food-101,其中包含 train 和 test 文件夹,分别用于训练和验证。

2.2 数据预处理
在 TensorFlow 中,你可以使用 ImageDataGenerator 来处理和增强数据。以下是处理图像数据的代码:

python

import tensorflow as tf
from tensorflow.keras.preprocessing.image import ImageDataGenerator

# 设置训练和验证数据集路径
train_dir = "food-101/train"
val_dir = "food-101/test"

# 定义数据预处理和增强方法
train_datagen = ImageDataGenerator(
    rescale=1./255,  # 归一化图像
    rotation_range=20,  # 随机旋转
    width_shift_range=0.2,  # 水平平移
    height_shift_range=0.2,  # 垂直平移
    shear_range=0.2,  # 剪切变换
    zoom_range=0.2,  # 随机缩放
    horizontal_flip=True,  # 水平翻转
    fill_mode="nearest"  # 填充方式
)

val_datagen = ImageDataGenerator(rescale=1./255)

# 加载并进行数据生成
train_generator = train_datagen.flow_from_directory(
    train_dir,
    target_size=(150, 150),  # 统一大小
    batch_size=32,  # 每批次32张图片
    class_mode="categorical"  # 分类任务
)

val_generator = val_datagen.flow_from_directory(
    val_dir,
    target_size=(

http://www.niftyadmin.cn/n/5845530.html

相关文章

Linux 调用可执行程序

Linux 调用可执行程序 1. system() 函数1.1 system() 函数的声明1.2 system() 函数的不同场景返回值1.3 system() 函数的代码示例 2. exec() 函数族2.1 exec() 函数族的声明2.2 exec() 函数族执行失败的情况2.3 exec() 函数族的代码示例 3. exec() 与 system() 的区别以及使用注…

B+树原理详解及C语言实现

目录 B树的原理 B树的操作过程(图形化演示) B树的应用场景 B树与B树的对比 C语言实现及应用实例 文件结构 总结 B树的原理 B树是B树的一种变体,广泛应用于数据库和文件系统中。其原理和特点如下: 数据结构:B树…

【实用技能】如何借助3D文档控件Aspose.3D, 在Java中无缝制作 3D 球体

概述 创建 3D 球体是 3D 图形设计的一个基本方面。无论您是在开发游戏、模拟还是可视化,无缝创建 3D 球体模型的能力都至关重要。Aspose.3D通过提供强大的 3D 图形 SDK 在各个行业中发挥着重要作用。它允许开发人员轻松创建、操作和转换 3D 模型。此 SDK 对于希望将…

centos 7.x无法安装kong gateway 3.9X的解决方案

一、问题背景 笔者想在centos7.9上通过yum的方式安装kong gateway 3.9X,安装官网安装指导 curl -1sLf "https://packages.konghq.com/public/gateway-39/config.rpm.txt?distroel&codename$(rpm --eval %{rhel})" | sudo tee /etc/yum.repos.d/kong…

自动化测试工具:selenium

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 Selenium是一个用于Web应用程序测试的工具。是一个开源的Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键…

Java 读取 Word 模板文档并替换内容生成新文档

嘿,朋友们!在实际开发中,经常会遇到需要根据 Word 模板生成特定文档的需求,比如合同、报告等。咱们可以使用 Apache POI 库来读取 Word 模板文档,然后替换其中的指定内容,最后生成新的文档。下面我就详细给…

计算机毕业设计SparkStreaming+Kafka广告推荐系统 广告预测 广告数据分析可视化 广告爬虫 大数据毕业设计 深度学习 机器学习

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…

vue3学习四

七 标签ref属性 设置标签ref属性&#xff0c;类似于设置标签id。 普通标签 <template name"test4"> <p ref"title" id"title" click"showinfo">VIEW4</p> <View3/><script lang"ts" setup>…