动物识别系统-Python

项目介绍

动物识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对18种动物数据集进行训练,最后得到一个识别精度较高的模型。并基于Django框架,开发网页端操作平台,实现用户上传一张动物图片识别其名称。目前可识别的动物有:'乌龟', '云豹', '变色龙', '壁虎', '狞猫', '狮子', '猎豹', '美洲狮', '美洲虎', '老虎', '蜥蜴', '蝾螈', '蟾蜍', '豹猫', '钝吻鳄', '雪豹','非洲豹', '鬣蜥'。本系统是一个完整的人工智能,机器学习,深度学习项目,包含训练预测代码,训练好的模型,WEB网页端界面,数据集等相关资料。
动物识别系统-Python_第1张图片
动物识别系统-Python_第2张图片
动物识别系统-Python_第3张图片

演示视频

视频地址:https://www.yuque.com/ziwu/yygu3z/uwc4sl67ox7x4lyr

技术栈

● Python,主要语言,建议Python3.9版本
● TensorFlow,深度学习,算法模型搭建框架,建议目前最新版本2.12
● Django,网页开发框架,建议目前最新版本4.2

部分代码


def upload_img(request):
    # 图片上传
    file = request.FILES.get('file')
    file_name = file.name
    file_name = '{}.{}'.format(int(time.time()), str(file_name).rsplit('.')[-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 JsonResponse({'code': 200, 'data': {'url': upload_url}})


def check_img(request):
    # 图片检测
    image_url = request.POST.get('img_url')
    if not image_url:
        return JsonResponse({'code': 400, 'message': '缺少必传的参数'})
    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 JsonResponse({'code': 200, 'data': {'pred_name': pred_name}})

实现步骤

● 首先收集需要识别的种类数据集
● 然后基于TensorFlow搭建ResNet50卷积神经网络算法模型,并通过多轮迭代训练,最终得到一个精度较高的模型,并将其保存为h5格式的本地文件。
● 基于Django开发网页端可视化操作平台,HTML、CSS、BootStrap等技术搭建前端界面。Django作为后端逻辑处理框架。Ajax实现前后端的数据通信。

你可能感兴趣的:(动物识别系统-Python)