- 博客(67)
- 资源 (1)
- 收藏
- 关注
原创 MyBatis.md
Mybatis学习笔记1、简介1.1 什么是 MyBatis?1.2 持久层1.3 为什么需要Mybatis?2、第一个Mybatis程序2.1 搭建环境2.2 创建一个模块2.3 编写代码2.4 测试3、CUDR3.1 namespace3.2 select3.3 insert3.4 update3.4 delete3.5 万能的Map3.6 模糊查询怎么写4、配置文件4.1 核心配置文件4.2 环境配置(environments)4.3 属性(properties)4.4 类型别名(typeAliase
2021-09-13 21:59:53
342
原创 CenterNet:Objects as points 环境配置(Ubuntu18.04+RTX3090+CUDA11+Pytorch1.7)
论文:CenterNet : Objects as Points论文地址:https://arxiv.org/abs/1904.07850代码地址:https://github.com/xingyizhou/CenterNet1 Install按照readme文件夹的install.md操作,本文在实验环境为Ubuntu18.04 RTX3090 CUDA11,Anaconda Python3.6 Pytorch1.7。1.1 创建虚拟环境# 创建虚拟环境conda create -n Cen
2021-09-02 16:17:17
925
1
原创 conda换源和相关命令
换源清华源镜像 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/
2021-07-06 15:52:16
1407
原创 一句话理解瓶颈结构
瓶颈结构是一种长得像瓶颈的一样,上面小(卷积核)下面大(卷积核)的网络结构(可参考ResNet中的瓶颈结构)。如下图所示:图中上面使用比较小的1x1的卷积核减少卷积核的通道数(1x1卷积核的作用见NIN网络),然后使用等于上层通道数的3x3的卷积核进行特征卷积,最后在使用1x1的卷积核提高通道数使其达到目标数量。这样做的效果等效于使用3x3x256的卷积核,但是这样的瓶颈设计不仅减少了参数量还加深的网络层数。...
2021-07-01 20:18:47
4748
2
原创 通俗理解分组卷积
目录顾名思义这样做有啥作用呢?参考顾名思义分组卷积(Group Convolution)顾名思义,在对特征图进行卷积的时候,首先对特征图分组再卷积。如下图所示:这样做有啥作用呢?减少参数量,分成G组,则该层的参数量减为原来的1/G。feature map尺寸为CiHW,常规卷积的参数量是Ci*H*W*Co;分G组的分组卷积参数量是(Ci/G)*H*W*(Co/G)*G=(Ci*H*W*Co)/G;可以自己举一个简单的例子试一试。分组卷积可以看做是对原来的特征图进行了一个dropout,有正
2021-07-01 19:38:07
4501
3
原创 one-stage方法和two-stage方法的区别
One stage approach: 在图像上滑动复杂排列的可能bbox(即锚点),然后直接对框进行分类,而不会利用到物体内部特征,无法感知内部信息。Two stage approach:对每个潜在框会重新计算图像特征,然后将那些特征进行分类。...
2021-06-24 20:21:39
599
2
原创 nvidia-smi no devices were found的“奇技淫巧”
最近在跑深度学习的代码的时候突然出现这样的情况:昨天还能跑的代码,今天就突然崩了。然后发现nvidia-smi no devices were found。???这就一脸懵!!!网上查资料说是驱动问题,需要重装显卡驱动。由于我的设备是远程连接的别人的设备,只能放弃。突发奇想,让他一直nvidia-smi,查了一下ubuntu下命令是这样子:watch -n 0.1 -d nvidia-smi就是每0.1s查看一次显卡。奇迹诞生!!!!!!!...
2021-06-23 21:31:56
13945
15
原创 MEGA配置和在单GPU训练
环境安装:可以参考install.md文档,和maskrcnn_benchmark的install.md文档在rfbnet环境下测试是否可以运行MEAG程序 conda install ipython pip pip install ninja yacs cython matplotlib tqdm opencv-python scipy export INSTALL_DIR=$PWD...
2021-06-06 15:22:55
1728
3
原创 一句话解释空洞卷积和反卷积
空洞卷积通俗理解:在卷积核上增加空白数据,或者说是在卷积的时候固定跳过部分像素点,达到一次卷积看到的范围变大的效果。作用:在不增加参数的情况下,增大感受野。(效果等同于卷积+池化,但是避免了其中的弊端)反卷积通俗理解:在输入的图像中做空白填充,从而达到输出的图像变大的效果。作用:增大图像的尺寸,可以将卷积得到的特征还原到原像素空间中,是上采样的一种。(让通过卷积得到的特征图回到原来的大小,并保持原来的位置关系。)参考文献:看动图https://www.jianshu.com/p/
2021-06-02 11:11:22
289
原创 C++ 构造二维vector和初始化
构造一维vector在构造二维vector前先看一下vector的构造函数vector():创建一个空vectorvector(int nSize):创建一个vector,元素个数为nSizevector(int nSize,const t& t):创建一个vector,元素个数为nSize,且值均为tvector(const vector&):复制构造函数vector(begin,end):复制[begin,end)区间内另一个数组的元素到vector中构造二维vector
2021-05-26 16:15:56
802
原创 巧用n&(n-1)
首先了解一下n&(n-1)的作用:将n的二进制中最右边的1变为0。举例:n = 10010 (n - 1) = 10001n & (n - 1) = 10000利用这一特性,可以一下计算:求某一个数的二进制表示中1的个数思路:有二进制中有多少个1,就需要将n的二进制中最右边的1变为0多少次int count = 0;while (n != 0) { n &= (n-1); count++;}2、 判断一个数是否是2的方幂思
2020-11-08 23:24:16
321
原创 Python3中对字典(按值或按键)排序的总结
首先应该注意的是python中的dict和set一样是无序的对字典进行排序,我们会用到python中的排序函数sorted(),下面先简单的介绍一下。sorted(iterable, key=None, reverse=False)参数说明: - iterable -- 可迭代对象。 - key --主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。 - reverse -- 排序规则,reverse = True 降序.
2020-10-28 15:52:23
985
1
原创 std::ios::sync_with_stdio(false),tie(0)及其局限性
std::ios::sync_with_stdio(false)提高效率在c++中之所以cin,cout效率低,是因为先把要输出的东西存入缓冲区,再输出,导致效率降低,而这段语句可以来打消`iostream`的输入和输出缓存,可节省时间,使效率与scanf与printf相差无几,还有应注意的是`scanf`与`printf`使用的头文件应是stdio.h而不是 iostream。局限性使用std::ios::sync_with_stdio(false)后,cin(),cout()不能与printf(
2020-10-02 21:04:24
990
4
原创 pip包管理工具命令
pip 包管理工具命令pip install 包名==版本包 安装某包pip unstall 包名 卸载某包pip -V 查看版本号pip freeze > requirements.txt 将项目依赖的包输入到指定的requirements.txtpip freeze -r requirements.txt 使用pip安装requirements.txt中的文件...
2020-07-03 17:03:16
200
原创 DOS命令
DOS基本命令:cd 切换目录cd…切换到上层目录cd 指定目录dir 浏览目录mkdir 创建目录 mk==makermdir 删除目录 rm==removeipconfig 查看ip地址ping 测试网络连接
2020-07-03 16:30:56
159
原创 通俗理解偏序关系中的八个特殊元(极大、极小、最大、最小元和上界、下界、上确界、下确界)
通俗理解偏序关系中的八个特殊元(极大、极小、最大、最小元和上界、下界、上确界、下确界)
2020-05-15 10:53:50
32195
2
原创 一句话解释离散数学中的P规则、T规则、CP规则,E和I
P规则:就是直接利用推理中给出的前提,即前提引入。T规则:就是由某一个或几个前提可以通过等价、蕴含得到其他命题公式,即推理规则I表示在T规则中通过蕴含式推出其他命题公式,即推理规则中的蕴含推理E表示在T规则中通过等价式推出其他命题公式,即推理规则中的置换规则...
2020-05-13 10:32:19
59312
1
转载 CSMA/CD工作原理(通俗易懂)
实际上CSMA/CD的工作流程与人际间通话非常相似,可以用以下7步来说明。第一步:载波监听,想发送信息包的节点要确保没有其他节点在使用共享介质,所以该节点首先要监听信道上的动静(即先听后说)。
2020-05-12 00:02:06
19001
1
原创 CCF 20140903 字符串匹配
思路:较简单,暴力破解+string类。精确匹配,用string类中的find函数即可;模糊匹配,先将需要匹配的字符转为小写字符,在用find函数。>大写转小写字符:s += 'a' -'A'
2020-04-24 10:14:36
176
2
原创 cin与getline混用时注意事项
当cin>>从缓冲区中读取数据时,若缓冲区中第一个字符是空格、tab或换行这些分隔符时,cin>> 会将其忽略并清除,继续读取下一个字符,若缓冲区为空,则继续等待。但是如果读取成功,字符后面的分隔符是残留在缓冲区的,cin>>不做处理。但是,getline() 读取数据时,并非像 cin>> 那样忽略第一个换行符,getline()发现 cin 的...
2020-04-23 22:08:53
479
原创 CCF 201403-3 命令行选项
思路:每行的命令用getline( )读入,读入后把其输入到streamstring中,每次以空格分隔成字符串,判断每一个字符串是否合法。最后把合法的选项存入到map中,map正好符合题意
2020-04-23 21:30:38
195
原创 CCF 20131203 最大的矩形
思路:暴力法。枚举以每一个hi为高,统计在其左边和右边高于(含等于)hi的矩形个数为count,计算出每个矩形的面积tmp=hi*count,标记出其最大值即可。
2020-04-23 10:28:15
96
原创 CCF 20131201 出现次数最多的数
思路:模板。用map统计一串数中每个数出现的次数,然后把map存到vector中,对vector进行排序,选出出现次数最多的数。常见套路,多次考察。
2020-04-22 22:19:03
117
原创 CCF 20140302 窗口
思路:以窗口为结构体,包含窗口id,所在层数layer,x1,x2,y1,y2。将所有窗口按层数从大到小排序,为了方便从最上层筛选点击的窗口;筛选到符合条件的窗口,break,在找到符合条件之前的所有窗口都减一。#include <iostream>#include <algorithm>using namespace std;const int N = 1...
2020-04-22 21:49:06
123
原创 CCF 20140301 相反数
思路:利用map可以容易实现统计一串数中每一个数出现的次数,由于题目中的数都不相等且不为0,故对数取绝对值进行统计,如果map[v]==2则计数器++。
2020-04-22 16:53:53
123
原创 CCF 20140902 画图
思路:枚举法。先将所有坐标对应的小正方形标记为0,之后标记范围内所有的小正方形为1。最后统计范围内所有的flag == 1的小正方形。
2020-04-22 13:51:15
126
原创 CCF 20141202 Z字形扫描
思路:暴力模拟,复杂度O(n^3)。Z字形扫描时,i + j == t,循环遍历所有的t的可能值即可t在[0…2*(n-1)]范围内,i,j在0…n。t是偶数时,先打印行;t是奇数时,先打印列。#include <iostream>using namespace std;const int N = 500;int data[N][N];int main(){ ...
2020-04-22 10:33:08
119
原创 CCF 20141201 门禁系统
思路:这种串数字统计每个数字出现次数的题型都可以用map做,简单,CCF有好几道类似的题目,可以把它当做一个模板使用。#include <iostream>#include <map>using namespace std;int main(){ int n,v; cin>>n; map<int,int> m;...
2020-04-21 23:05:05
105
原创 CCF 20150302 数字排序(map按值Value排序)
思路:用map统计每一个数的个数,将map存入vector<pair<int,int> >中,对vector进行排序,自定义cmp函数。这是一个模板,map按值Value排序。
2020-04-21 19:40:15
164
转载 map的注意事项
C++ map注意事项 1、在map中,由key查找value时,首先要判断map中是否包含key。2、如果不检查,直接返回map[key],可能会出现意想不到的行为。如果map包含key,没有问题,如果map不包含key,使用下标有一个危险的副作用,会在map中插入一个key的元素,value取默认值,返回value。也就是说,map[key]不可能返回null。3...
2020-04-21 18:18:41
514
原创 CCF 20150301 图像旋转
简单,通过观察发现最后一列变到第一行,但是顺序没变,很容易代码实现。#include<iostream>using namespace std;int main(){ int n,m; cin>>n>>m; int a[n][m]; for(int i = 0; i < n; i++){ fo...
2020-04-21 17:56:41
131
原创 CCF 20151201 数位之和
简单代码如下:#include<iostream>using namespace std;int main(){ int n,ans = 0; cin>>n; while(n){ ans += n %10; n /= 10; } cout<<ans<<endl;...
2020-04-21 17:03:36
128
原创 CCF 20150902 日期计算
思路:先将每个月的天数存储在数组中(默认按不是闰年存储),判断是闰年时,days[1]++。之后while判断d大于0时就减去days[i]。最后回溯一下未减去days[i]之前的d就是该月的天数,i+1就是月数。代码如下:#include<iostream>using namespace std;int days[12] = {31,28,31,30,31,30,31...
2020-04-21 14:00:21
111
原创 CCF 20150901 数列分段
题目简单,直接上代码代码如下:#include<iostream>using namespace std;const int N = 1000;int a[N] = {0};int main(){ int n; cin>>n; for(int i = 0; i < n; i++){ cin>>...
2020-04-21 13:04:11
93
转载 CCF 20160902火车购票
思路:用数组a[20]记录每一排剩余的座位数。每次分配单独处理,a[i]>=val&&i!=20时说明够相邻分配,开始分配;i==20时说明每一排都不够分配,这样按不相邻分配。#include<iostream>using namespace std;int main(){ int n; cin>>n; int ...
2020-04-20 21:52:33
100
原创 CCF 20160901 最大波动
题目较简单。大体思路是把代码存在数组中,然后相邻的两个数相减,取绝对值,标记其最大值即可。代码实现#include<iostream>#include<algorithm>using namespace std;const int N = 1000;int data[N] = {0};int main(){ int n; cin&g...
2020-04-20 17:32:42
104
原创 哈夫曼压缩编码
问题描述求哈夫曼编码的最小编码长度。输入格式输入的第一行包含一个整数n,表示单词的数量。第二行包含n个整数,用空格分隔,分别表示a1, a2, …, an出现的频率,即t1,t2, …, tn。请注意a1, a2, …, an具体是什么单词并不影响本题的解,所以没有输入a1, a2, …, an。输出格式输出一个整数,表示文字经过编码后的长度L的最小值。输入样例51...
2020-04-20 13:32:48
282
numpy快速入门--numpy基础教程
2020-10-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人