代码
图灵和柯南道尔的大弟子
这个作者很懒,什么都没留下…
展开
-
goland显示fmt.Sprintf代码格式化结果时的异样
在goland中查看项目源码时,看到这一句,以为fmt.Sprintf除了。这种方式还可以直接用#来显示变量值呢。原创 2023-08-22 20:15:03 · 163 阅读 · 0 评论 -
time.Duration(ms.Int64()) * time.Millisecond) 和 ms.Int64() * time.Millisecond有什么区别呢?
而time.Millisecond是一个time.Duration类型的常量,表示一毫秒的时间间隔。time.Sleep(time.Duration(ms.Int64()) * time.Millisecond)和time.Sleep(ms.Int64() * time.Millisecond)在功能上是等效的,它们都是用于暂停(休眠)一段时间。在第一种写法中,使用time.Duration(ms.Int64())将ms.Int64()的结果转换为time.Duration类型的值。原创 2023-08-22 15:46:14 · 211 阅读 · 0 评论 -
mybatis常见异常:Invalid bound statement (not found): XML文件搞的鬼!target目录不自动更新搞的鬼!
Invalid bound statement (not found)中XML导致的解决方案!原创 2023-02-26 08:54:55 · 678 阅读 · 1 评论 -
torchvision.transforms.Compose输入类型是?处理过程中的数据类型转化又是什么样的呢?
转化为RGB之后才是通常意义上的PIL. Image图片类型。原创 2022-08-28 00:19:03 · 1429 阅读 · 0 评论 -
OrderedDict构建函数模块的不常见写法
代码】OrderedDict构建函数模块的不常见写法。原创 2022-08-07 22:54:32 · 123 阅读 · 0 评论 -
RuntimeError: Calculated padded input size per channel: (1 x 1). Kernel size: (5 x 5). Kernel size c
torchvision.model.inception_v3报错原创 2022-06-25 10:07:14 · 7478 阅读 · 0 评论 -
keras老版本切换到新版本的代码问题
只需改成上图即可,特别需要注意data_format这个参数,新版本的keras中是把最后一个维度当做通道数的,比如【5, 256, 256, 32】,如果需要像pytorch一样,则需要改动为“channels_first".参考链接:https://stackoverflow.com/questions/46965047/channels-first-with-keras...原创 2022-05-22 11:07:04 · 1461 阅读 · 0 评论 -
/spark-submit报错:‘python’: error=13, Permission denied
1. 报错现象明明已经安装了python,也使用了root用户权限,却始终说Permission denied2 解决办法unbuntu在不手动安装python的情况下就有默认的python2.X和python3.X版本,可以通过whereis python命令查看具体已经有了哪些python环境;这里使用的是unbuntu20.04.3的版本,安装有python3.8、python2.7, 当直接在terminal里面输入python时终端会报错说python命令不存在,直接输入python3时终原创 2022-05-10 17:51:50 · 921 阅读 · 0 评论 -
PGPCA、PHPCA、PLPCA去噪代码解析
一、整体Pipeline流程解析clear allclose allsigma=10;randn('seed', 2);ima = double(imread('data/barbara.png'));% 添加噪音ima_nse = ima + sigma * randn(size(ima));figure('Position',[100 100 800 800]);plotimage(ima_nse);title(sprintf('Noisy: \n PSNR %.2f', p原创 2022-05-10 17:36:00 · 307 阅读 · 0 评论 -
东南大学数字图像处理作业-C++原生实现(不调库)对BMP图像旋转和平移
1 代码包含三个文件:把bmp.h、bmp.cpp、main.cpp1.1 bmp.h#pragma once#include <cstdio>#include <cstdlib>using namespace std;typedef unsigned char BYTE;typedef unsigned short WORD;typedef unsigned int DWORD;//位图文件头定义typedef struct tagBITMAPFILEH原创 2022-05-10 17:15:23 · 1376 阅读 · 0 评论 -
CUDA kernel errors might be asynchronously reported at some other API call
1. 报错程序运行运行着,就报了以下错误:2 原因正在使用的是“cuda:7", 1号机的第7号显卡被拿走了,或者第7号显卡机械位置松动了3 解决方案查看目前pytorch可读的显卡有几块(这时候使用nvidia-smi命令同样报错),假设为n, 然后【0,n-1】这些序号的显卡都可以使用:显卡默认是从0号开始计数的:...原创 2022-05-06 14:56:10 · 26058 阅读 · 0 评论 -
JAVA Debug:
1.三元运算符中包含与字符相关的条件判断语句时, 容易出错错误写法(这里G[i-1]虽然是一个int数值,但是会自动与s.charAt(i) == 'G’的结果相加, 这里不管G[i-1]的数值是0还是非0,只要s.charAt(i) == 'G’为false,那么整个表达式G[i-1] + s.charAt(i) == 'G’也为false;不管G[i-1]的数值是0还是非0, 只要s.charAt(i)=='G’为true,那么整个表达式G[i-1] + s.charAt(i) == 'G’也为tru原创 2022-04-28 15:31:10 · 527 阅读 · 0 评论 -
torch.where遇到小数时必须要转化成double类型
不然会报错原创 2022-04-22 21:32:21 · 395 阅读 · 0 评论 -
os.listdir(相对路径)
在命令行和代码文件中都是可以的,不必非要是os.listdir(绝对路径)。但是下面这种情形需要注意最好使用绝对路径:运行C文件的时候如果直接调用funcC, 这时候的相对目录“…/…/B”是相对于C.py文件的位置而不是相对于B.py文件,所以这时候会报错!这种情况下相对目录容易混淆!...原创 2022-03-13 23:13:02 · 2753 阅读 · 0 评论 -
torch.Tensor(dim)与torch.Tensor((dim)), torch.Tensor(dim1,dim2)与torch.Tensor((dim1,dim2))的区别
1 torch.Tensor(dim)与torch.Tensor((dim))的区别从三张截图可以看出这两者其实是完全一样的,其中第一处之所以不同是因为torch.Tensor本身就是随机数。2 torch.Tensor(dim1,dim2)与torch.Tensor((dim1,dim2))的区别可以看出这两者是不一样的,写成(X1, X2, X3,X4…)这种形式类似于写成[X1, X2, X3, X4] ,即是将这个list或者tuple给张量化,可以理解传入的参数是data的含义;原创 2022-03-01 09:49:17 · 783 阅读 · 0 评论 -
python中的continue只能用于for循环中
本来想在调试中用这个语句来充当注释后面一大段代码的作用,但是不行。后来找到了https://blog.csdn.net/index20001/article/details/74294945。原创 2022-02-28 14:09:47 · 779 阅读 · 0 评论 -
pyradimics使用source安装报错“Apparently running from root, but unable to load C extensions”
按照https://www.icode9.com/content-4-1061732.html链接进行安装:但报以下错误:直接按照提示运行,导入成功:目前不太理解第三步的作用,因为之前的按照source来安装是只需要两步就可以完成的,等理解透彻了再来补充。...原创 2022-02-28 10:01:04 · 1025 阅读 · 0 评论 -
conda和pip卸载包的注意事项
安装和import时包的名称不一致时,比如scikit-learn和sklearn, 卸载的时候还是应该用包的全称,也就是与安装时一致用pip安装的就要用pip卸载,而不是conda,反之亦然原创 2022-02-28 09:27:28 · 1736 阅读 · 0 评论 -
python判断多个字符是否存在于字符串中的坑
if 'B' or 'M' in x_base: pass很容易写成上面的结果,但其实其结果是一个字符串,而不是bool值:所以应该改正为:if 'B'in x_base or'M' in x_base: pass原创 2022-02-25 10:43:50 · 1102 阅读 · 0 评论 -
Leetcode刷题笔记-1
1 前言只把刷题过程中的重要步骤理解、重要代码理解、代码技巧做总结。毫无疑问,会反复刷多遍同样的题目,所以每次刷都会把增加的理解做更新。总结按照不同的算法专题来展开。2 动态规划https://leetcode.com/problems/regular-expression-matching/solution/递推算法需要注意含有*时代码的运行过程,相对复杂。class Solution(object): def isMatch(self, text, pattern):原创 2022-02-24 21:45:58 · 7302 阅读 · 0 评论 -
python对字符串取not操作
如果该字符串为空字符串,则 not s为true;如果该字符串不为空字符串,则not s为false。一句话,not操作不管后面的操作数是什么类型,结果一律都是bool值,一般来说空值都是默认为假的。原创 2022-02-24 15:47:42 · 829 阅读 · 0 评论 -
Python 两个list相加不能使用append而应该使用+
原创 2022-02-23 19:27:30 · 436 阅读 · 0 评论 -
linux里python和ipython环境不一致
情况如题所示,在同一个conda环境里面使用这两个命令发现对于的python版本不一样:检查过后发现:在当前的conda环境里面并没有安装ipython环境,但是ipython命令却依然能被正常使用,这说明当前的ipython命令不属于当前环境,而是属于系统默认的python环境。这说明了linux的一些设计哲学?给定一个命令时,会优先匹配最近的环境,如果没有再寻找是否同样具有该命令的环境!所以感觉不同环境的命令名称尽量不要重复比较好吧!...原创 2022-02-16 17:57:30 · 1302 阅读 · 0 评论 -
matlab rgb2gray() 的坑
ima = double(imread('data/house.png'));ima = double(rgb2gray(uint8(ima)));特别注意在在使用rgb2gray这个函数将3通道转化成单通道的时候,必须先将这个图像转化成uint8类型。如果不进行转化的话,由于此处的ima在读取之后变成了double数据类型,直接使用rgb2gray(ima)得到的矩阵的取值范围是在0-1范围之内的!这与造成imshow显示图像为全白的原因是一样的,imshow函数和rgb2gray函数,都会将dou原创 2022-01-08 20:30:00 · 5713 阅读 · 0 评论 -
给matlab数组不存在的列赋值
虽然开始时,m定义时是没有列的,但是后续却可以直接给m的第一列赋值。直接给第2列赋值也是可以的,此时第一列默认赋值为0.原创 2022-01-06 22:10:03 · 854 阅读 · 0 评论 -
numpy数组计算非0元素个数
np.count_nonzero(s)len(s.nonzero(s)[0])原创 2021-12-10 16:31:37 · 7163 阅读 · 0 评论 -
flask后端接受图片文件数据
1 代码@app.route('/predict', methods=['POST'])def predict(): # 获取传送过来的完整原始图像 file = request.form.get('file') print('file type', type(file)) data_url = str.split(file, ',')[1] print('data_url type:', type(data_url)) print('data_url:原创 2021-12-10 14:44:45 · 5452 阅读 · 2 评论 -
torch scatter 当取的axis=0而不是1的时候
原创 2021-12-02 16:07:20 · 83 阅读 · 0 评论 -
利用np.sum计算准确度的坑
np.sum(y == y_predict) 其中y和y_predict必须是同一个shape,要么都是(n,) , 要么都是(n, 1),**千万不要是一个是(n,),另外一个是(n,1),不然计算出的结果会非常大,因为这时候会自动广播成两个矩阵相减了!**这里不会报错的哦!...原创 2021-12-02 14:11:37 · 993 阅读 · 0 评论 -
12位灰度图(0-4095)怎么进行直方图均值化
def gray_histogram_equalization(img_arr): # 根据像素灰度统计结果来显示灰度直方图 hist, bins = np.histogram(img_arr.flatten(), 4096, [0, 4095]) cdf = hist.cumsum() cdf_normalized = cdf * hist.max() / cdf.max() cdf_m = np.ma.masked_equal(cdf, 0) cdf_m原创 2021-11-28 12:51:01 · 731 阅读 · 0 评论 -
os.path.splitext的坑-判断文件是否有后缀名
cur_file_ext = os.path.splitext(os.path.basename(cur_sub_path)) print('cur file ext', cur_file_ext) # 如果文件没有后缀名,不再处理if len(cur_file_ext) < 2: continue本来是想判断文件是否有后缀名,后来发现这样有个bug,就是不管文件有没有后缀名,os.path.splitext都会返回长度为2的元组,只是没有后缀名的时候元组的第二个元素值为空而已。..原创 2021-11-19 21:16:36 · 522 阅读 · 0 评论 -
df[col]与df[[col]]的区别
df[col]是一个pd.Series对象,shape为(样本数目,),属于1维的;df[[col]]是一个pd.DataFrame对象,shape等于(样本数目,1),属于2维的。其实这个也非常好理解,因为【col】其实也就是列表格式的,【col】是【col1、col2、col3、col5…]这种一般情况中的一个特例,而很明显这种一般情况对应多列的情形,自然也只可能是dataframe类型了。观察不难发现,前者在pycharm调试器上的显示只有单纯的数字,而后者的显示还包括当前列的名称,还有值的显示是原创 2021-11-13 13:52:23 · 2600 阅读 · 0 评论 -
含有None的列表转化成numpy数组时的注意事项
t =[None, 1, None, 2, 3]t = np.asarray(t)t = t[t!=None]一定需要注意因为原始列表中含有None所以转化后Np数组的dtype是object类型的而不是其他类型,比如这里很容易把t的类型当成int:正确写法是必须强制做类型转化。np.asarray(t[t!=None], dtype=np.int32)`...原创 2021-11-13 10:41:57 · 1386 阅读 · 0 评论 -
python中dir的坑
[‘class’, ‘delattr’, ‘dict’, ‘dir’, ‘doc’, ‘eq’, ‘format’, ‘ge’, ‘getattribute’, ‘getstate’, ‘gt’, ‘hash’, ‘init’, ‘init_subclass’, ‘le’, ‘lt’, ‘module’, ‘ne’, ‘new’, ‘reduce’, ‘reduce_ex’, ‘repr’, ‘setattr’, ‘setstate’, ‘sizeof’, ‘sklearn_is_fitted’, ‘str原创 2021-11-12 19:51:49 · 1652 阅读 · 0 评论 -
np.asarray转化list为numpy数组的坑
问题是这样的,有1个元素互相不重复的list,然后我手动将其转化成了np数组,代码如下:pearson_filtered_feats_idxes = np.asarray(pearson_filtered_feats_idxes, dtype=np.uint8)结果发现转化后的这个数组突然出现重复元素了,且手动测试了一下发现转化后的数组与原来的list元素都不相等。。。。 pearson_filtered_feats_idxes_cp = np.asarray(pearson_filtered原创 2021-11-12 12:16:50 · 1215 阅读 · 0 评论 -
python遍历List的注意事项
不要在遍历一个List的时候做可能会删除List中元素的操作,比如遍历List A, 如果A中元素满足某条件,则该元素被从List中移除,这样不会报错,但是会导致List会少遍历一些元素 for key in header1: if key in filtered_header: header1.remove(key)...原创 2021-11-06 15:54:27 · 343 阅读 · 0 评论 -
radiomics.featureextractor-----使用pyradiomics提取2维医学图像及其掩模的特征
1 本篇解决的问题介绍一般而言都是使用SimpleITK.ReadImage()方法来读取3D的医学图像和掩模,然后再利用pyradiomics中featureextractor来直接提取一阶特征、3D形状特征、小波分解特征等。问题出现了,并不是所有的3D医学图像都是有其对应的3D Mask的,这是因为有些比较细小的3D病变组织可能极其难以手动分割或者自动分割。这导致数据集转化成了这些3D图像的某些侧面的截面图以及对应的2D Mask. (注!这些2D的截面只能保存成为普通的JPG、BMP图像了)于是:原创 2021-11-04 22:06:30 · 6635 阅读 · 26 评论 -
关于python os.rename的注意事项
1 修改路径名,既可以是修改文件夹的名称,也可以是直接修改文件的名称,但是修改时传递的都必须是根路径的形式。类似A:\DIR1\DIR2\B\C,如果要想修改C,只能是os.rename(r‘A:\DIR1\DIR2\B\C’, r'A:\DIR1\DIR2\B\C1')如果要想修改B, 只能是os.rename(r'A:\DIR1\DIR2\B’, r'A:\DIR1\DIR2\B1') # 不会把C文件删除的2 修改路径时不能在该路径打开python命令行或者打开此文件夹的资源管理器,会报原创 2021-11-03 20:54:08 · 1057 阅读 · 0 评论 -
2021下半年博客规划(学习计划)
关于JVM的原理理解以及手动实现JVM关于Effective C++ 以及 stl 的学习笔记关于Leetcode算法刷题及相关数据结构原创 2021-10-31 20:54:37 · 89 阅读 · 0 评论 -
为什么要使用红黑树
线性搜索速度很慢 O(n)二分查找法较快 O(logn)有序序列查找很快,但是插入和删除需要大量移动元素,很慢使用BST,插入和删除很方便,同时具有二分查找类似的性质但是当树的高度过高时,比较速度比较慢使用平衡的BST但是数据变化时需要频繁地更新树中结点...原创 2021-10-29 23:03:44 · 151 阅读 · 0 评论