raspberrypi基于深度学习的自动避障智能小车_目录
. ├── car │ ├── cam_motion.py │ ├── Car.py │ ├── config.ini │ └── socket_server.py ├── darknet │ ├── a.py │ ├── darknet │ ├── data │ │ └── labels │ │ ├── 100.png ... │ │ ├── 99.png │ │ └── make_labels.py │ ├── predictions.png │ ├── run.sh │ ├── test.jpg │ ├── tiny-yolo.cfg │ └── tiny-yolo.weights ├── Design.fzz ├── devlog.md ├── pc_control │ ├── config.ini │ └── control_client.py ├── README.md └── web_server ├── config.ini ├── data │ └── labels │ ├── 100.png ... │ ├── 99.png │ └── make_labels.py ├── entry.py ├── predictions.png ├── static ├── templates │ └── cam.html └── test.jpg
car/
目录是小车上运行的项目, config.ini
文件需要自己参考 config_example.ini
新建。
darknet
目录是深度学习框架所需文件,注意在 web_server
项目里还有个 data
文件夹,因为在通过web_server调用darknet时,运行目录是web_server,而darknet里面运行时需要一些参数和配置文件等,可以在darknet命令行参数里指定的可以直接写固定路径,但是有些是darknet里面固定的相对路径,队友没有修改,所以需要将部分内容copy过去。在github项目里,我去掉了,可以从data.zip里解压出来。
Design.fzz
是设计图纸,用Fritzing打开
devlog.md
是开发日志。
pc_control
是手动控制的测试项目。
web_server
则是运行在PC的server, templates
文件夹是tornado框架所用的,里面的 cam.html
只是内嵌了moiton的页面。 test.jpg
是接收到的图片文件, prediction.jpg
是darknet运行时产生的图片文件,用红框标出了识别出的物体。 config.ini
文件同理,仿照example新建即可。
在小车上运行时,如果是csi摄像头,一定要记得先 modporbe
加载到 /dev/video0
上去。
整体来说,代码还是过于简陋了,最后实现的避障效果也很差。不过赶作业来说,足够了。后续还希望能继续优化。
欢迎勘误。