本人现在有基于tensorflow和keras训练好的卷积神经网络模型H5文件,我想把它搞到嵌入式开发板中间去,然后外接摄像头实时获取图片然后输入到CNN模型进行识别输出,只是为了毕业,请问有什么好用的开发板推荐码?
或者树莓派4和jeston nano哪个对于新手来说好搞啊?
求指点
卷积神经网络(Convolutional Neural Network, CNN)是一种前馈神经网络,处理图像数据。第一个卷积神经网络是由Alexander Waibel得出的时间延迟网络(TDNN),是一种用于语音识别的卷积神经网络,用FFT预处理的语音信号当作输入,两种一维卷积构成的隐含层,提取频率域上面的平移不变特征。当时语音识别的隐马尔可夫模型,在同等条件下的表现是落后于TDNN。
1988年,Wei Zhang推出了第一个二维卷积神经网络:平移不变人工神经网络(SIANN),并应用在医学影像检测领域。1989年,Yann LeCun也创建了图像分类的卷积神经网络领域,也就是LeNet的第一个版本。网络结构和当今的卷积神经网络十分接近。LeCun随机初始化权重,随后用随机梯度下降进行自我学习,这一方法被后来的深度学习研究进行广泛应用。“卷积”和“卷积神经网络”等词,最先在这网络结构中描述。LeNet-5往原先的网络模型中加入了池化层对输入特征进行筛选,现代卷积神经网络的基本结构就是这种模型,采用交替叠加卷积层-池化层结构,能有效提取出输入图像的平移不变特征。如人像识别、手势识别等基于卷积神经网络的应用研究也逐渐深入。
CNN前馈过程为往前传播输出计算,该过程只向前传播输出计算,后一层的输入当作前一层的输出,持续到最后一层输出最终结果。传播过程不会调整网络参数。反向传播过程为,计算损失函数,修改每层参数,使误差向前传播,从最后一层开始,调整全部网络参数权重。CNN的特点在于其每一层的特征都由上一层的局部区域通过共享权值的卷积核激励得到。总的来说CNN有两大特点:
(1)可以将超大的数据量图像有效的降维成小的数据量。
(2)较为可靠的保留特征图像,图像较为符合处理原则。
CNN是终端到终端的一种学习研究模型,模型参数的训练方法为,通过传统的梯度进行下降,训练后的卷积神经网络,可以学习提取图像特征和图像分类。