当前位置: 首页 > 编程笔记 >

基于MATLAB神经网络图像识别的高识别率代码

吕灿
2023-03-14
本文向大家介绍基于MATLAB神经网络图像识别的高识别率代码,包括了基于MATLAB神经网络图像识别的高识别率代码的使用技巧和注意事项,需要的朋友参考一下

MATLAB神经网络图像识别高识别率代码

I0=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\0 (1).png'));
I1=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\1 (1).png'));
I2=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\2 (1).png'));
I3=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\3 (1).png'));
I4=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\4 (1).png'));
I5=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\5 (1).png'));
I6=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\6 (1).png'));
I7=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\7 (1).png'));
I8=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\8 (1).png'));
I9=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\9 (1).png'));
%以上数据都是归一化好的数据。

P=[I0',I1',I2',I3',I4',I5',I6',I7',I8',I9'];
T=eye(10,10);
%%bp神经网络参数设置
net=newff(minmax(P),[144,200,10],{'logsig','logsig','logsig'},'trainrp');
net.inputWeights{1,1}.initFcn ='randnr';
net.layerWeights{2,1}.initFcn ='randnr';
net.trainparam.epochs=5000;
net.trainparam.show=50;
net.trainparam.lr=0.001;
net.trainparam.goal=0.0000000000001;
net=init(net);
%%%训练样本%%%%
[net,tr]=train(net,P,T);

PIN0=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\4 (2).png'));
PIN1=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\3 (2).png'));
P0=[PIN0',PIN1'];
T0= sim(net ,PIN1')
T1 = compet (T0) 
d =find(T1 == 1) - 1
 fprintf('预测数字是:%d\n',d);
%有较高的识别率 

识别率还是挺高的。但是最大的难点问题是图像的预处理,分割,我觉得智能算法的识别已经做得很好了。最重要的是图像预处理分割。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对小牛知识库的支持。如果你想了解更多相关内容请查看下面相关链接

 类似资料:
  • 在本教程中,我们将构建一个TensorFlow.js模型,用卷积神经网络对手写数字进行分类. 首先,我们将通过“查看”成千上万的手写数字图像及其标签来训练分类器. 然后我们将使用模型从未见过的测试数据来评估分类器的准确性. 先决条件 本教程假设您熟悉TensorFlow.js的基础构建模块 (张量,变量,和操作),以及优化器和损失的概念. 有关这些主题的更多背景信息, 我们建议在本教程之前完成以下

  • 总体概览: 利用神经网络来进行手写识别就是将输入手写的数据经过一系列分析最终生成判决结果的过程。 使用的神经网络模型如下: 输入数据是像素为28 × 28 = 784的黑白图片(共55000张) 使用10位one-hot编码: 0 -> 1000000000 1 -> 0100000000 2 -> 0010000000 3 -> 0001000000 4 -> 0000100000 5 -> 0

  • 引言 这一部分会说明这个文档会包含哪些内容,以及不会包含哪些内容,因为人工智能,机器学习,监督学习,神经网络,无论哪一个都是非常大的话题都,覆盖到可能就成一本书了,所以这篇文档只会包含与 RT-Thread 上面加载 MNIST 手写体识别模型相关的部分。 当然,在每一部分的最后我也会给出参考文献,参考文献是个非常重要的部分,一方面它可以补充我没有介绍到的部分,另一方面也可以提供一些支撑,因为现在

  • 用于图像识别的神经网络可真的很大。可以有数千个输入/隐藏的神经元,数百万个连接,这会占用大量的计算机资源。 虽然在C++中float通常是32bit和双64bit,但它们在速度上没有太大的性能差异,但使用float可以节省一些内存。 有了一个神经网络,什么是用sigmoid作为激活函数,如果我们可以选择神经网络中哪些变量可以浮点或双变量可以浮点,以节省内存而不使神经网络无法执行? 而训练/测试数据

  • 更新时间:2019-07-19 10:48:36 节点简介 人脸识别/图像识别/OCR节点属于智能节点,区别在于封装的云市场api功能不同。人脸识别节点主要有人数检测、人脸身份证对比、性别年龄情绪识别等功能。图像识别节点主要有烟雾火焰火灾识别、动物识别、植物识别、植物花卉识别等功能。OCR节点主要有驾驶证识别、车牌识别、身份证识别等功能。 使用场景 如果您需要进行人数检测、人脸身份证对比、性别年龄

  • TensorFlow包含图像识别的特殊功能,这些图像存储在特定文件夹中。出于安全目的,经常要识别相同的图像,这个逻辑很容易实现。 图像识别代码实现的文件夹结构如下所示 - dataset_image 文件夹中包含需要加载的相关图像。这里将专注于图像识别,其中定义了徽标。加载“load_data.py”脚本,它记录各种图像识别模块。 图像的训练用于将可识别的图案存储在指定的文件夹中。 上面的代码行生