# search_from_videos
基于Python的机器学习应用,针对监控视频完成行人轨迹搜索。通过一张目标图像,能自动从大量视频中搜索出包含目标的视频片段,并标记目标。此项目为本人本科毕业设计项目,引用请注明出处。
## 运行环境
```
Python 3.6.2
TensorFlow-GPU 1.6.0
opencv-python
numpy 1.18.1
keras 2.2.0
scikit-learn
pillow
```
额外依赖项下载(由于Github上传文件大小限制,我所使用的模型文件上传到百度云,读者也可根据后续教程自己获得):
```
文件名:yolo.h5
目标文件夹:search_from_videos\edg_code\model_data\
链接:https://pan.baidu.com/s/1_oCYDz3Gpcn-WEr6qcqtsA
提取码:yimi
文件名:yolov3.weights
目标文件夹:search_from_videos\edg_code\
链接:https://pan.baidu.com/s/1mNMwqp_R2-0G586hG9nmSA
提取码:zkvu
```
## 适用平台
笔者在Windows 10上基于Visual Stdio Code开发,但并不代表此项目存在平台限制
## 项目算法简述
预处理过程(edg_code),图见edg_algorithm_structure.png
```
1. 基于三帧差分法,结合阈值法,对数据量庞大的监控视频文件进行预处理,去除其中的无意义部分(无行人出现),分割视频得到大量的视频片段。
2. 对每个视频片段基于YOLO算法,进行行人识别 [此处算法以及模型来源详见引用]
3. 结合YOLO和Deep Sort进行行人轨迹追踪 [此处算法以及模型来源详见引用]
4. 基于Caffe算法对行人人脸进行识别并评分,缓存评分较高的人脸(存在最大数量限制)
5. 基于EigenFace/LBPHFace, 对前面缓存的人脸建立模型文件
6. 将行人轨迹缓存结果与人脸模型文件关联,即预处理结果
```
搜索过程(client),图见client_algorithm_structure.png
```
1. 对输入图片基于caffe算法截取人脸部分
2. 基于EigenFace/LBPHFace, 将目标人脸与预处理得到的人脸模型比对,得到置信度
3. 通过对置信度排序,并截取适当比例的结果,作为搜索结果输出
```
## 运行说明
#### code for edg(执行过程耗时)
下面的main.py统一指代为 search_from_videos/edg_code/main.py
```
# 将待处理的单个/多个视频文件(支持mp4)放入main.py中row_path指定的目录中
python main.py # 根据环境自动修正设置
# 程序将自动在main.py中video_path和save_path指定路径生成处理参数
```
#### code for client(运行过程快速)
下面的main.py统一指代为 search_from_videos/client/main.py
```
# 在main.py中image_path指定待搜索的目标人物的照片
# main.py中的pre_dict和result_dict指向为edg_code生成的对应目录video_path和save_path
python main.py # 根据环境自动修正设置
# 程序会自动在main.py中search_result_path指定路径生成搜索结果
```
## 修改方向
本项目仅为原型机,尚未提供可视化调用接口。可以考虑采用B/S架构,将其升级为真实可用的saas应用
## 引用
```
YOLO算法:
Redmon J , Divvala S , Girshick R , et al. You Only Look Once: Unified, Real Time Object Detection[C].The IEEE Conference on Computer Vision and Pattern Recognition (CVPR).2016 ,01.779-788
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于Python的机器学习应用,针对监控视频完成行人轨迹搜索。通过一张目标图像,能自动从大量视频中搜索出包含目标的视频片段,并标记目标。此项目为本人本科毕业设计项目,引用请注明出处。 运行环境 Python 3.6.2 TensorFlow-GPU 1.6.0 opencv-python numpy 1.18.1 keras 2.2.0 scikit-learn pillow 预处理过程(edg_code),图见edg_algorithm_structure.png 1. 基于三帧差分法,结合阈值法,对数据量庞大的监控视频文件进行预处理,去除其中的无意义部分(无行人出现),分割视频得到大量的视频片段。 2. 对每个视频片段基于YOLO算法,进行行人识别 [此处算法以及模型来源详见引用] 3. 结合YOLO和Deep Sort进行行人轨迹追踪 [此处算法以及模型来源详见引用] 4. 基于Caffe算法对行人人脸进行识别并评分,缓存评分较高的人脸(存在最大数量限制) 5. 基于EigenFace/LBPHFace, 对前面缓存的人脸建立模型文件 6. 将行人轨迹缓存结果与人脸模型文件
资源推荐
资源详情
资源评论
收起资源包目录
基于Python的机器学习应用,针对监控视频完成行人轨迹搜索,通过目标图像,能从大量视频中搜索出包含目标的视频片段,并标记目标 (365个子文件)
res10_300x300_ssd_iter_140000.caffemodel 10.17MB
res10_300x300_ssd_iter_140000.caffemodel 10.17MB
yolov3.cfg 8KB
main.meta.json.e35e3d683a86ff59 2KB
builtins.data.json 670KB
builtins.data.json 670KB
builtins.data.json 670KB
typing.data.json 353KB
typing.data.json 353KB
typing.data.json 353KB
__init__.data.json 221KB
__init__.data.json 221KB
__init__.data.json 221KB
argparse.data.json 123KB
argparse.data.json 123KB
__init__.data.json 110KB
__init__.data.json 110KB
__init__.data.json 110KB
codecs.data.json 102KB
codecs.data.json 102KB
codecs.data.json 102KB
_ast.data.json 101KB
_ast.data.json 101KB
_ast.data.json 101KB
io.data.json 78KB
io.data.json 78KB
io.data.json 78KB
types.data.json 76KB
types.data.json 76KB
types.data.json 76KB
configparser.data.json 74KB
posix.data.json 72KB
posix.data.json 72KB
posix.data.json 72KB
path.data.json 71KB
path.data.json 71KB
path.data.json 71KB
functools.data.json 65KB
functools.data.json 65KB
sys.data.json 54KB
sys.data.json 54KB
sys.data.json 54KB
shutil.data.json 52KB
shutil.data.json 52KB
shutil.data.json 52KB
time.data.json 35KB
time.data.json 35KB
time.data.json 35KB
traceback.data.json 34KB
traceback.data.json 34KB
traceback.data.json 34KB
random.data.json 34KB
random.data.json 34KB
warnings.data.json 33KB
warnings.data.json 33KB
abc.data.json 28KB
abc.data.json 28KB
abc.data.json 28KB
errno.data.json 25KB
errno.data.json 25KB
ast.data.json 25KB
ast.data.json 25KB
ast.data.json 25KB
mmap.data.json 24KB
mmap.data.json 24KB
mmap.data.json 24KB
typing_extensions.data.json 19KB
typing_extensions.data.json 19KB
typing_extensions.data.json 19KB
_importlib_modulespec.data.json 13KB
_importlib_modulespec.data.json 13KB
_importlib_modulespec.data.json 13KB
abc.data.json 13KB
abc.data.json 13KB
abc.data.json 13KB
processor.data.json 12KB
processor.data.json 12KB
_warnings.data.json 12KB
_warnings.data.json 12KB
gc.data.json 11KB
gc.data.json 11KB
timeit.data.json 11KB
timeit.data.json 11KB
frames_subtraction.data.json 10KB
frames_subtraction.data.json 10KB
yolo.data.json 10KB
yolo.data.json 10KB
model.data.json 9KB
model.data.json 9KB
caffe.data.json 8KB
track.data.json 8KB
track.data.json 8KB
colorsys.data.json 7KB
colorsys.data.json 7KB
detector.data.json 7KB
detector.data.json 7KB
generate_detections.data.json 6KB
generate_detections.data.json 6KB
convert.data.json 6KB
__future__.data.json 6KB
共 365 条
- 1
- 2
- 3
- 4
资源评论
流华追梦
- 粉丝: 1w+
- 资源: 3850
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 精心整理shell脚本100例9最新版)中文PDF完整版最新版本
- 二极管箝位型三电平逆变器,NPC三电平逆变器 主要难点:三电平空间矢量调制(SVPWM),中点电位平衡调制等 MATLAB Simulink仿真模型,需要直拿,可提供参考文献 21版本
- 噪声鲁棒监督微调框架ROBUSTFT在大规模语言模型中的应用与改进
- 东北大学数据科学导论平时作业新生儿出生率数据集
- Shell编程范例完整版PDF最新版本
- 西门子S7-200SMART型PLC和MCGS7.7触摸屏控制台达伺服电机位置模式,带接线说明参数说明和运行效果视频
- HBaseShell常用命令中文最新版本
- 小班表演区材料投放的问题及其优化解决方案
- Linux的SHELL学习指南中文最新版本
- 幼儿园小班美术区域活动现状及优化策略分析
- 小班舞蹈教学游戏化的现状、问题及其优化策略
- 教育领域中小班幼儿良好行为习惯的培养策略研究
- 详细介绍Linuxshell脚本基础学习中文最新版本
- 小班幼儿入园焦虑成因及缓解措施研究
- 小学班级干部选拔问题及解决方案:教育领域分析与建议
- Linux系统下的shell编程入门篇中文最新版本
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功