- 博客(67)
- 收藏
- 关注
原创 跨模态 行人reid
HPILN: A feature learning framework for cross-modality personre-identification 2019An Efficient Framework for Visible-Infrared Cross Modality Person Re-Identification 2020 有代码Enhancing the Discriminative Feature Learning
2020-11-16 10:45:13
412
原创 安装pip
因为这个错误导致 pip找不到,可以首先执行 python -m ensurepip 然后执行 python -m pip install --upgrade pip 即可更新完毕。
2020-10-26 13:18:50
262
原创 利用假设迁移学习完成增加相机后的训练
这篇论文是行人重识别,讲的是在源域上训练好的模型,用目标域上的数据微调下,使得该模型在目标域上行人重识别的效果也好。它的特点是,训练模型的源域数据在训练好模型后就不可获得了,比如隐私问题。目标域下有非常有限的带标签的数据,这些数据图像至少和一个源域下的相机的图像是成对的。通俗地讲就是源域数据训练好模型后就不能用了,然后新相机(我们把它拍摄的图像当做目标域数据),目标域数据是非常有限的带标签的,再在源域的一些相机拍摄。通俗讲就是假如昆工有三个摄像头,利用这些摄像头下的源域数据训练一个行人重识别的模型,训练好后
2020-10-26 10:35:45
365
原创 2020-10-24
图卷积的核心思想就是利用边的信息对节点信息进行聚合,从而生成新的节点表示。图卷积神经网络主要有两类,一类是基于空间域或者顶点域vertex domain(spatial domain)的,另一类是基于频域或者谱域的(spectral domain),通俗理解就是空域可以类比到直接在图片的像素点上进行卷积,而频域可以类比到对图片进行傅里叶变换后,再进行卷积。空间域:直接将卷积操作定义在每个结点的连接关系上,。频域:频域图理论就是借助于图的拉普拉斯矩阵的特征值和特征向量来研究图的性质。什么是拉普拉斯矩
2020-10-24 22:21:38
166
原创 2020-10-24
其中X 是向量,M 是变换矩阵。矩阵变换中,MX代表对向量 X进行变换,我们假设变换后的向量为Y,记做Y=MX。于是半正定矩阵可以写成:正定、半正定矩阵的直觉代表一个向量经过它的变化后的向量与其本身的夹角小于等于90度。半正定矩阵前提是实对称矩阵。在迁移学习中主要关注三个主要研究问题:(1) What to transfer; (2) How to transfer; (3) When to transfer。即迁移什么、怎么迁移和什么时候迁移。...
2020-10-24 13:49:34
92
原创 距离度量
行人重识别是指根据输入行人图像在监控网络中搜索该行人的其他图像。该技术在嫌疑目标搜索、失踪人员查找以及跨摄像头目标跟踪领域有广泛的应用前景,并逐渐成为计算机视觉领域的研究热点。由于在实际监控场景下,人脸等生物特征通常无法被有效捕捉,因此目前行人重识别主要依据行人的外观信息,如衣服颜色、服装类型以及体态特征等。行人重识别任务的核心难点在于,受摄像机视点变化、行人姿态变化、场景亮度变化等因素的影响,同一行人被不同摄像头拍到的图像差异会很大。针对该难点,本文主要从度量学习的角度入手开展研究,即在给定行人特征的条件
2020-10-24 10:29:03
125
原创 logging模块
为什么要配置日志?日志是一种可以追踪某些软件运行时所发生事件的方法。向代码中调用日志记录相关的方法来表明发生了某些事情。简而言之日志就是一个小型的软件运行记录器。进行一些日志输出。torch.cuda.manual_seed_all(66) 为所有GPU设置种子torch.manual_seed(66) 为CPU设置种子itertools模块包含有效创建迭代器的函数solver模块#保证dir_path存在#保证log_dir、model_dir文件都存在,在根记录器上记录严重性为
2020-10-22 17:27:56
185
原创 安装torch
在windows上命令窗口直接pip install torch是不行的,需要pip install torch1.5.0+cpu torchvision0.6.0+cpu -f https://download.pytorch.org/whl/torch_stable.html
2020-10-19 16:52:26
200
原创 python基础10
\ 是续行符。分号-在一行写多条语句。空语句 pass。表达式必须是在同一个基准上写,括号只能使用圆括号,而且圆括号是嵌套使用。模块/包-全部小写字母,可使用下划线;常量名-全部大写字母,可使用下划线。type(),id()一个对象有唯一的id标识。一个对象可以被多个变量引用,一个变量也可以改变指向其他的对象。==用于比较两个变量指向的对象是否相等,is 用于判断两个变量是否指向同一个对象。del语句,del x。None是一种特殊的数据类型,表示空值。使得字符串按特定格式输出字符串格式化的几种形式:
2020-10-19 14:55:15
172
原创 Camera On-boarding for Person Re-identification using Hypothesis Transfer Learning
假设迁移学习,真是很有意思呢。说是源域训练好模型后,源域数据就不可获得了。来了目标域(带有少量的标签数据),花很小的努力来让模型学会鉴别目标域里的行人。而且不保证目标域里的行人是和源域里的行人是成对的。利用假设迁移学习的方法来进行将训练好的源域模型里的源域相机的知识迁移到目标摄像机中。问题是怎么迁移呢?目标相机的数据做了什么?怎么给源域相机分配最优权重的?怎么减少迁移过程中的负迁移的?还有一个问题就是搞清楚目标域带标签的数据样本是成对的还是非成对的?关键还是怎么迁移的。...
2020-10-19 14:18:33
646
原创 Regularizing Class-wise Predictions via Self-knowledge Distillation
解决的问题是图像分类模型的过拟合,做法利用类class-wise 正则化项。思想是比如上图,这个思想简单的作为KL散度中不动的一方,下面这个背景复杂的作为动的一方,在类别预测的概率分布上进行蒸馏,过滤掉黑暗知识。一个模型,两个不同的样本但是类别是一致的,带有标签。...
2020-10-19 10:17:14
956
原创 Top-DB-Net: Top DropBlock for Activation Enhancement in Person Re-Identification
2020-10-18 13:47:23
245
原创 Top-DB-Net: Top DropBlock for Activation Enhancement in Person Re-Identification
怎么做到了注意的东西更多?
2020-10-18 13:43:52
472
原创 基于密度的聚类
k-means算法的缺陷是不能聚类哪些非凸的数据集,k-means聚类的形状一般只能是球状的,不能推广到任意的形状。如果S中任两点的连线内的点都在集合内。就是没有凹进去的部分。这就是凸集的定义。k-means本质上是将样本空间划分成k个Voronoi区域(泰森多边形),决定了划分结果的K个簇一定是凸集。基于密度的聚类方法,可以聚类任意的形状。为什么基于密度的聚类方法,可以聚类任意的形状呢?因为基于密度的聚类是点与点的连接,所以可以聚类任意形状的数据集。半径eps和密度阈值,每个数据点有一个半径为eps的邻
2020-10-18 13:34:00
164
原创 Python基础5
建立一个settings的模块,其中包含一个名为Settings的类,用于将所有设置存储在一个地方,以免在代码中到处添加设置。要修改游戏只需要修settiings.py中的一些值,而无需查找散步在文件中的不同设置。再创建一个Settings实例,并将其存储在变量ai_settings中,创建屏幕时使用了ai_settings的属性。在主项目文件夹中新建一个文件夹,将其命名为images,并将文件ship.bmp保存到这个文件夹中。将这个.whl文件复制到你的项目文件夹,打开一个命令窗口,并切换到该项目文件夹
2020-10-15 16:21:33
204
原创 test代码
data来自exp-AT,它的代码解读是backbone模块定义了ResNet类;criterions模块定义了两个类,一个是expATloss,一个CrossEntropyLabelSmoothLoss;datasets模块
2020-10-15 10:48:18
280
原创 python基础4
给属性指定默认值,类中的每个属性都必须有初始值,哪怕这个值是0或者空字符串,这样做了,就可以无需为它提供初始值。修改属性的值,访问这个属性直接赋予新的值。通过方法修改属性的值通过方法对属性的值进行递增继承,一个类继承另一个类时,它将自动获得另一个类中的所有属性和方法,同时还可以定义自已的属性和方法。原有的类是父类,现有的类是子类。父类的名称必须包含在括号中。super()需要两个实参:子类名和self,帮助python将父类和子类联系起来。给子类定义属性和方法重写父类的方法将实例用作属性,然后
2020-10-14 21:54:49
258
原创 python基础3
第七章:用户输入和while循环函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,python将其存储在一个变量中,以方便你使用。每当你使用函数input()时都应指定清晰明白的提示,指出你希望用户提供什么样的信息。使用函数input()时,python将用户输入解读为字符串。利用int()函数得到数字求模运算符%,返回余数。while循环,while条件测试:****让用户选择何时退出。使用标志,在要求很多条件都满足才继续运行的程序中,可定义一个变量,用于判断整个程序是否
2020-10-14 17:08:36
333
原创 python基础2
第5章:if语句if语句 值为True或False的表达式(条件测试)。检查是否相等, car == ‘bmw’,相等运算符在它两边的值相等时返回True,否则返回False。检查是否不相等, car != ‘bmw’,不相等运算符在它两边的值不相等时返回True比较数字,记住=是赋予变量值,==是相等运算符。使用 and 检查多个条件,如果条件都通过了,那么整个表达式的值为True.使用 or 检查多个条件,只要有一个条件满足,那么整个测试通过。检查特定值是否包含在列表中,可使用关
2020-10-14 16:22:26
143
原创 python基础
第2章:变量和简单数据类型每个变量都存储了一个值,在程序中可随时修改变量的值,而python将始终记录变量的最新值。变量的命名和使用:数字、下划线、字母,但是不能以数字打头;不能使用空格,但是可以以下划线分割单词;python关键字和函数名不能用作变量名;变量名应即简短又具有描述性;谨慎使用小写字母i和大写字母O。使用变量名避免命名错误,如message—mesage,name ‘mesage’ is not defined.字符串就是一系列字符。在Python中用单引号或者双引号括起来的都是字符
2020-10-14 12:21:58
118
原创 瓦瑟斯坦距离
瓦瑟斯坦距离:是把数据分布 转换为 时,传输质量的最小成本,定义为边缘分布的所有联合分布 的集合。直观上,把 理解为在 这个路径规划下把土堆 挪到土堆 所需要的消耗。期望不就是乘积和嘛。...
2020-10-11 15:49:03
2100
2
原创 2020-10-07
注释 # ‘’’ ‘’’ “”" “”"变量赋值 =多个变量赋值 数据类型:元组、列表、字典、字符串、数字字符串 “ ” ’ ’ //返回商的整数部分 %返回余数 / 商的结果和被除数类型一样Python位运算符python 的条件语句...
2020-10-08 13:10:57
57
原创 2020-10-07
torch.cat 按行拼接和按列拼接。即所谓的维数0和维数1.convsize = img_feature_map.size()[3] #得到第三维大小contiguous()transpose、permute等维度变换操作后,tensor在内存中不再是连续存储的,而view操作要求tensor的内存连续存储,所以需要contiguous来返回一个contiguous copy;numpy.repeat(a, repeats, axis=None)其中a为数组,repeats为重复的次数
2020-10-07 21:50:02
152
原创 python的一些小知识
列表 list [ ]字典 dict { 键:值}元组 tuple (1,2,3) 元组是不可改变的列表continue结束当次循环,直接进入下次循环的判断;break直接结束循环,进入其他语句。re模块方法的具体用法https://zhuanlan.zhihu.com/p/52198820...
2020-10-07 11:28:31
71
原创 2020-10-07
局部特征有的尺寸小效果比较好如鞋子的颜色,局部特征有的尺寸大效果比较好如白色的连衣裙;输入图像经过ResNet50(最后一层3*3的卷积核的步长设为1,特征图大了方便分局部特征)得到特征图‘。特征图被硬性分割几次,分成1、3、5、7,分别进入四个支路,each(共16个)经过一个自适应池化层得到相同大小的特征图。然后再相邻块concat经过最大池化,再经过11卷积得到特征图。嵌入层就是11卷积是为了将4096的变为256的。三个局部支路都用了全局特征。...
2020-10-07 10:43:49
186
原创 Collaborative Attention Network for Person Re-identification论文解读
有的局部特征需要小尺度效果比较好,比如鞋子的颜色;有的局部特征需要大尺度效果比较好,比如白色的裙子。那么它是怎么解决局部特征的尺度问题呢?Collaborative 协作的 Since we argue that global features can reveal distinct attributes in different branches。 horizontally水平地...
2020-10-06 19:24:01
274
原创 an image is worth 16*16 words: transformers for image recognition at scale
an image is worth 16*16 words: transformers for image recognition at scale变压器 for 大规模图像识别。变压器用于自然语言处理,计算机视觉,变压器,图像分类,图像补丁序列时。自注意力,变压器的计算效率和可扩展性。在大规模的图像识别中ResNet50仍是最新的技术,由于自注意力加卷积的速度和可扩展性差。with the fewest possible modifications用最少的修改。 we split an image i
2020-10-06 14:10:58
3279
原创 pycharm,随意查看一个变量
放在和new_files并列的地方print(new_files,“**************”)后面的**********作为标记
2020-10-05 13:22:46
142
原创 Python的一些小知识
一对花括号,{键:值,键:值}。字典名[键]=值。a.extend(b)意思是a,b。要分割的名.split(’.’,2)[1] 以 . 为分隔符,分割2次,取索引为1的项要分割的名.split(’.’,-1) 以 . 为分隔符,分割最多次...
2020-10-03 13:58:48
703
原创 代码7
class RectScale(object)利用双线性插值法将图像调整到规定尺寸、class RandomSizedRectCrop(object)随机尺寸的矩形裁剪再利用双线性插值法将图像调整到规定尺寸、class RandomErasing(object)随机擦除class WarmupMultiStepLR(torch.optim.lr_scheduler._LRScheduler)根据step的学习率调整transforms_list训练数据集的transform、test_transf.
2020-09-30 10:46:50
191
原创 ROI pooling 和ROI Align有什么区别?
量化(quatization)是指将输入从连续值(或大量可能的离散取值)采样为有限多个离散值的过程。也可以理解为,将输入数据集(如实数)约束到离散集(如整数)的过程。ROI Pooling:RoI Align 在 Mask RCNN 中被首次提出。取每个子区域的中点.双线性插值(bilinear interpolation),又称为双线性内插。其核心思想是在两个方向分别进行一次线性插值。在图像处理中,双线性插值法考虑围绕未知像素的计算位置的 最近邻域的已知像素。然后对这4个像素进行加权平均,以得出其最
2020-09-30 09:38:39
271
原创 代码6
import settings #读取配置.os.environ获得有关系统的一些信息。from torch.utils.tensorboard import SummaryWriter #完成可视化。logger日志记录工具。 self.feature_generator = nn.DataParallel(self.feature_generator, device_ids=range(settings.num_gpu))。train_params = []。for key, value in opt_
2020-09-29 21:10:36
177
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人