- 博客(84)
- 资源 (4)
- 收藏
- 关注
原创 Java比较两个字符串是否相等(空指针安全方式)
一. 问题描述假设有个两个字符串,需要比较是否相等:String str1 = "abc";String str2 = "abc";此时使用如下方法即可比较二者是否相等:boolean isSame = str1.equals(str2);但是,如果str1=null,再使用str1.equals(str2)来比较的话,便会产生空指针异常。二. 解决方法使用Objects.euqals()方法比较即可避免空指针异常,因为它是空指针安全的。使用示例:boolean isSame = O
2021-04-07 10:47:31
4205
1
原创 Java规范重写equals方法
一. 问题描述近期在写Java代码时,经常忘记规范地重写equals方法,遂记录一下。二. 解决方法首先需要明确一点,equlas()方法是Object类的成员方法。假设有一个Person类,我们要重写它的equals()方法,自己重写的代码如下所示:public class Person { private String name; private int age; @Override public boolean equals(Object obj)
2021-04-07 10:22:10
519
2
原创 求链表的中间节点(Java语言实现)
1. 方法一(1)算法思想:遍历一遍整个链表,求得链表的长度len后,再从头遍历链表len/2遍,即可到达链表的中点处。(2)代码:public ListNode findMid(ListNode head) { int len = 0; ListNode curr = head; while (curr != null) { len++; curr = curr.next; } curr = head; for (int i = 0; i < len / 2; i++)
2021-03-04 16:33:57
593
4
原创 mac下git中文乱码
1.问题描述在macbook环境下,今天在提交一个代码时,发现git add某个中文文件夹时,出现了乱码,问题如下图所示:2.解决方法解决方法也很简单,只需要配置一下git的全局config即可,命令如下:git config --global core.quotepath false...
2021-02-28 12:26:17
1163
原创 ImportError: dlopen: cannot load any more object with static TLS
1. 问题描述在jupyter lab的编程环境中,我在引用scikit-learn的时候(from sklearn.metrics import roc_auc_score, roc_curve),报了以下的错误:ImportError: dlopen: cannot load any more object with static TLS2.解决方案看到网上有人说他的opencv在使用的时候也遇到了此类问题,借助他的解决思路。我发现我的scikit-learn是通过conda安装的,于是我将s
2021-02-23 20:50:05
1735
原创 Linux命令行卡住不显示命令的解决方法
1. 问题描述在使用终端工具如Xshell、iTerm2时登录到linux服务器后,在运行某些程序出错时,有的时候会出现命令行卡住不显示命令的情况2. 解决方案在命令行中输入reset,再回车即可(此时输入reset不会在命令行中显示出来,注意要输入正确)...
2021-01-05 10:07:02
6065
3
原创 Mac中.bashrc或.bash_profile不能自动生效
1. 问题描述熟练使用Linux的人会知道,环境变量是在~/.bashrc或~/.bash_profile中进行配置的;在Mac OS中,同样也可以在这两个文件中配置环境变量,但是每次打开命令行时都需要输入source ~/.bashrc或source ~/.bash_profile才能生效,无法自动生效。2. 解决方案需要注意的一点是,与Linux系统不同的是,在Mac OS中环境变量的默认配置文件为~/.zshrc而不是~/.bashrc或~/.bash_profile(1)第一种解决方法就是我
2020-12-26 06:29:01
9034
5
原创 Linux服务器校准时间
1. 同步服务器的时间校准命令为:// 添加-u参数是为了防止出现此类报错:the NTP socket is in use, exitingntpdate -u ntpd服务器地址校准成功后显示该提示:ntpd服务器地址:pool.ntp.org中国国家授时中心:210.72.145.44NTP服务器(上海) :ntp.api.bz美国: time.nist.gov复旦: ntp.fudan.edu.cn微软公司授时主机(美国) :time.windows.com北京邮电大学
2020-12-14 10:42:02
5993
原创 Linux实现免密登录
1. 生成本地电脑的公钥查看本地是否存在公钥:cat ~/.ssh/id_rsa.pub若不存在公钥,则需要生成公钥:ssh-keygen -t rsa2. 将公钥复制到远程主机ssh-copy-id -i ~/.ssh/id_rsa.pub root@远程主机IP地址
2020-12-14 10:27:23
163
原创 git将远程代码同步到本地(本地没有git仓库的情况)
1. 问题描述笔者在A电脑建立了git仓库,并且有一些代码提交,之后换了一台B电脑,想继续在B电脑上进行coding。2. 解决方案在新的B电脑上直接git clone,将远程的代码clone下来,然后在B电脑上进行代码的编写提交即可...
2020-12-09 22:39:50
1851
原创 git已经push后修改commit注释
1. 问题描述笔者在git push之后,发现其中有一个提交的commit注释写错了一个字,强迫症程序员怎么受得了?改!2. 解决方案1. 修改倒数第3次的commitgit rebase -i HEAD~3这里的3就是对应倒数第3次的commit,因为在这里笔者是倒数第3次的commit注释出现了错误2. 将pick修改为edit进入界面后,摁a或者i进入编辑模式,将需要修改注释的那一行的“pick”改为“edit”,然后摁ESC退出编辑模式,再输入:wq!来保存退出3. 更正commi
2020-12-09 18:22:11
4235
4
原创 git仓库文件夹含有空格导致无法add
1.问题描述在git仓库中,笔者的某个文件夹含有空格,比如文件名为“Problem_637_ Average of Levels in Binary Tree”,在执行以下命令git add Problem_637_ Average of Levels in Binary Tree时便会出现图中的报错信息。2.解决方案解决方法很简单,只需要将需要add的文件夹名字使用双引号包裹起来即可,如下所示:git add "git add Problem_637_ Average of Levels in
2020-12-09 17:57:21
1629
原创 计数排序(转载)
转载出处:https://www.cnblogs.com/xiaochuan94/p/11198610.html见链接,写的很好
2020-11-11 09:26:56
134
原创 torch.nn.Sequential()的用法
1.torch.nn.Sequential()的用法官方api文档传送门:https://pytorch.org/docs/stable/generated/torch.nn.Sequential.html#torch.nn.Sequentialtorch.nn.Sequential()的用法如下图所示:
2020-09-29 10:17:33
4082
原创 torch.zeros_like()函数的用法
1.torch.zeros_like()函数的用法官方API传送门:https://pytorch.org/docs/stable/generated/torch.zeros_like.html?highlight=zeros_like#torch.zeros_like
2020-09-10 17:55:42
8936
原创 将UCF101数据集的视频提取为帧(多线程实现)
1.实现代码最开始的版本是使用opencv实现的,但是在实施的过程中,发现opencv在读取视频帧的时候,有的时候ret, frame = capture.read()中的返回值ret有时会为False,会存为错误的1帧,所以改用ffmpeg实现。使用多线程的ffmpeg实现代码如下:# 将UCF101数据集中的视频提取为帧from __future__ import print_function, divisionimport osimport sysimport subprocessfr
2020-09-10 17:37:26
1506
9
原创 行为识别---不同模型的帧采样策略
1.I3DI3D采用的是dense sample策略sample_pos = max(1, 1 + record.num_frames - 64) t_stride = 64 // self.num_segmentsstart_idx = 0 if sample_pos == 1 else np.random.randint(0, sample_pos - 1) offsets = [(idx * t_stride + start_idx) % record.num_frames for idx
2020-09-08 16:05:33
1278
原创 Linux终端关闭后程序仍然运行
以执行python命令为例,原本需要执行的命令为python main.py将命令修改为nohup python main.py &
2020-09-07 17:59:43
1457
原创 np.stack()函数的用法
np.stack()函数的用法官方API函数说明传送门:https://numpy.org/doc/stable/reference/generated/numpy.stack.html
2020-07-25 19:02:14
1554
原创 np.fromstring()函数的用法
np.fromstring()函数的用法该函数的官方API传送门:https://numpy.org/doc/stable/reference/generated/numpy.fromstring.html
2020-07-25 18:53:19
3041
原创 DataFrame获得某一列中所有的不重复的值
DataFrame获得某一列中所有的不重复的值dataframe['xxx'].unique()
2020-07-25 18:04:41
40793
2
原创 QT静态编译程序(Mingw编译)
1. 为什么要静态编译程序?在默认情况下,用QtCreator编译程序时,使用的是动态编译,这就导致编译好的程序在运行时需要另外加上相应的Qt库文件,以及一大堆dll文件。如果想将生成的程序连同所需要的库一起完整地打包成一个可执行程序,并且可以在一台没有开发环境的电脑上运行,那就需要使用静态编译。2. 运行环境Windows10QT Creator 4.11.0QT 5.14.0 + Python 3.6 + gcc 7.3.0 + perl 5.22.13. 实现步骤(1)安装QTQT5
2020-06-18 08:30:07
11741
4
原创 Python中的list(列表)和dict(字典)变量前面加星号*的作用
1.list(列表)list变量前加一个星号*,目的是将该list变量拆解开多个独立的参数,传入函数中举例:list1 = [1, 2, 3]print(*list1)输出结果:1 2 3输出结果为三个元素,可以作为参数传入某个函数中2.dict(字典)dict变量前面加一个星号*,目的是将dict变量中的key值拆解开成多个独立的元素举例:dict1 = { 'x': 1, 'y': 2, 'z': 3 } prin
2020-05-16 10:50:50
2186
原创 list的相加和相乘
关于list的相加相乘直接给出例子,简单明了:1.list的相加[1] + [2] = [1, 2][1] + [2] + [3] + [1] = [1, 2, 3, 1][1] + [2] + [3] + [4, 5, 6] = [1, 2, 3, 4, 5, 6]2.list的相乘[1] * 3 = [1, 1, 1][1, 2, 3] * 3 = [1, 2, 3, 1, 2, 3, 1, 2, 3]...
2020-05-16 10:13:35
2693
原创 ModuleNotFoundError: No module named 'numpy.core._multiarray_umath'错误解决方法
1.问题描述笔者在使用pytorch训练完模型后,想要使用tensorboardX可视化一下训练过程,发现在启动tensorboard命令后,出现问题,报错信息如下:ModuleNotFoundError: No module named ‘numpy.core._multiarray_umath’ImportError: numpy.core.multiarray failed to import2.解决方法这个错误是由于numpy的版本过低造成的,直接升级numpy的版本即可,命令如下:pi
2020-05-14 15:10:20
6593
原创 安装tensorboardX教程
在pytorch环境中,如果需要进行数据可视化,比较推荐的方式是使用tensorboardX,而且对于一名从tensorflow转到pytorch的coder来说,tensorboard使用起来也更加顺手。1.安装过程1.安装tensorflowpip install tensorflow==1.14.02.安装tensorboardXpip install tensorboardX2.注意点在安装tensorboard之前,一定要保证环境中已经安装了tensorflow,不然的话会缺少相
2020-05-14 10:59:11
6921
3
原创 OpenCV生成相机标定板
1.代码实现#include <opencv.hpp>#include "highgui.h"#include "cxcore.h"using namespace cv;int main0(int argc, char *argv[]){ int width = 140;//width and heigth of single square int he...
2020-05-03 20:26:36
1512
2
原创 什么是消融实验(Ablation experiment)?
什么是消融实验(Ablation experiment)?笔者第一次见到消融实验(Ablation experiment)这个概念是在论文《Faster R-CNN》中。消融实验类似于“控制变量法”。假设在某目标检测系统中,使用了A,B,C,取得了不错的效果,但是这个时候你并不知道这不错的效果是由于A,B,C中哪一个起的作用,于是你保留A,B,移除C进行实验来看一下C在整个系统中所起的作用。...
2020-04-20 08:50:26
67026
3
原创 Pycharm提示自定义的module导入错误
问题描述在Pycharm中,我们会在同一个文件夹中存放多个项目,这会导致一个问题:在进行某个项目,当导入自己定义的module时,下方会出现红色的波浪线,运行该项目,会提示“No module named xxx”,如下图所示解决方案解决方案很简单,当我们进行A项目时,只需要将A项目的根目录标记为“Sources root”即可,操作过程如下图所示:...
2020-03-25 15:07:24
521
原创 深度学习模型或者相关概念的论文出处(持续更新中...)
1.VGG《Very deep convolutional networks for large-scale image recognition》ICLR,2015
2020-03-14 10:51:52
373
原创 tf.nn.conv2d
1.简介tf.nn.conv2d函数是用于计算2-D卷积的函数,本文章对于该函数的解读基于r1.15版本。(本文是针对英文API纯手工翻译,并加上自己的部分理解)官网API地址传送门:https://tensorflow.google.cn/versions/r1.15/api_docs/python/tf强烈推荐大家去阅读官网的英文API,原汁原味。2.函数具体说明tf.nn.conv...
2020-03-13 22:03:30
305
原创 对DataFrame中的数据进行shuffle
方法一使用sklearn的方法shuffle()shuffle过程为:from sklearn.utils import shuffledf = shuffle(df)方法二使用pandas的随机抽样方法df.sample()shuffle过程为:df = df.sample(frac=1.0)此时不仅会将数据按行打乱,同时数据的行索引也会被打乱。若想要打乱后的数据索引重新从...
2020-03-10 13:31:28
7410
原创 Markdown绘制表格
1.方式一姓名 | 年龄 | 数量分数- | - | -小明 | 18 | 96小红 | 20| 90小王 | 19 | 85呈现效果如下表所示:姓名年龄数量分数小明1896小红2090小王19852.方式二姓名 | 年龄 | 数量分数:-: | :- | -: # :-:表示居中,:-表示靠左对齐,-:表示靠右对齐小明...
2020-03-10 12:14:03
1896
原创 DataFrame使用pd.sample()随机选取N行数据
1.简介在训练深度学习或者机器学习模型时,免不了需要按照比例划分训练集和验证集,有的时候使用pandas的方式读取csv数据文件,得到的是一个DataFrame的对象df,这时可以使用pd.sample()来实现从df中随机抽样。2.函数说明df.sample(n=None, frac=None, replace=False, weights=None, random_state=None,...
2020-03-10 12:00:26
12574
原创 DataFrame根据值筛选特定行
在DataFrame中,使用df.isin()函数可以在某一列中筛选出具有某一个或某几个特定值的行df = DataFrame()筛选包含1的行df_data_1 = df[df['col_name'].isin([1])]筛选包含1,2,3的行df_data_1 = df[df['col_name'].isin([1, 2, 3])] # 传入list筛选不包含1的...
2020-03-10 09:35:18
8054
原创 Problem#155 Min Stack
ProblemSolution# 法一:差值法class MinStack: def __init__(self): """ initialize your data structure here. """ self.min_v = float('inf') self.stack = [] ...
2020-03-06 18:30:40
121
原创 Problem#136 Single Number
ProblemSolutionclass Solution: def singleNumber(self, nums: List[int]) -> int: single_num = 0 for num in nums: single_num = single_num ^ num return single...
2020-03-06 18:28:57
147
原创 Problem#125 Valid Palindrome
ProblemSolutionclass Solution: def isPalindrome(self, s: str) -> bool: left, right = 0, len(s) - 1 while left < right: if not s[left].isalnum(): ...
2020-03-06 18:27:44
94
原创 Problem#122 Best Time to Buy and Sell Stock II
ProblemSolutionclass Solution: def maxProfit(self, prices: List[int]) -> int: max_profit = 0 for i in range(len(prices) - 1): if prices[i+1] - prices[i] > 0: ...
2020-03-06 18:26:15
113
已编译完成,编译好的OpenCV3.4.2,Contrib版本(100%好用)
2020-03-30
HTTP开发所依赖的jar包
2018-07-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人