介绍
水果识别系统,应用 Python 作为次要开发语言,基于深度学习 TensorFlow 框架,搭建卷积神经网络算法。并通过对 5 种垃圾数据集进行训练,最初失去一个辨认精度较高的模型。并基于 Django 框架,开发网页端操作平台,实现用户上传一张图片辨认其名称。
成果展现
演示视频
视频 + 源码:https://www.yuque.com/ziwu/yygu3z/sr43e6q0wormmfpv
相干代码
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 实现前后端的数据通信。