- 博客(164)
- 收藏
- 关注
原创 DataLoader的num_workers设置引起卡死/堵塞/报错,第一个epoch前几个iteration就卡住了,没有报错,内存不释放,GPU利用率为0
“我的情况好像很特殊。系统是centos7,pytorch版本是1.8.0,我刚把这些软件装上时,运行了一下自己的训练代码,可以运行,没有问题。但是过了几天之后,再重新跑,就不行了,卡在了for i, data in enumerate(dataset, start=epoch_iter):print(i),就卡在那里不动了,必须用kill命令来杀。我的代码中根本没有用到opencv,而且网上说的什么共享内存不足之类的,我查了下,根本不存在,我的共享内存才利用很小一部分。把num_workers设为0倒是
2022-05-12 11:22:34
2060
6
原创 Color Space Conversion
Calculates XYZ from RGB values Calculates RGB from XYZ tristimulus values #The copyright belongs to the author#Commercial use is forbidden.
2022-03-04 15:27:28
523
原创 Display calibration
"color gamut, color calibration, color match function, JETI, standard observer"#The copyright belongs to the author#Commercial use is forbidden.
2022-03-04 15:23:30
457
原创 raise RuntimeError(‘Error(s) in loading state_dict for {}:\n\t{}‘.
raise RuntimeError('Error(s) in loading state_dict for {}:\n\t{}'.format( RuntimeError: Error(s) in loading state_dict for DenseNet:此错误在fine tuning载入resnet34 vgg19模型参数均未出现。报错位置为def res_model(num_classes, feature_extract=False, use_pretrained=False):
2021-08-18 16:49:57
4311
原创 image alignment tools
image alignment toolsSIFT keypoints and RANSAC algorithm(OpenCVlibrary)https://github.com/khufkens/align_imagesMethod:FFT phase correlation 相位相关算法实现(仅平移)Enhanced Correlation Coefficient (ECC) maximization 增强相关系数最大化图像匹配the ECC methodology...
2021-04-18 15:55:32
342
原创 macOS下wxpythonGUI界面无法正常使用pycharm编译
This program needs access to the screen. Please run with a Framework build of python, and only when you are logged in on the main display of your Mac.解决方法终端进入文件目录采用pythonw + 文件名如何使用pycharm编译 目前未知 相关资料甚少...
2021-04-11 21:43:47
460
原创 PySide2 的图形界面在MacOS Big Sur中不运行、卡死的问题
PySide2 在MacOS Big Sur中不运行的问题图形化界面跑一个demo python直接卡死果然又是Big Sur的问题pyside2代码外 请加上如下代码即可解决import osos.environ['QT_MAC_WANTS_LAYER']='1'
2021-03-18 10:31:11
582
原创 KernelRestarter: restart failed
Jupyter notebook内核重启失败 应该是macOS Big Sur的锅。terminal在无数粗重启后报错:NotebookApp] KernelRestarter: restart failedNotebookApp] Kernel 8743e528-acb5-488f-8e46-456675500373 died, removing from map.解决方法:source activate 「opencvenv」 环境名pip install xxxpip
2021-03-17 09:00:01
2050
1
原创 Pytorch:Tensor常见的形式(n-dimensional tensor)
0: scalar 数值 1: vector 向量 2: matrix 数据矩阵 3: n-dimensional tensor 高维特征vector表n维特征 (词义处)对应n-dimensional tensor:例如图像处理,多Chanel (GBR三通道),是三维的。文本数据,语料库内多样本,每个样本有很多的词,词可转换成编码,处理时至少三维以及上。...
2021-03-12 14:15:25
412
原创 pytorch框架是如何autograd简易实现反向传播算法的?
import torchx = torch.randn(3,4,requires_grad=True) #对指定的X进行求导b = torch.randn(3,4,requires_grad=True)t = x+by=t.sum()print(y)y.backward() #执行反向传播print(b.grad)print(x.requires_grad, b.requires_grad, t.requires_grad) #自动计算t 自动指定为true...
2021-03-12 11:55:19
273
原创 Pytorch基础操作
import torchimport numpy as npx = torch.empty(5,3)print(x)#初始化一个随机矩阵x = torch.zeros(5, 3, dtype=torch.long)print(x)#构建一个全0矩阵x=x.new_ones(5, 3, dtype=torch.double)x=torch.randn_like(x, dtype=torch.float)print(x)#与numpy的操作差不多print(x.size()).
2021-03-12 10:25:07
153
原创 pycharm(Edit Configurations) 设置参数
eclipse中直接采用右键debug as 即可进行参数设置而pycharm中需要从run目录下进入Edit Configurations将目录内的地址输入parameters
2021-02-17 14:03:42
11428
2
原创 直方图及其均衡化处理
cv2.calcHist(images,channels,mask,histSize,ranges)images: 原图像图像格式为 uint8 或 float32。当传入函数时应 用中括号 [] 括来例如[img] channels: 同样用中括号括来它会告函数我们统幅图 像的直方图。如果入图像是灰度图它的值就是 [0]如果是彩色图像 的传入的参数可以是 [0][1][2] 它们分别对应着 BGR。 mask: 掩模图像。统整幅图像的直方图就把它为 None。但是如 果你想统图像某一分的直方图的..
2021-02-05 15:47:29
389
原创 模板匹配
模板匹配和卷积原理很像,模板在原图像上从原点开始滑动,计算模板与(图像被模板覆盖的地方)的差别程度,这个差别程度的计算方法在opencv里有6种,然后将每次计算的结果放入一个矩阵里,作为结果输出。假如原图形是AxB大小,而模板是axb大小,则输出结果的矩阵是(A-a+1)x(B-b+1)TM_SQDIFF:计算平方不同,计算出来的值越小,越相关 TM_CCORR:计算相关性,计算出来的值越大,越相关 TM_CCOEFF:计算相关系数,计算出来的值越大,越相关 TM_SQDIFF_NORMED:计算
2021-02-04 13:13:59
292
1
转载 傅里叶分析之掐死教程(完整版)
作 者:韩 昊知 乎:Heinrich微 博:@花生油工人知乎专栏:与时间无关的故事谨以此文献给大连海事大学的吴楠老师,柳晓鸣老师,王新年老师以及张晶泊老师。转载的同学请保留上面这句话,谢谢。如果还能保留文章来源就更感激不尽了。——更新于2014.6.6,想直接看更新的同学可以直接跳到第四章————我保证这篇文章和你以前看过的所有文章都不同,这是12年还在果壳的时候写的,但是当时没有来得及写完就出国了……于是拖了两年,嗯,我是拖延症患者……这篇文章的核心思想就是:要.
2021-02-02 09:53:34
269
原创 图像轮廓cv2.findContours(img,mode,method) //轮廓特征、轮廓近似等
cv2.findContours(img,mode,method)mode:轮廓检索模式RETR_EXTERNAL :只检索最外面的轮廓; RETR_LIST:检索所有的轮廓,并将其保存到一条链表当中; RETR_CCOMP:检索所有的轮廓,并将他们组织为两层:顶层是各部分的外部边界,第二层是空洞的边界; RETR_TREE:检索所有的轮廓,并重构嵌套轮廓的整个层次;method:轮廓逼近方法CHAIN_APPROX_NONE:以Freeman链码的方式输出轮廓,所有其他方法输出多边形(
2021-02-02 09:03:06
1627
2
原创 拉普拉斯金字塔
Gi为输入图像 先执行down(缩小尺寸) 在执行up(放大尺寸) 每一层都这样做import cv2import numpy as npdef cv_show(img,name): cv2.imshow(name,img) cv2.waitKey() cv2.destroyAllWindows()img=cv2.imread("AM.png")# cv_show(img,'img')down=cv2.pyrDown(img)down_up=cv2.pyrUp(..
2021-01-28 10:05:25
205
1
原创 图像金字塔
import cv2import numpy as npdef cv_show(img,name): cv2.imshow(name,img) cv2.waitKey() cv2.destroyAllWindows()img=cv2.imread("AM.png")cv_show(img,'img')print(img.shape)# 高斯金字塔:向上采样方法(放大)up=cv2.pyrUp(img)cv_show(up,'up')print(up.s...
2021-01-28 10:00:31
123
原创 Canny边缘检测
Canny边缘检测 1) 使用高斯滤波器,以平滑图像,滤除噪声。 2) 计算图像中每个像素点的梯度强度和方向。 3) 应用非极大值(Non-Maximum Suppression)抑制,以消除边缘检测带来的杂散响应。 4) 应用双阈值(Double-Threshold)检测来确定真实的和潜在的边缘。 5) 通过抑制孤立的弱边缘最终完成边缘检测。 img=cv2.imread("lena.jpg",cv2.IMREAD_GRAYSCALE)
2021-01-13 21:24:05
285
原创 图像梯度 Sobel算子-Scharr算子-laplacian算子
import cv2import numpy as npimg = cv2.imread('/Users/hellooks/Desktop/图像操作/pie.png',cv2.IMREAD_GRAYSCALE)cv2.imshow("img",img)cv2.waitKey()cv2.destroyAllWindows()# dst = cv2.Sobel(src, ddepth, dx, dy, ksize)# ddepth:图像的深度# dx和dy分别表示水平和竖直方向# ksiz.
2021-01-13 20:33:44
126
原创 python下针对OpenCV中各种(-215:Assertion failed)问题
error: (-215:Assertion failed) dims <= 2 && step[0] > 0 in function 'locateROI'此类问题可以将需处理的图片和程序置于同一个文件夹(project)下之前都用的绝对路径 这里不知为什么 一定要放置在同文件夹下 其他解决方法一直未找到神奇的是 放入在同一文件夹下 你用放在其他位置的绝对路径 也不再报错 magic~...
2021-01-13 20:29:30
5385
原创 Image processing(opencv+python)
灰度图import cv2 #opencv读取的格式是BGRimport numpy as np import matplotlib.pyplot as plt#Matplotlib是RGB%matplotlib inline img=cv2.imread('cat.jpg')img_gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)img_gray.shape(414, 500)cv2.imshow("img_gray", img_gray)c.
2021-01-13 19:57:16
2258
原创 如何将dlib安装到anaconda下的特定虚拟环境中(mac+pycharm+anaconda+dlib)
1. dlib的依赖dlib安装需要的依赖有openblas,opencv。可以直接使用brew安装。 1 2 3 $ brew install openblas $ brew install opencv Mac的X11X11是执行Unix程序的图形窗口环境。Mac OS X本身的程序是Aqua界面的,但是为了能够兼容unix和linux移植过来的程序(Mac OS X由BSD-UNIX修改而来),比如..
2021-01-09 14:28:34
757
原创 plt.imshow()函数调用后图像未显示
之前一直在再用opencv的函数来显示图像,其中cv2.imshow()方法传入标题和图像就能显示图像结果。import cv2img=cv2.imread('/Users/hellooks/Desktop/02.jpg')chair=img[20:1000,30:505]cv2.imshow('chairsssssss',chair)k = cv2.waitKey(0) # waitkey代表读取键盘的输入,括号里的数字代表等待多长时间,单位ms。 0代表一直等待if k == 27:
2021-01-03 09:58:05
943
原创 MacOS+PyCharm配置 Anaconda环境(我的血泪教训+博客翻了不下30个帖子)
在 python 开发中我们最常用的IDE就是PyCharm,有关PyCharm的优点这里就不在赘述。在项目开发中我们经常用到许多第三方库,用的最多的命令就是pip install 第三方库名进行安装。现在你可以使用一个工具来帮你解决经常安装第三方库的麻烦,这个工具就是Anaconda。Anaconda集成了100多个常用的第三方库,在项目的开发中就可以减少使用 pip 命令进行安装。有关Anaconda的安装包,大家可以前往官网进行下载并安装。这里我想注重说明的是Mac 中PyCharm 配置 .
2020-12-31 22:57:06
4625
6
原创 Anaconda中创建虚拟环境、往里加package
进入Anaconda中自己创建的虚拟环境的两种方式:1.直观的慢通道:鼠标一步步点击进入2.直接的快通道:利用terminal(终端)/CMD(命令行)1.anaconda中的不同环境可以进入相应环境下目录下的命令提示行——与直接从外部终端进来的区别:初始当前环境不一样2.conda创建虚拟环境2.1 创建虚拟环境使用 conda create -n env_name (虚拟环境名称)python=2.7(3.6等)2.2 激活活切换环境Linux: source act
2020-12-31 20:37:35
1282
原创 anaconda+mac+terminal 进程已完成
*mac终端出现【进程已完成】怎么办?1.打开 Finder应用程序,找到终端。2.点击偏好设置,选择通用, shell的打开方式,选择命令(完整路径),改为/bin/bash。
2020-12-31 20:28:11
351
原创 MacOS zsh: command not found: conda 解决方案
MacOS zsh: command not found: conda 解决方案基本情况版本: Mac OS Catalina 10.15.7从Anaconda官网下载安装包,安装完后conda代码无法使用解决方案打开Terminal 先找到Anaconda3的路径,一般情况下在/opt/anaconda3/或者/Users/username/,如果都不在请自行寻找。 找到后记录下整个地址,此处地址如图1显示是/opt/anaconda3图14. 切换用户sudo .
2020-12-29 13:09:23
3766
原创 约瑟夫环2013-4
#include<stdlib.h>#include<string.h>#include<math.h>#include<stdio.h>int main(int argc, char const *argv[]){ int a[20]; for(int i=0;i<20;i++) a[i]=1; int i=0; int num=20; int flag=1; while(num>2) { if(i>19).
2020-11-29 22:28:21
73
原创 c++开三次方根
#include <stdio.h>#include <math.h>int main(){ double a = pow(8, 1.0 / 3); printf("%f\n", a); return 0;}注意要1.0/3 1/3=0
2020-11-29 22:11:37
16849
原创 碾转相除法求最大公约数
碾转相除法求最大公约数#include <iostream>#include <conio.h>using namespace std; int gcd(int a, int b){ return b == 0 ? a : gcd(b, a % b);} int main(){ cout << gcd(169, 48) << endl; _getch(); return 0;} ...
2020-11-27 19:59:33
633
原创 12 习题
#include<stdio.h>#include<stdlib.h>#include<string.h>struct student{ int no; char name[100]; float score;}stu[100];int cmp(const void *a ,const void *b){ return (*(struct student *)b).score-(*(struct student *)a).score;}void .
2020-11-18 23:37:52
129
原创 12 file example1-11
#include<stdlib.h>#include<string.h>#include<stdio.h>#include<math.h>//r+b读写打开已经存在的文件//w 写的方式创建 w+读写的方式创建 如果有 直接覆盖int main(int argc, char const *argv[]){ FILE *fp; if((fp=fopen("/Users/hellooks/Desktop/fileio/1115.txt","r.
2020-11-16 20:25:03
123
原创 结构体多级排序的两种写法 以及结构体输入 不用atoi getchar()的方法 即连续输入
#include<stdlib.h>#include<string.h>#include<stdio.h>11struct student{ int no; char name[100]; char tel[10];}stu[100];int cmp(const void *a,const void *b){ if(((*(struct student *)a).no==(*(struct student *)b).no)) return st.
2020-11-12 20:40:27
208
原创 eight-8-white
#include<stdio.h>#include<math.h>#include<string.h>#include<stdlib.h>//8.5//3*3 对角元素和// int main(int argc, char const *argv[])// {// int a[3][3]={1,2,3,4,45,6,67,8,0};// int sum=0;// for(int i=0;i<3;i++)// sum=su.
2020-11-08 22:24:35
130
原创 2019 test1-4
#include<stdio.h>#include<math.h>#include<string.h>#include<stdlib.h>//1int sum(int x){ int sum=0; for(int i=2;i<x;i++) { if(x%i==0) sum=sum+i;} return sum;}int main(int argc, char const *argv[]){ int n; sca.
2020-11-06 20:39:19
95
原创 对于结构体排序问题 结构体数组排完以后 fwrite(&stu,sizeof(stu),1,fp) 之前要把结构体数组st[i]的值传递给结构体stu 才能进行输入
#include<stdio.h>#include<math.h>#include<string.h>#include<stdlib.h>struct student{ char name[100]; int no; int grade;}stu;int cmp(const void *a,const void *b){ if((((*(struct student*)a).grade-(*(struct student*)b).gra.
2020-10-27 11:07:02
1223
原创 2020 test1-4
#include<stdio.h>#include<math.h>#include<string.h>#include<stdlib.h>//1int main(int argc, char const *argv[]){ int a[11]={0}; int x,y; for(int i=0;i<10;i++) printf("%d\n",a[i]); scanf("%d %d",&x,&y); if(x==.
2020-10-26 23:04:22
116
原创 C结果输出两遍
用while循环中的 scanf多次输入时 每输入一个字符后要用getchar() 来吸收 第一次输入时的回车符回车符号被当成第二次输出int main(int argc, char const *argv[]){ char a; int b; while(1) { scanf("%d",&b); // getchar(); printf("值是%c\n",a); if((a>'0'&&a<'9')==0) printf("bus
2020-10-23 21:05:45
1768
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人