毕业设计-基于深度学习的钢印字符检测算法系统 YOLO python 卷积神经网络 人工智能

使用yolov8进行文本行检测 yolov8不使用DFL 阅读详情

 目录

 前言

设计思路

一、课题背景与意义

二、算法理论原理

2.1 YOLOv5算法

2.2 输出改进

三、检测的实现

3.1 数据集

3.2 实验环境搭建

3.3 实验及结果分析

实现效果图样例

最后


前言

       📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充满挑战。为帮助大家顺利通过和节省时间与精力投入到更重要的就业和考试中去,学长分享优质的选题经验和毕设项目与技术思路。

        🚀对毕设有任何疑问都可以问学长哦!

         选题指导:

        最新最全计算机专业毕设选题精选推荐汇总

        大家好,这里是海浪学长毕设专题,本次分享的课题是

        🎯基于深度学习的钢印字符检测算法系统

设计思路

一、课题背景与意义

压印字符通过字符模具对钢板压印所产生,具有不易磨损,可长期保存的优点,因此在工业制作上得到广泛使用。传统的人工记录方法需要大量的劳动力,不但耗时耗力,而且容易出现记录错误等问题。因此,研究钢印字符智能识别方法对于提高压印字符的实时识别速率有着积极的意义。

二、算法理论原理

2.1 YOLOv5算法

YOLOv5算法使用参数depth_multiple和width_multiple来调整主干网络的宽度和深度,从而得到4个版本的模型,分别是YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x。YOLOv5s是最简单的版本。它具有最小的模型参数和最快的检测速度。由以下部分组成: focus、Conv-Bn-Leakyrelu(CBL)和CSP1_x、CSP2_x和空间金字塔池化(SPP)模块。Focus模块主要包含4个平行切片层来处理输入图像。CBL模块包含一个卷积层、批量归一化层和hard-wish激活函数。CSP1_x块包含CBL块和x个剩余连接单元。CSP2_x块包含x个CBL块。SPP块主要包含3个maxpool层。

毕业设计-基于深度学习的钢印字符检测算法系统 YOLO python 卷积神经网络 人工智能

2.2 输出改进

虽然经过算法检测,可以得到钢印字符的种类,但是所得到的结果是乱序的,只有种类而无序列。因此,为了得到与钢印一致的生产编号,需要对检测到的字符位置信息进行排序,本研究采用冒泡排序法,对位置信息按从小到大顺序进行排序,从而把相对应的字符从左到右排列,从而得到准确的生产标号。

三、检测的实现

3.1 数据集

由于没有公开的钢印字符数据集,根据编码的编制要求,制作了相应的带有字符编号的试验部件,并用相机对整块部件拍摄图片。通过对已经打上字符编号的钢材部件进行拍摄,得到422张图像。

毕业设计-基于深度学习的钢印字符检测算法系统 YOLO python 卷积神经网络 人工智能

为了保证样本的多样性,使其符合现实生产过程中采集到的图像,对现有的数据集进行扩充。采用图像模糊化,图像加亮,图像变暗,图像加噪等方法对已有图像进行处理,从而得到2,110张图像,并将其作为数据集,其中1,855张作为训练集,255张作为测试集。

毕业设计-基于深度学习的钢印字符检测算法系统 YOLO python 卷积神经网络 人工智能

3.2 实验环境搭建

实验平台为PC端,PC配置为AMD Ryzen 7 3700X 8-Core Processor,显卡/GPU为NVIDIA GeForce RTX 3060,16GB运行内存。cuda版本是11.2,集成开发环境是Pycharm,编程语言是Anaconda Python 3.9。

YOLOv5x模型训练参数的设置,批处理大小(batch Size)设为8,迭代次数(epochs)设为100次,学习率(learning_rate)设为0.001。

3.3 实验及结果分析

在字符识别前需要对YOLOv5网络进行训练,而经过训练获得的网络模型的优劣程度将直接影响到识别的效果是否达到满意的程度。在对训练集进行训练时,YOLOv5网络通过计算损失函数CIOU_Loss来判断训练的效果。为了得到较好的训练效果,所需求的CIOU_Loss值越小越好。

毕业设计-基于深度学习的钢印字符检测算法系统 YOLO python 卷积神经网络 人工智能

使用YOLOv5网络进行训练得到的loss函数曲线如下图。在训练结束后,可得到包括最佳训练权重、字符识别混淆矩阵、各类标签个数等信息数据。

毕业设计-基于深度学习的钢印字符检测算法系统 YOLO python 卷积神经网络 人工智能

混淆矩阵元素:

毕业设计-基于深度学习的钢印字符检测算法系统 YOLO python 卷积神经网络 人工智能

训练结束后的P-R曲线如下图所示:曲线围起的面积即为AP值,可看到0~9每个类别的AP值均达到90%以上,mAP为所有类别AP均值,且达到97.4%,这表明采用YOLOv5网络分类得到的效果很好。

毕业设计-基于深度学习的钢印字符检测算法系统 YOLO python 卷积神经网络 人工智能

部分代码如下:

import cv2
import numpy as np
import tensorflow as tf

# 加载预训练的字符检测模型
model = tf.keras.models.load_model('character_detection_model.h5')

# 设置字符类别标签
class_labels = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']

# 打开钢印图像
image = cv2.imread('steel_stamp_image.jpg')

# 对图像进行预处理,如调整大小、归一化等
preprocessed_image = preprocess_image(image)

# 使用字符检测模型进行预测
predictions = model.predict(np.expand_dims(preprocessed_image, axis=0))

# 提取预测结果
character_class_ids = np.argmax(predictions, axis=1)
predicted_characters = [class_labels[class_id] for class_id in character_class_ids]

# 在图像上绘制识别结果
image = draw_characters(image, predicted_characters)

# 显示图像
cv2.imshow('Steel Stamp Character Detection', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

创作不易,欢迎点赞、关注、收藏。

毕设帮助,疑难解答,欢迎打扰!

最后

用YOLOV4实现街景字符编码识别 这次 阅读详情

相关推荐

《深度学习中的字符识别在工业视觉中的实际应用》

使用Python语言+OpenCv+Pytorch在pycharm2019编程环境中实现深度学习中的卷积神经网络(CNN)在工业视觉中的实际应用。

qq_50857357的博客 2894

yolov5来打tianchi中的街景字符编码识别

文章目录1运行机器2前期准备3下载数据4环境搭建5处理数据5.1教程训练coco128(可跳过)5.2创建yaml文件5.3 查看coco128label格式(可跳过) 1运行机器 显卡:2080ti×1 系统:ubuntu 20.04 cpu:Intel® Core™ i7-10700KF CPU @ 3.80GHz 2前期准备 1安装显卡驱动 2安装cuda 3安装cudnn 4安装vscode 5安装anaconda 6安装git 3下载数据 https://tianchi.aliyun.com/co

roymustang的博客 2111

YOLOv5+PaddleOCR手写签名识别

使用YOLOv5+paddocr实现手写签名的识别

weixin_53665577的博客 5203

采用OpenCV和深度学习的钢印识别

采用OpenCV和深度学习的钢印识别 [这个帖子标题党了很久,大概9月初立贴,本来以为比较好做,后来有事情耽搁了,直到现在才有了一些拿得出手的东西。肯定不会太监的。好,转入正题:] 原始需求: 系统将使用手机等设备利用光学字符识别技术实现钻具编号自动识别,减少作业人员的工作量 隐含分析: 对场景本身来说,要进行人工核对(或者修改)是必不可少的,因此工作量未必是减少。但是该场景具有智能化的...

sdust_dx的专栏 5841

【已解决】​基于yolo3 与crnn 实现中文自然场景文字检测及识别chineseocr​的测试与跑通

我们知道,数据的解码和编码都是成对的,且需要采取相同的编码方式,否则解码的数据就会和原数据不一样…其实conda install 和pip install 都可以达到类似的效果,但是二者还是有些不同的,为了避免安装包的混乱,建议用pip来进行安装,具体内容参考我之前的一篇博客。这个时候我们就明白了,在前面应该有一个编码的操作,但我们就需要全部看代码了,这样会比较麻烦,因为有的时候当我们不给其编码,也可以按照需要解码成一定的格式。实际上,这个在项目中的权重文件是可以找到的,如果找不到可以扣我。

BetrayFree的博客 1396

使用Python和YOLOv5识别文字语序点选验证码

1. 环境准备首先,确保你已安装Python环境。

tmocr的博客 1573

yolo+ocr集装箱字符识别(pytorch版本)

yolo+ocr集装箱字符识别(pytorch版本)

weixin_50862344的博客 1万+

YOLOv5文字点选验证码识别

数据是在点选验证码的应用场景中抓取得到的,带有标注的图片355张,用于测试的无标注图片14张,另有纯背景图片15张。标注包含有语序的文字,分类为‘char’:以及图片中无序的文字,分类为‘target’:每个目标详细信息在‘shapes’列表中,对应的真实框在‘points’键值下,数据为左上角和右下角坐标同时,在键值‘text’下保存了每个目标对应的汉字,后续的特征提取训练会使用到. . ."text": "鸡",},. . .In [3]# 数据集解压!In [ ]# 查看文件结构。

斌擎科技 4066

毕业设计-基于机器学习的钢印字符识别系统 YOLO python 卷积神经网络 人工智能

毕业设计-基于深度学习的钢印字符检测算法系统,作为计算机毕业设计的关键内容。钢印字符的检测一直是工业生产中的重要任务,而传统方法在处理复杂的钢印字符时存在一定的局限性。基于深度学习的方法在该领域展现出了巨大的潜力。本研究提出了一种有效的钢印字符检测算法系统,利用深度学习模型进行字符的准确检测和识别。通过构建合适的数据集并采用适当的图像处理技术,我们能够实现对钢印字符的高效检测和精确定位。该系统在实验中表现出了优异的性能,并具备广泛的应用前景。

2301_79555157的博客 1299

某教育平台线上用户流失分析

本项目基于某教育平台的用户登录信息、用户个人信息以及用户课程学习记录三信息表,挖掘了平台流量以及用户流失等信息。使用python对数据进行预处理,使用tableau进行数据可视化分析。该教育平台正值窗口期,平台流量没有良好的留存水平,但有良好的发展趋势,需要深入分析用户留存率低,做好招新促活营销。该教育平台的基本盘在广东、湖北、河南、贵州等省份,线上教育的潜在用户可能更多分布在线下教育资源不充足、受疫情影响更为严重的地区。

fhy12的博客 1300

STM32_WS2811驱动

STM32的WS2811驱动

健身房 2840

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的手写数字和符号识别(深度学习训练+UI界面+训练数据集)

介绍了运用深度学习的手写数字和符号识别系统,提供完整的实现代码见文末。该系统基于强大的YOLOv8算法,并对比了YOLOv7、YOLOv6、YOLOv5,分析其性能指标,如mAP、F1 Score等。深入解释了YOLOv8的原理,提供相应的Python代码、训练数据集,集成了PySide6的UI界面,以及基于SQLite数据库的登录注册界面。系统能够精准检测手写数字和符号,支持图片、图片文件夹、视频文件及摄像头检测,包含热力图或柱状图分析、标记框类别、类别统计、可调Conf、IOU参数和结果可视化等功能。

思绪无限的博客 1万+

STM32F4_LCD显示汉字

LCD显示汉字和显示图片、数字、字符的原理是一样的,都是将汉字、图片、数字以及字符转换点阵,进而通过函数扫描点阵在LCD上显示;

light_2025的博客 1万+

自然场景OCR检测(YOLOv3+CRNN)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 加粗样式**...

fanfan的博客 3万+

SAP 替代关系完全替代简介

这里产生了成品物料的计划订单,我们查看计划订单中BOM的变化,如下图可以看到物料的需求仍然落在了优先级为1的这个302300005555这个物料上面,并没有考虑到302300006666的这个库存,和我们理解的MRP的完全替代不一样,按我们的理解需求应该是要落在302300006666这个物料料,但是MRP计算后并没有这样进行分配。最近用户在对长周期物料进行备料的时候又提出替代料的问题,主料库存不足的时候需要考虑替代料的在途库存,经常会忘了SAP标准的替代料逻辑,这次一次性把这个逻辑写清楚。

我小时候很黑的博客 1744

172、摄像头振动与异响分析:VCM 共振、OIS 机械噪声的用户体验改善

摘要: 本文深入探讨了手机摄像头模组中VCM(音圈马达)与OIS(光学防抖)系统产生的振动异响问题及其解决方案。通过实际案例,分析了VCM弹簧片共振、OIS悬丝机械噪声以及系统级共振的成因,提出了硬件改进(如弹簧片厚度调整、阻尼材料应用)、驱动优化(PWM频率微调、软启动配置)和算法避让等综合解决策略。特别强调了量产阶段隐蔽性问题的排查技巧,包括扫频测试、机械阻尼处理和用户体验优化方法(如频率掩蔽)。作者建议工程师避免过度依赖仿真数据,重视实物测试,并与声学团队协作,以解决这类"玄学"问题,提升用户感知体验

sundong_81的博客 128

基于PaddleOCR的工件字符识别

了解PaddleOCR,并用工件字符进行训练识别

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 2186

使用STARTER V5.6软件将项目文件下载到S120驱动器控制单元CF卡中的具体方法演示

使用STARTER V5.6软件将项目文件下载到S120驱动器控制单元CF卡中的具体方法演示

Robot_PLC_HMI_Automation 1913

【深度学习】目标检测算法 YOLO 最耐心细致的讲解

YOLO 是 2016 年提出来的目标检测算法,在当时比较优秀的目标检测算法有 R-CNN、Fast R-CNN 等等,但 YOLO 算法还是让人感到很新奇与兴奋。 YOLO 是 You only look once 几个单词的缩写,大意是你看一次就可以预测了,灵感就来自于我们人类自己,因为人看一张图片时,扫一眼就可以得知这张图片不同类型目标的位置。 YOLO 胜在它的简单与快速。 YOLO 是...

frank 的专栏 2万+

C++性能优化:深入理解缓存一致性与伪共享

在现代多核处理器的世界里,理解缓存一致性和伪共享就像理解一个复杂社会系统的运作规则。正如心理学家阿德勒所说:"人的行为总是有目的的",CPU缓存的每一次同步也都有其深层的硬件逻辑。本文将带你深入探索这些看不见的性能杀手,以及如何在实际项目中与它们优雅共处。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 935

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

YOLOv8中国车牌字符检测与识别项目

YOLOv8中国车牌字符检测与识别项目

QQ_1309399183的博客 3022

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【项目复现】文字点选验证码识别

随着互联网技术的快速发展,网络安全问题日益严重。为了保护网站和在线服务的安全,许多网站采用了验证码技术来防止恶意攻击,如防止暴力破解、垃圾邮件发送等。文字点选验证码是其中一种常见的验证码形式,它要求用户识别并选择出图片中的特定文字,以确认操作者是人类而非自动化程序。然而,随着深度学习和计算机视觉技术的进步,传统的文字点选验证码逐渐暴露出安全隐患。一些先进的算法和技术已经能够破解这类验证码,从而绕过安全防护。因此,研究和开发更高效、更安全的文字点选验证码识别技术变得尤为重要。

Derek_Robbie的博客 2271

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

【项目】YOLOv5+PaddleOCR实现艺术字验证码识别

使用深度学习的方法实现艺术字类验证码的点选问题

weixin_46221106的博客 3377

【完整源码+数据集+部署教程】气罐刻印信息识别系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]

【完整源码+数据集+部署教程】气罐刻印信息识别系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]

weixin_43860634的博客 791

基于yolov5全系列模型【n/s/m/l/x】开发构建汉字检测识别系统,调整图像尺寸分别对别416x416和640x640不同分辨率下的性能结果

基于yolov5全系列模型【n/s/m/l/x】开发构建汉字检测识别系统,调整图像尺寸分别对别416x416和640x640不同分辨率下的性能结果

Together_CZ的博客 3566
上一篇: 毕业设计-基于深度学习自习室人数监测系统 YOLO python 机器学习 目标检测 人工智能 算法
下一篇: 2023年-2024年 最新信息安全 毕业设计 选题大全 汇总
Mini_hailang_IT
博客等级 码龄9年 5936粉丝 640原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值