python
向前 向前 向前!
这个作者很懒,什么都没留下…
展开
-
cv画线、圈、框、文字
cv原创 2022-12-13 13:31:13 · 254 阅读 · 1 评论 -
cv画线、圈、框、文字
cv原创 2022-12-13 10:11:14 · 207 阅读 · 0 评论 -
fit_line
fit_line原创 2022-12-13 09:57:55 · 276 阅读 · 0 评论 -
plt画图
plt画图原创 2022-12-12 10:50:19 · 210 阅读 · 0 评论 -
opencv-python如何找到最大的轮廓并提取该轮廓对应的mask部分以及opencv常见的问题
opencv-python如何找到最大的轮廓并提取该轮廓对应的mask部分以及opencv常见的问题一、如何找到最大的轮廓并提取该轮廓对应的mask部分主要用到的函数:cv.threshold() cv.findContours() cv.drawContours()首先要讲的是这三个函数的输入图像,这里很重要也很麻烦。1.cv.threshold()函数输入的图像数据可以是单通道也可以是三通道,输出通道数和输入通道数是一致的。但是由于cv.findContours()函数的输入是单通道的,因此我们原创 2022-04-26 17:00:07 · 7196 阅读 · 2 评论 -
python的一些语法笔记
python的一些语法笔记1.在写入.txt文件时常用到"\n"换行符,读取的时候自然也会读取到,但是当我们用print打印的时候却看不到它的存在,有时候我们会认为它不存在,导致我们在逐行读取.txt文件时忽视它。在我们要逐行读取.txt文件时一定要小心这个换行符,我们可以用.strip()去掉换行符#我们先写一个文件 这个时候是有换行的f = open("kk.txt",'w')f.write("hello...."+"\n"+"disjkna")f.close()#再逐行读取并打印:f原创 2022-03-31 21:46:45 · 604 阅读 · 0 评论 -
opencv-python 读取视频时如何判断读取到最后一张
opencv-python 读取视频时如何判断读取到最后一张读取视频的代码:通过 if img is None来判断是否读取到最后一帧import cv2 as cvcapture = cv.VideoCapture(avipath)if capture.isOpened(): while 1: ret,img = capture.read() if img is None: break...原创 2022-03-30 14:39:44 · 5590 阅读 · 0 评论 -
在深度学习中常用的torch,np语法
常用torch,np语法一、torch二、np1.np.concatenate: 作用是将()中多个np.array进行连接#这一段代码是计算ap的mrec = np.concatenate(([0.0], rec, [1.0]))mpre = np.concatenate(([0.0], prec, [0.0]))#例:a = np.array([0.1,0.3,0.5])x = np.concatenate(([[0],a,[0]]))print(x)>>>[0.原创 2022-03-28 18:02:58 · 1730 阅读 · 0 评论 -
记录一个torch.tensor的语法,用于mask挑选tensor中的值
kk = torch.tensor([[4,5],[7,8]])x = torch.zeros(2,2)y = torch.tensor([[1,0],[0,1]])print([x.byte() |y.byte()])print(kk[x.byte() |y.byte()])outputs:原创 2022-03-22 11:11:57 · 722 阅读 · 0 评论 -
torch中,tensor数值类型变成bool值
直接使用下面的语句会报错:‘Tensor’ object has no attribute ‘bool’a = torch.ones(2,2)a.bool()应该改成:a = torch.ones(2,2)a.byte()原创 2022-03-22 10:59:44 · 6924 阅读 · 2 评论 -
python opencv中resize如何写尺寸?
python opencv中resize如何写尺寸?注意:1.我们使用opencv重新给图片设置尺寸时的书写方法:先写长,后写高2.这和我们打印图片尺寸不一样, print(img.shape)这个展示出来的是先高h,后长w。import cv2 as cvimg= cv.resize(img,(w,h))...原创 2022-03-07 14:50:41 · 3478 阅读 · 0 评论 -
opencv -python为什么使用最近邻resize后得到的图像依然变成了多像素?
opencv -python为什么使用最近邻resize后得到的图像依然变成了多像素?原创 2022-01-18 10:24:22 · 3051 阅读 · 0 评论 -
python使用VideoWriter将图像写入视频后出现播放失败
python使用VideoWriter将图像写入视频后出现播放失败原因1,图像尺寸不一样,要写入的图片的高或者宽和VideoWriter设置的高或宽不对应。img.shape第一个是高,第二个是宽,VideoWriter的参数表中元组刚好相反原因2, VideoWriter默认写入的图像是三通道的,如果图像是单通道需要转换为三通道:img =cv.cvtColor(img,cv.COLOR_GRAY2BGR) # cv.VideoWriter()默认是写入三通道的数据完整代码:def save_原创 2022-01-06 10:59:50 · 3891 阅读 · 0 评论 -
numpy使用random生成一个float(Double)类随机矩阵
numpy使用random生成一个float(Double)类随机矩阵一、np.random.rand(a1,a2,a3,… )生成一个a1Xa2Xa3的矩阵,元素的值为0~1。import numpy as npinput = np.random.rand(2,3,4)*10 #乘以10,把元素的值变为0~10,同理可以变为任意范围input = input.astype(np.float32) #使用astype()可以变为指定类型的数据,doubel就是float32input = tor原创 2021-11-30 15:07:38 · 5231 阅读 · 0 评论 -
python中的iter()与next()函数的联合使用
python中的iter()与next()函数的联合使用list、dict等都是可迭代对象,我们可以通过iter()函数获取这些可迭代对象的迭代器。然后我们可以对获取到的迭代器不断使⽤next()函数来获取下⼀条数据。iter()函数实际上就是调⽤了可迭代对象的 __inter__方法__iter__ ⽅法。>>> li = [11, 22, 33,]>>> li_iter = iter(li)&g原创 2021-11-17 17:01:02 · 623 阅读 · 0 评论 -
python:在for遍历list时使用remove出现的问题
python:在for遍历list时使用remove出现的问题标准的错误,经典的零分:自己的回答:运行后a是空的。a=[1,2,3,4,5]for i in a: a.remove(i)print a正解原创 2021-11-05 11:25:04 · 213 阅读 · 0 评论 -
opencv-python(边缘检测,图像采样,直方图)
opencv-python(边缘检测,图像采样,直方图)一、边缘检测:由于像素是离散的数值,所以我们用差分近似倒数,我们知道倒数的定义就是斜率,如果倒数不为零就说明这个位置不平,就一定有变化,这个时候就把它看作是边缘。1。Sobel算子:左边是对垂直方向边缘的检测,右边是对水平边缘的检测import cv2 as cv#cv.Sobel() dx dy 通常为0或者1,0表示该方向没有求导dst1 = cv.Sobel(lena_gray,cv.CV_64F,1,0) #这里cv.CV_原创 2021-11-03 22:05:36 · 480 阅读 · 0 评论 -
2021-11-02
2_finetune.py# coding: utf-8import torchfrom torch.utils.data import DataLoaderimport torchvision.transforms as transformsimport numpy as npimport osfrom torch.autograd import Variableimport torch.nn as nnimport torch.nn.functional as Fimport to原创 2021-11-02 18:54:17 · 94 阅读 · 0 评论 -
2021-11-02
Cifar10数据的归一化# coding: utf-8import numpy as npimport cv2import randomimport os""" 随机挑选CNum张图片,进行按通道计算均值mean和标准差std 先将像素从0~255归一化至 0-1 再计算"""train_txt_path = os.path.join("..", "..", "Data/train.txt")CNum = 2000 # 挑选多少图片进行计算img_h原创 2021-11-02 18:53:08 · 100 阅读 · 0 评论 -
2021-11-02
Cifar10数据处理4 datasets# coding: utf-8from PIL import Imagefrom torch.utils.data import Datasetclass MyDataset(Dataset): def __init__(self, txt_path, transform=None, target_transform=None): fh = open(txt_path, 'r') imgs = []原创 2021-11-02 18:51:55 · 88 阅读 · 0 评论 -
2021-11-02
Cifar10数据处理3# coding:utf-8import os''' 为数据集生成对应的txt文件'''train_txt_path = os.path.join("..", "..", "Data", "train.txt")train_dir = os.path.join("..", "..", "Data", "train")valid_txt_path = os.path.join("..", "..", "Data", "valid.txt")valid_dir原创 2021-11-02 18:50:55 · 214 阅读 · 0 评论 -
2021-11-02
将原始数据集进行划分成训练集、验证集和测试集# coding: utf-8""" 将原始数据集进行划分成训练集、验证集和测试集"""import osimport globimport randomimport shutildataset_dir = os.path.join("..", "..", "Data", "cifar-10-png", "raw_test")train_dir = os.path.join("..", "..", "Data", "train")v原创 2021-11-02 18:49:31 · 288 阅读 · 0 评论 -
将cifar10的数据 转换成 png格式的图片
将cifar10的数据 转换成 png格式的图片# coding:utf-8""" 将cifar10的data_batch_12345 转换成 png格式的图片 每个类别单独存放在一个文件夹,文件夹名称为0-9"""from imageio import imwriteimport numpy as npimport osimport pickledata_dir = os.path.join("..", "..", "Data", "cifar-10-batches-p原创 2021-11-02 18:48:25 · 504 阅读 · 0 评论 -
pytorch中 torch.nn的介绍
pytorch中 torch.nn的介绍一、torch.nn是什么?torch.nn是pytorch中自带的一个函数库,里面包含了神经网络中使用的一些常用函数,如具有可学习参数的nn.Conv2d(),nn.Linear()和不具有可学习的参数(如ReLU,pool,DropOut等),这些函数可以放在构造函数中,也可以不放。二、torch.nn的应用。通常引入的时候写成:import torch.nnimport torch.nn.functional as F这里我们把函数写在了构造函数中原创 2021-11-01 22:06:06 · 17116 阅读 · 0 评论 -
python-opencv之色彩空间,RGB2HSV色彩空间转换及应用
python-opencv之色彩空间,RGB2HSV色彩空间转换及应用一、Python-opencv中的色彩空间二、为什么同样的图片用公式换了色彩空间显示出来的完全不一样?三、cv2.inRange()函数四、 BGRA图像一、Python-opencv中的色彩空间在这里主要介绍RGB和HSV色彩空间,这二者具体是什么这里不再详细介绍,其他回答都很详细。这里要介绍一下二者的取值和关系:在Python-opencv中,RGB图像三个通道的取值都是0~255,*而HSV中H取值为0-180,S和V取值都原创 2021-10-26 22:00:22 · 3989 阅读 · 0 评论 -
pytorch之求导和反向传播,.backward()函数,权值更新
@TOC一、求导在pytorch中有自动求导功能,张量tensor中有一个参数requires_grad,当我们创建一个tensor时设置其为True时即标记为自动求导,此时这个张量参与的运算会被跟踪记录,其默认值是false需要注意的是,这个requires_grad是具有传递性的,用图和代码举个例子:再用代码演示一次:x = torch.ones(2,2,requires_grad=True) #requires_grad默认是falsey = torch.ones(2,2)z = to原创 2021-10-26 21:32:13 · 364 阅读 · 0 评论 -
2021-10-25
linux下Anaconda的使用一、激活虚拟环境二、查看环境中已有的库一、激活虚拟环境示例:source activate myenv 激活虚拟环境二、查看环境中已有的库conda list原创 2021-10-25 11:30:41 · 52 阅读 · 0 评论 -
pytorch之求导
一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')import sslssl._create_default_原创 2021-01-27 12:12:42 · 423 阅读 · 0 评论