# 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
资源评论
流华追梦
- 粉丝: 9890
- 资源: 3845
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 这是 HIC-Yolov5 的存储库.zip
- 这只是另一个 YOLO V2 实现 在 jupyter 笔记本中训练您自己的数据集!.zip
- PicGo 是一个用于快速上传图片并获取图片 URL 链接的工具
- uniapp vue3 自定义下拉刷新组件pullRefresh,带释放刷新状态、更新时间、加载动画
- WINDOWS 2003邮箱服务器搭建
- 距离-IoU 损失更快、更好的边界框回归学习 (AAAI 2020).zip
- 该项目是运行在RK3588平台上的Yolo多线程推理demo,已适配读取视频文件和摄像头信号,demo采用Yolov8n模型进行文件推理,最高推理帧率可达100帧,秒 .zip
- 该项目使用 YOLOv8 通过用户友好的界面执行医学图像的分类、检测和分割等任务 .zip
- AI's prompts
- 该存储库将演示如何使用 OpenVINO 运行时 API 部署官方 YOLOv7 预训练模型.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功