资源简介
目标跟踪算法的代码实现,精度在vot2018排名第一,鲁棒性很强.

代码片段和文件信息
# -*- coding: utf-8 -*-
“““
Created on Wed Jun 27 11:42:36 2018
@author: ZK
“““
def x1y1x2y2_to_xywh(gtbox):
return list(map(round [(gtbox[0]+gtbox[2])/2. (gtbox[1]+gtbox[3])/2. gtbox[2]-gtbox[0] gtbox[3]-gtbox[1]]))
def xywh_to_x1y1x2y2(gtbox):
return list(map(round [gtbox[0]-gtbox[2]/2. gtbox[1]-gtbox[3]/2. gtbox[0]+gtbox[2]/2. gtbox[1]+gtbox[3]/2.]))
def x1y1wh_to_xywh(gtbox):
x1 y1 w h = gtbox
return [round(x1 + w/2.) round(y1 + h/2.) w h]
def x1y1wh_to_x1y1x2y2(gtbox):
x1 y1 w h = gtbox
return [x1 y1 x1+w y1+h]
#%%
import torch
from torch.nn import Module
from torch.nn import functional as F
#%%
class SmoothL1Loss(Module):
def __init__(self use_gpu):
super (SmoothL1Loss self).__init__()
self.use_gpu = use_gpu
return
def forward(self clabel target routput rlabel):
# rloss = F.smooth_l1_loss(routput rlabel)
rloss = F.smooth_l1_loss(routput rlabel size_average=False reduce=False)
e = torch.eq(clabel.float() target)
e = e.squeeze()
e0e1e2e3e4 = e[0].unsqueeze(0)e[1].unsqueeze(0)e[2].unsqueeze(0)e[3].unsqueeze(0)e[4].unsqueeze(0)
eq = torch.cat([e0e0e0e0e1e1e1e1e2e2e2e2e3e3e3e3e4e4e4e4] dim=0).float()
rloss = rloss.squeeze()
rloss = torch.mul(eq rloss)
rloss = torch.sum(rloss)
rloss = torch.div(rloss eq.nonzero().shape[0]+1e-4)
return rloss
#%%
class Myloss(Module):
def __init__(self):
super (Myloss self).__init__()
return
def forward(self coutput clabel target routput rlabel lmbda):
closs = F.cross_entropy(coutput clabel)
# rloss = F.smooth_l1_loss(routput rlabel)
rloss = F.smooth_l1_loss(routput rlabel size_average=False reduce=False)
e = torch.eq(clabel.float() target)
e = e.squeeze()
e0e1e2e3e4 = e[0].unsqueeze(0)e[1].unsqueeze(0)e[2].unsqueeze(0)e[3].unsqueeze(0)e[4].unsqueeze(0)
eq = torch.cat([e0e0e0e0e1e1e1e1e2e2e2e2e3e3e3e3e4e4e4e4] dim=0).float()
rloss = rloss.squeeze()
rloss = torch.mul(eq rloss)
rloss = torch.sum(rloss)
rloss = torch.div(rloss eq.nonzero().shape[0]+1e-4)
loss = torch.add(closs lmbda rloss)
return loss
#%%
import math
from PIL import ImageStat Image
from torchvision.transforms import functional as F2
#%%
def resize(img size interpolation=Image.BILINEAR):
assert img.size[0] == img.size[1]
return img.resize((size size) interpolation) img.size[0] / size
#%%
def point_center_crop(img gtbox area):
x y dw dh = gtbox
p = (dw + dh) / 2.
a = math.sqrt((dw + p) * (dh + p))
a *= area
i = round(x - a/2.)
j = round(y - a/2.)
mean = tup
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-08-29 01:13 Siamese-RPN-master\
文件 66 2018-08-29 01:13 Siamese-RPN-master\.gitattributes
文件 743 2018-08-29 01:13 Siamese-RPN-master\README.md
文件 2881 2018-08-29 01:13 Siamese-RPN-master\SRPN.py
文件 12530 2018-08-29 01:13 Siamese-RPN-master\axis.py
文件 7933 2018-08-29 01:13 Siamese-RPN-master\data_otb.py
文件 2360 2018-08-29 01:13 Siamese-RPN-master\download.py
文件 8828 2018-08-29 01:13 Siamese-RPN-master\test_otb.py
文件 10245 2018-08-29 01:13 Siamese-RPN-master\train.py
文件 2978 2018-08-29 01:13 Siamese-RPN-master\video2pic.py
相关资源
- Pythonamp;课堂amp;笔记(高淇amp;400;集第
- Python中Numpy库最新教程
- 用python编写的移动彩信的发送程序
- Python全栈学习笔记面向对象大作业:
- python实现的ftp自动上传、下载脚本
- 背景差分法 多目标跟踪
- Python版的A*寻路算法
- IronPython IDE
- 多目标跟踪MOT16_Benchmark数据集链接
- 广联达6.0写锁包,2020年11月最新
- 机器学习个人笔记完整版v5.2-A4打印版
- 深度学习卷积神经网络可检测和分类
- pip-10.0.1.tar.gz
- GAN对抗式生成网络的应用:从图片上
- Data Science from Scratch 2nd Edition
- [en]深度学习[Deep Learning: Adaptive Compu
- shape_predictor_68_face_landmarks.dat.bz2 68个标
- 李宏毅-机器学习(视频2017完整)
- 爬取豆瓣电影TOP250程序,包含非常详
- 吴恩达深度学习第一课第四周作业及
- 机器学习深度学习 PPT
- 麻省理工:深度学习介绍PPT-1
- Wikipedia机器学习迷你电子书之四《D
- 深度学习在遥感中的应用综述
- 深度学习数据集标注
- 中文维基百科语料库百度网盘网址.
- 深度学习算法实践源码-吴岸城
- 基于meanshift和粒子滤波的目标跟踪代
- MSCNN_dehaze.rar
- 爬取豆瓣排行榜电影数据(含GUI界面
评论
共有 条评论