当前位置:   article > 正文

计算机毕业设计:垃圾分类识别系统 深度学习+神经网络CNN算法 django框架 计算机视觉_基于深度学习的垃圾分类算法与实现

基于深度学习的垃圾分类算法与实现

[毕业设计]2023-2024年最新最全计算机专业毕设选题推荐汇总

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人 。

摘 要

垃圾分类识别系统,通过机器学习库tensorflow作为模型构建框架,使用CNN卷积神经网络构建模型,并通过对数据集的处理划分测试集和训练集,通过多轮迭代得到训练好的模型,再将模型进行封装,并开发一个WEB界面系统用于用户的操作,最后实现用户在WEB页面中输入一张垃圾分类图片,系统以弹窗的形式显示该垃圾的信息

项目运行结果

1、系统首页
在这里插入图片描述

2、识别界面
在这里插入图片描述

3、垃圾分类识别结果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4、数据管理界面

在这里插入图片描述

垃圾分类识别系统主要界面分为三个,系统说明首页、用户输入图片检测页面、管理人员后台信息管理页面
通过启动Django应用程序,打开网页输入127.0.0.1:8000可进入系统说明首页。

二、算法模块实现

本模块主要实现对垃圾分类识别系统中模型训练部分。通过对数据集的处理,搭建网络模型,迭代训练等阶段最后得到一个精准的预测模型。其总体流程图
在这里插入图片描述

算法模块总体流程图
一个好的模型开始需要提供一个好的数据集,本系统中采用开源的垃圾分类数据集,该数据集中有着13675张图片。

部分代码

import os
from django.conf import settings
from django.shortcuts import render
from .models import ImageCheck
from utils import restful
from utils.image_check import check_handle
from web_system.settings import admin_title, index_info
import time


def index(request):
    context = {
        'title': admin_title,
        'index_info': index_info
    }

    return render(request, 'index.html', context=context)


def check(request):
    return render(request, 'check.html')


def upload_img(request):
    # 图片上传
    file = request.FILES.get('file')
    file_name = file.name
    file_name = '{}.{}'.format(int(time.time()), str(file_name).split('.')[-1])

    with open(os.path.join(settings.MEDIA_ROOT, file_name), 'wb') as f:
        for chunk in file.chunks():
            f.write(chunk)
    upload_url = request.build_absolute_uri(settings.MEDIA_URL + file_name)
    ImageCheck.objects.create(file_name=file_name, file_url=upload_url)
    return restful.ok(data={'url': upload_url})


def check_img(request):
    # 图片检测
    image_url = request.POST.get('img_url')
    if not image_url:
        return restful.params_error(message='缺少必要的参数image_url')
    image_name = image_url.rsplit('/')[-1]
    image_path = os.path.join(settings.MEDIA_ROOT, image_name)
    pred_name = check_handle(image_path)

    obj = ImageCheck.objects.filter(file_name=image_name).last()
    obj.check_result = pred_name
    obj.save()
    return restful.ok(data={'pred_name': pred_name})

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51

源码获取:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/464679
推荐阅读
相关标签