基于darkflow的YOLO实时对象检测

Darkflow

darkflow实现了将darknet移植到tensorflow上,可以用tensorflow加载darknet训练好的模型,并使用tensorflow重新训练,输出tensorflow graph模型,用于移动设备。

YOLO

YOLO全称you only look once,是实时对象检测的技术

环境

Manjaro + Python3.6 + tensorflow 1.11 + numpy 1.15.2 + Opencv 3.4.3

下载安装Darkflow框架

git clone https://github.com/thtrieu/darkflow.git

安装

您可以在以下三种方式中选一个开始使用darkflow。

  1. 只需构建Cython扩展即可。注意:如果以这种方式安装,则必须./flow在克隆的darkflow目录中使用,而flow不是全局安装darkflow。

    python3 setup.py build_ext --inplace
    
  2. 让pip在开发模式下全局安装darkflow(仍可全局访问,但代码更改会立即生效)

    pip install -e .
    
  3. 全局安装pip

    pip install .
    

测试

flow -h
image.png

可以输出帮助列表就说明环境没问题了

下载已经训练好的模型


image.png

将下载好的模型文件到bin目录下

检测摄像头版:

python flow --model cfg/yolo.cfg --load bin/yolo.weights --demo camera

检测视频版:

python flow --model cfg/yolo.cfg --load bin/yolo.weights --demo demo.avi

使用GPU版:

python flow --model cfg/yolo.cfg --load bin/yolo.weights --demo camera --gpu 1.0

想接外置摄像头的话不太好弄,跟darknet不一样-c 0就完事了
可参考github的issues问题:How to use different camera connected in darkflow

环境配置参考:https://github.com/thtrieu/darkflow

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容