基于zynq soc的动物识别系统

非常荣幸能够参加v3学院主办的v3学院杯。我一直对基于zynq的平台结合深度学习的应用感兴趣。这次的作品是基于zynq soc的动物识别系统。本作品采用深度学习算法,利用caffe 进行训练。我将caffe训练的结果结合到v3学院提供的EagleGo2开发板。在本次设计中,我开始使用xilinx 的sdsoc开发工具。sdsoc集成了vivado,sdk,hls,是一款功能强大的IDE。sdsoc的加速相关功能可以更突出的体现zynq ps-pl交互的优势,可以更好的加快图像处理。本次设计参考v3学院提供的identity物体分类例子。本次设计硬件架构如系统框架图。图像传感器imx222采集图像信息,通过pl部分的图像输入处理模块进行处理。信号RGB转化完成后传入DDR,信号在pl部分和caffe训练好的网络层相关参数进行运算,不同类的运算结果进行比对,选择可能性最大的类。类确定之后,pl部分的图像输出处理模块将相关类的图像处理为hdmi形式,传给hdmi显示。
我在caffe的cifar10下构造自己的数据集。本次设计的数据集,我加上人类共分为7类(原设想本来要重点突出对人的识别)。CNN神经网络设置方面,我设置了3层卷积层。现在系统对猫和鸟的识别效果较好,但对于人等其他动物识别效果十分不好。其中有个原因是我人类的训练图片选的比较少。其实在训练阶段准确率并不高。接下来,我需要再看些理论,对于训练样本的选取、网络参数的设置进行改进。最后,感谢v3学院提供的这次学习机会。

工程代码:链接:http://pan.baidu.com/s/1eS8J0dk 密码:6ym0
视频演示优酷网址:http://v.youku.com/v_show/id_XMzA4NzY5ODE1Ng==.html?spm=a2h3j.8428770.3416059.1

附件大小
演示效果1.jpg108.38 KB
演示效果2.jpg95.91 KB
系统框架.png45.8 KB