没有合适的资源?快使用搜索试试~ 我知道了~
代码全部都是用Opencv实现的,可能在精度方面不是很理想。 这个代码识别的是视频也可识别图片不过需要自己修改
资源推荐
资源详情
资源评论
# -*- coding: utf-8 -*-
import cv2
import numpy as np
import os.path as path
import argparse
parser = argparse.ArgumentParser() # 创建ArgumentParser()对象
parser.add_argument("-a", "--algorithm", help="m (or nothing) for meanShift and c for camshift")
# 添加参数,这里意思是:在命令窗口输入时加入”-a XXX“ 可以采用不同的苏昂啊
args = vars(parser.parse_args()) # 解析添加参数
font = cv2.FONT_HERSHEY_SIMPLEX
class Pedestrian():
def __init__(self, id, frame, track_window):
self.id = int(id)
x, y, w, h = track_window
self.track_window = track_window
self.roi = cv2.cvtColor(frame[y:y + h, x:x + w], cv2.COLOR_BGR2HSV)
roi_hist = cv2.calcHist([self.roi], [0], None, [16], [0, 180])
self.roi_hist = cv2.normalize(roi_hist, roi_hist, 0, 255, cv2.NORM_MINMAX)
self.kalman = cv2.KalmanFilter(4, 2)
self.kalman.measurementMatrix = np.array([[1, 0, 0, 0], [0, 1, 0, 0]], np.float32)
self.kalman.transitionMatrix = np.array([[1, 0, 1, 0], [0, 1, 0, 1], [0, 0, 1, 0], [0, 0, 0, 1]], np.float32)
self.kalman.processNoiseCov = np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]],
np.float32) * 0.03
self.measurement = np.array((2, 1), np.float32)
self.prediction = np.zeros((2, 1), np.float32)
import cv2
import numpy as np
import os.path as path
import argparse
parser = argparse.ArgumentParser() # 创建ArgumentParser()对象
parser.add_argument("-a", "--algorithm", help="m (or nothing) for meanShift and c for camshift")
# 添加参数,这里意思是:在命令窗口输入时加入”-a XXX“ 可以采用不同的苏昂啊
args = vars(parser.parse_args()) # 解析添加参数
font = cv2.FONT_HERSHEY_SIMPLEX
class Pedestrian():
def __init__(self, id, frame, track_window):
self.id = int(id)
x, y, w, h = track_window
self.track_window = track_window
self.roi = cv2.cvtColor(frame[y:y + h, x:x + w], cv2.COLOR_BGR2HSV)
roi_hist = cv2.calcHist([self.roi], [0], None, [16], [0, 180])
self.roi_hist = cv2.normalize(roi_hist, roi_hist, 0, 255, cv2.NORM_MINMAX)
self.kalman = cv2.KalmanFilter(4, 2)
self.kalman.measurementMatrix = np.array([[1, 0, 0, 0], [0, 1, 0, 0]], np.float32)
self.kalman.transitionMatrix = np.array([[1, 0, 1, 0], [0, 1, 0, 1], [0, 0, 1, 0], [0, 0, 0, 1]], np.float32)
self.kalman.processNoiseCov = np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]],
np.float32) * 0.03
self.measurement = np.array((2, 1), np.float32)
self.prediction = np.zeros((2, 1), np.float32)
资源评论
qq_40116678
- 粉丝: 1
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功