
图像处理
GZKPeng
深度学习有四境:调参炼丹境,理论创新陆地神仙境,张量运算剑仙境,无所不通无上剑仙境。
人若无名,便可勤奋练剑
展开
-
图像质量评估指标
peak signal-to-noise ratio (PSNR)structural similarity (SSIM)原创 2023-08-28 16:39:05 · 226 阅读 · 0 评论 -
关于cv2.minAreaRect()的一点备忘
binarymask[int(y):int(h+y)+1,int(x):int(x+w)+1]=0 #对。binarymask[x:x+w,y:h+y]=0 #错。返回的x,y如果用numpy对原图索引,需要反过来并且取整。原创 2023-02-08 08:57:41 · 229 阅读 · 0 评论 -
cv2读取图像后用numpy做条件筛选——图像处理小错误记录
cv2进来的图像数组每个元素都是numpy.uint8类型而不是int原创 2022-09-22 16:39:20 · 758 阅读 · 0 评论 -
图像变换矩阵,参考维基百科图例
图像变换矩阵原创 2022-06-17 10:46:51 · 290 阅读 · 1 评论 -
cv2.error:imgwarp.cpp:2604: error: (-215:Assertion failed) (M0.type() == CV_32F || M0.type() == CV_6
cv2.error: OpenCV(4.5.5) D:\a\opencv-python\opencv-python\opencv\modules\imgproc\src\imgwarp.cpp:2604: error: (-215:Assertion failed) (M0.type() == CV_32F || M0.type() == CV_64F) && M0.rows == 2 && M0.cols == 3 in function 'cv::warpAffine'原创 2022-06-07 11:31:24 · 2677 阅读 · 0 评论 -
FindContours supports only CV_8UC1 images when mode != CV_RETR_FLOODFILL otherwise supports CV_32SC1
cv2报错FindContours supports only CV_8UC1 images when mode != CV_RETR_FLOODFILL otherwise supports CV_32SC1 images only in function 'cvStartFindContours_Impl'原创 2022-06-07 08:32:57 · 3545 阅读 · 0 评论 -
坐标点、坐标轴旋转
围绕原点的旋转如下图, 在2维坐标上,有一点p(x, y) , 直线opの长度为r, 直线op和x轴的正向的夹角为a。 直线op围绕原点做逆时针方向b度的旋转,到达p’ (s,t)s = r cos(a + b) = r cos(a)cos(b) – r sin(a)sin(b) (1.1)t = r sin(a + b) = r sin(a)cos(b) + r cos(a) sin(b) (1.2)其中 x = r cos(a) , y = r sin(a)代入(1.1), (1.2原创 2022-05-30 16:58:09 · 2085 阅读 · 0 评论 -
YOLOV5在detect过程中绘制目标提取框为什么倒置进行绘制
今天师弟问我个问题,在YOLOV5官码detect.py文件中第104行出现如下将目标检测结果绘制在原图与记录在文件中的逻辑:师弟的问题是,这里遍历所有目标的时候,为什么要reversed进行倒置,正着取不行吗?我的答案:可以正着绘制,但是不好。之所以reversed反过来绘制结果,是因为NMS的时候会先根据置信度从高到低做运算,所以输出的时候从高到低,那么绘制的时候从低概率开始绘制,那么就算有重合,高概率覆盖低概率,看起来直观...原创 2021-07-22 15:26:45 · 681 阅读 · 0 评论 -
(-215:Assertion failed) size.width>0 && size.height>0 in function ‘cv::imshow‘
cv2.error: OpenCV(4.3.0) C:\projects\opencv-python\opencv\modules\highgui\src\window.cpp:376: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'cv::imshow'报错得代码:img=cv2.imread(f_dir)原因:路径存在中文、文件地址不存在...原创 2020-10-20 15:43:02 · 414 阅读 · 0 评论 -
python3.6 应用 pyzbar进行条码识别,环境准备工作
pyzbar是python条码扫描库环境:Ubuntu-16 azurepython 3.6通过如下命令安装:pip install pyzbar安装成功后,import pyzbar报错缺少底层zbar。sudo apt-get install libzbar0之后再来一次pip install pyzbar即可原创 2020-10-20 11:07:20 · 836 阅读 · 0 评论 -
编译OpenCV+contribute模块
Opencv3.0以后很多最新的功能或者不稳定的模块在opencv_contrib包中,这个包是需要额外安装的,它并不在标准版本里面,因为这个扩展包中的很多代码并没有通过大量的稳定性测试,但是其基本功能还是可以运行的,并且还在不断的开发和更新中。 工具:Cmake、vs2013首先需要下载Opencv源码,链接: http://opencv.org 注意,我们要下载的是没经过编译的源码,所以选原创 2017-11-06 11:11:58 · 6096 阅读 · 0 评论 -
数据预处理的几个方法:白化、去均值、归一化、PCA
以上转载自:http://ufldl.stanford.edu/wiki/index.php/%E7%99%BD%E5%8C%96 假定数据表示成矩阵为X,其中我们假定X是[N*D]维矩阵(N是样本数据量,D为单张图片的数据向量长度)。 去均值,这是最常见的图片数据预处理,简单说来,它做的事情就是,对待训练的每一张图片的特征,都减去全部训练集图片的特征均值,这么做的直观意义就是,我们把输入数据原创 2017-12-01 11:25:03 · 34514 阅读 · 3 评论 -
tensorflow-cifar10示例报错
1:ArgumentError: argument --train_dir: conflicting option string: --train_dir解决方法,从新开一个console2:ArgumentError: argument --batch_size: conflicting option string: --batch_size因为Cifar10.py 有一段代码:tf.app.f...原创 2018-03-13 21:14:49 · 1252 阅读 · 0 评论 -
关于tensorflow-gpu的程序用spyder运行后,控制台报错: Kernel died, restarting的解决方法
问题:安装tensorflow-gpu以及cuda和cudnn以后,运行原先cpu版时可行的代码,spyder的控制台报错Kernel died, restarting原因:我尝试通过 python xxx.py的方式运行代码文件,发现报错如下:这里圈起来的这句话意思就是我的cudnn是7.1.02版本的,即大版本号是7.1,而cuda源码是用7.0.03编译的,即大版本号是...原创 2019-05-07 09:05:42 · 2681 阅读 · 0 评论 -
关于应用gpu训练神经网络的注意事项
对于GPU来说,一定要注意的是,要分别在两个GPU上,或者不同时的在一个GPU上运行train和evaluation的部分,否则限于GPU擅长迭代而不擅长逻辑的特性,会发生OOM(out of memory)...原创 2018-03-31 10:14:57 · 1868 阅读 · 0 评论 -
更新tensorflow后应用tensorboard报错
更新tensorflow后,出现tensorboard 不可用情况(tensorflow-cpu 1.4 ->tensorflow-gpu 1.7)尝试了更新tensorboard 仍然不可用,事故情况:运行tensorboard.exe报错并且闪退,在控制台运行tensorboard命令,报错如下:多方查证,在国内网站没找到有前车之鉴,于是发布问题到tensorflow ...原创 2019-05-07 09:05:24 · 1817 阅读 · 0 评论 -
H5py报错:OSError: Can't read data (inflate() failed)
转载请注明出处事故描述: 我原先谢了个程序提取.mat文件的数据。以前用没问题,结果今天我准备再提取一次的时候报错如下:Traceback (most recent call last): File "create_dataset.py", line 123, in <module> create_dataset(args.mat_file_path) File "...原创 2018-04-19 20:12:58 · 7632 阅读 · 0 评论 -
Windows用命令查看nvidia的GPU
nvidia-smicmd进入目录输入命令即可:原创 2018-06-09 09:42:25 · 35276 阅读 · 3 评论 -
pytorch 0.4错误总结
0.4.0 发布说明错误修复:修复多进程下的内存泄漏问题 PR #5585 使用多线程版本 MKL 替代顺序版 MKL ,在 CPU 上带来10%的速度提升 PR #6416 重新添加 Compute Capability 5.0 显卡的支持 新功能:在编译中加入 MAGMA 添加 CUDA 9.1 build 提供 Wheels 包 支持新的cpp拓展 PR #5548 ...原创 2018-06-26 13:34:32 · 8598 阅读 · 2 评论 -
python3.5 报错: UnicodeEncodeError:'gbk' can't encode character '\u22f1' in position 211
python3.5 的一个pytorch程序中有打印张量的语句,原先代码还可以运行,几天以后忽然报错: UnicodeEncodeError:’gbk’ can’t encode character ‘\u22f1’ in position 211:illegal multibyte sequence解决方法: win_unicode_console.enable()...原创 2018-07-03 15:12:51 · 472 阅读 · 0 评论 -
Pytorch的Dataloader报错:TypeError: batch must contain tensors, numbers, dicts or lists
具体报错: TypeError: batch must contain tensors, numbers, dicts or lists; found dataloader=torch.utils.data.DataLoader(dataset,batch_size=1,shuffle=True)表面上看这个代码没有问题,实际上问题出在了dataloader机制的要求上,dataload...原创 2018-07-17 12:05:21 · 18243 阅读 · 4 评论 -
CUHK03和Market1501计算CMC和mAP的方法
Cumulative Matching Characteristics (CMC) curves 是目前行人重识别领域最流行的性能评估方法。考虑一个简单的 single-gallery-shot 情形,每个数据集中的ID(gallery ID)只有一个实例. 对于每一次的识别(query), 算法将根据 要查询的图像(query) 到所有gallery samples的距离从小到大排序,CMC t...原创 2018-04-17 08:58:00 · 4676 阅读 · 4 评论 -
Pytorch中的 AdaptivePooling
AdaptivePooling是只出现在Pytoch中的池化方法,官方给出的[运算公式]为:(https://discuss.pytorch.org/t/what-is-adaptiveavgpool2d/26897)kernel的大小为 (input_size+target_size-1) // target_size, i.e. rounded up(即四舍五入)中心点的位置为 四舍五入...原创 2019-05-07 10:15:39 · 998 阅读 · 1 评论 -
弗雷曼链码的差分运算
基础知识: 差分又名差分函数或差分运算,是数学中的一个概念。它将原函数f(x) 映射到f(x+a)-f(x+b) 。 通俗点讲就是一种减法运算。 前提:采用4方向链码按逆时针方向 以逆时针为方向,不难看出: 1-0=1,0-1=-1=3;2-0=2,0-2=-2=2;3-0=3,0-3=-3=1其他的类似计算,负号理解为旋转的方向,在这里以逆时针为正方向那么负号就是顺时原创 2017-10-12 21:06:34 · 6700 阅读 · 1 评论