通过clion开发工具在线调试deepstream工程,同时加载yolov5的engine模型,以及如何在deepstream中编写cmakelist编译文件
一.开发建议
1,首先建议使用deepstream-test1到test4,自己搭建pipelien开发整个视频流的过程,通过deepstream加载engine进行加速,这样作的好处是可以控制整个流的过程,实现自定义的流程开发
二.问题引入
在使用deepstream的过程中,官方给的是makefile文件,相对比较复杂,我想使用cmakelist编译文件,然后使用clion的IDE,来开发deepstream,这样就可以调试整个pipeline流的过程代码,奈何不会cmakelist和makefile的编写规则,所以看了很多资料,才改写成功,关于cmakelist语法的学习,我整理了一篇文章,大家可以学习——《cmakelist编译文件应该怎么写?link_directories和target_link_libraries以及link_directories的关系》
首先我使用的deepstream-test1,使用deepstream自带的element原件——nvinfer,用来加载engine文件。
这样作的好处是,我们可以利用gstreamer的pipeline,加载多个模型,将数据流通过tee进行分流,然后同时运行多模型,这样就可以实现模型的并行运行,例如:运行yolov5分类检测的同时,可以运行车道线检测,这样就可以同时加载多个模型,又或者运行yolov5分类检测的同时,运行相机的污染检测,并