自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 多线程编程C++++++++++++第10课(共享锁)

故事是这样的,为了提高效率,当多个线程在读取某个内存资源的时候,如果使用互斥锁或者递归锁的话,其他线程必须等待该线程结束,释放锁才能读取该内存资源。但假如该线程只读取不写的话,那能不能让其他线程也来一起读。可以使得多个线程一起读取。也可以进化为互斥锁,条件为:某个线程在读的过程中,想要写入,直接使用,mux.lock();其他线程这时候会堵塞不能访问,只能等待该线程mux.unlock();

2023-07-28 13:49:29 275

原创 多线程编程C+++++++++++第9课(超时锁)

嗯,我是一个线程,我看不到其他线程,我眼里只有能访问的区域。咦,哪个区域怎么不给我访问,怎么上锁了,我想自己上锁的。我等待把,我等了1000ms还是没等待成功,我该走还是改怎么办呢?他这个锁是超时的,我自己写了一部分代码,检测他是否超时,不然我一直等下去多甜狗。

2023-07-26 17:11:58 166

原创 多线程编程C+++++++++++++第8课(互斥锁后面加个sleep_for啊,不然unlock后,它自己又抢上这个临界区了)

加入其他事件,或者其他代码,让其他线程能够有一点点反应时间抢这个临界区。5号线程一直占用着临界区。

2023-07-26 16:45:47 141

原创 多线程编程C++++++++第7课(资源搞个临界区,上个锁,不然多线程们就竞争起来了)

那么使用锁,锁上临界区,掌控临界区内的资源。

2023-07-26 16:30:17 103

原创 多线程编程C++++++++++第6课(互斥访问模拟初始化工作)

有时候,模拟化工作只需要做一次,假设SystemInit()是一个初始化程序块,我们在整个程序中只运行执行一次,即使多个线程使用该SystemInit()进行多次初始化也不行。使用mutex对该块函数进行上锁。#include , 编写完 SystemInit(),再编写一个只执行一次的函数 mutex_SystemInit(){

2023-07-26 15:54:22 44

原创 多线程编程C+-----第5课(封装一个父类,管理线程的生命(创建与销毁)并继承)

这里应该是实现线程池的基础,线程池是百万并发的基础,百万并发是赚一百分的基础(嘿嘿)。//检测线程对象是否存活。//线程函数,必须重写。//线程执行,直到结束并销毁;

2023-07-26 13:56:00 52

原创 多线程编程C+----第4课(子线程参数传递)

之前写的子线程,子线程的初始状态都是空的,即没有任何参数传入;现在测试子线程参数传递的情况,分别传入:int,float,string 和类。学习使用std::ref(传入参数),该函数是打包传递,目的是让子程序对传入参数有访问权限,即修改和读取权限。

2023-07-26 12:45:50 96

原创 多线程编程C+-----------第3课

【代码】多线程编程C+-----------第3课。

2023-07-26 11:11:37 42

原创 多线程编程C+ -----------第2课

这好比,其实你要去吃饭了,但你需要等你同学写完这道题,然后一起去吃放。为了提升效率,你不等你同学了(哈哈),你要跟他分离,做分离操作。其实是子线程发起的分离,th.detach();很好,主线程已经去吃饭了,假如此时外面下大雨,你们只有一把伞,你(主线程)拥有这把伞的所有权(相当于内存资源),你就去吃饭了,子线程没来得及写完题目,然后他没伞,他去不了吃饭了。2.解决问题1,采用th.detach()分离,但又有可能会遇到主程序提取释放了所有资源,子线程无法访问资源(伞),而失效。

2023-07-26 10:53:41 49

原创 多线程编程学习C+------------------第一课

【代码】多线程编程学习C+新特性版本。

2023-07-26 10:31:27 41

原创 深度学习:分类数据集划分python代码

这个代码是用来划分分类数据集的。

2022-12-14 16:19:11 1900 1

原创 python 从某个文件夹中挑选某些文件到新的文件夹

有时候我们想挑选出一些文件到新的地方,但手动挑选,按住ctrl这样效率偏低,所以使用python帮我们复制到新文件里。

2022-07-15 10:55:59 1290

原创 YOLO格式下,将标签贴回原图

最近在做目标检测,需要将yolo格式下的txt标签数据贴回原图,跟模型预测的结果进行对比,所以写了一个代码:该代码实现的是标签数据贴回原图。

2022-06-20 11:56:24 1349 1

原创 LabelImg 标注的xml文件转成yolo下的txt格式。

故事背景在做目标检测时,标注数据集往往使用labelimg,但一般情况下生成的是xml格式的文件。xml转txt代码import osimport os.pathimport xml.etree.ElementTree as ETimport globclass_names = ['good','bad'] # 类别名,依次写下来dirpath = r'./data' # 原来存放xml文件的目录newdir = r'./output' # 修改label后形成的txt目录if

2022-04-10 20:59:43 2636

转载 python图像增广之图像旋转(90 180 270度)

故事背景做农业方面相关的数据,目标检测。在目标上方拍摄的图像其实很需要旋转进行增广。代码import osfrom PIL import Imagepath = r'./imgs'for i in os.listdir(path): img = Image.open(os.path.join (path,i)) # img = img.transpose(Image.ROTATE_90) # 将图片旋转90度 # img.save("imgs/{}-{}.jpg".f

2022-04-10 13:03:41 2086

原创 亮度增强、对比度增强、水平翻转和随机方向旋转

'''亮度增强、对比度增强、水平翻转和随机方向旋转'''from PIL import ImageEnhanceimport osimport numpy as npfrom PIL import Image#1.亮度增强def brightnessEnhancement(root_path,img_name): image = Image.open(os.path.join(root_path, img_name)) enh_bri = ImageEnhance.Brigh

2022-04-09 09:49:24 660

原创 匹配两个文件夹下文件是否完整

故事背景最近要跑一个深度学习模型,下载了数据集,发现images文件夹和labels文件夹的数目不对。也就是说,两个文件夹中必有一方是少数据的,这对于我训练不好,所以我要做的是匹配两文件夹下的文件名称,剔除丢失的文件使用python完成import osdef match_name(A_path,B_path): #两个列表用于存放的文件名 A_list =os.listdir(A_path) B_list =os.listdir(B_path) if(len(

2022-04-07 15:12:11 1592

原创 CF-ViT论文粗读

ViT 你准备用了么?Vision Transformer 最近被我学了一下,发现其机理确实能够很好的突出数据的特征,所以性能比CNN好(在大致情况下)。但是Vision Transformer 有一个主要的缺点就是,计算量会很大,参数很多,预测新图片时间会很慢。但是我想,后面会不会有一大批来研究如何减少模型计算量的论文,果不其然,很多啊,如下面这篇:Coarse-to-Fine Vision Transformer论文地址:https://arxiv.org/pdf/2203.03821v1.pd

2022-03-10 13:36:41 4402

原创 随机划分训练集和测试集python代码

"""本程序是随机划分训练集和测试集的"""import osimport randomimport shutildef howmuch(path): sum =0 for i in os.listdir(path): sum+=1 return sumdef move(src,dst,number): #随机生成要移动的数字列表 list = random.sample(range(0, sum),number) for

2022-02-12 21:40:54 3421 2

原创 如何查看机器是否装好了CUDA,是否能够使用GPU

这里写自定义目录标题这机子不讨我欢喜啊这机子不讨我欢喜啊如何查看自己的电脑是否能够使用CUDA进行深度学习的加速,按照下面的图片打1 2 3 4 这几句命令,我发现我的电脑没装好CUDA ,所以用pytorch 不能进行加速。得重装!如果5返回true就可以使用。...

2022-01-14 19:50:10 4293

原创 假设你刚开始学习python和AI中的深度学习,你可以看看我

一、python了解python 语言是一门擅长处理数据的一门语言,现在用来训练深度学习模型也是比较有效的一门语言。所以,让同学们自行查找以下几个问题:1.python 是一门什么类型的语言?2.python 的虚拟环境的作用?3.pycharm 与python 的关系?4.annaconda 与python 之间的关系?5.下载 annacodna 和pycharm 并建立一个虚拟环境?(可以去CSDN上找这些答案,https://www.csdn.net/ 。或者其他学习社区网站!只

2022-01-05 17:03:14 769

原创 探究卷积核与图像之间的关系

小波吉

2021-12-03 14:29:10 3518

原创 数据分析——深度学习入门

一.到底什么是数据分析?我打开书本,书上说有个人叫罗纳德费雪,他是一个统计学家(数学家),在1936年发布了Iris数据集。1.当时机器学习都没真正出现,这个数据集到底是什么样子的?于是用python看了一下(因为有人将该数据集做进了包里)2.代码// An highlighted block'''Iris 数据 是1936某科学家整理处理的,本实验就是看看他的数据;以他的数据理解,数据分析Iris 通过4个特征分成了三个类别,分别用 0 ,1 ,2 代表这三个类'''from sk

2021-10-10 15:40:26 306

原创 B树C++代码之查找程序

前言:因为最近需要写个数据结构完成作业,选了个B树。首先需要写个头文件将数据结构中的B树内容知识装在这个头文件上,主程序才能用这个数据结构。然后就看了书,写了一点点这个代码。后续还有插入、删除等等的操作。B树C++代码之查找程序:// An highlighted block#include <stdlib.h>using namespace std;#define m 3 #define ElemType char;//定义一个B树的一个节点,节点里包含这些东西 typed

2021-10-10 11:26:29 278

转载 爬虫头文件

headers = { "authority": "www.zhihu.com", "method": "POST",#post好牛逼啊 "scheme": "https", "accept-language": "zh-CN,zh;q=0.9", "cookie": '_zap=4b8fd0b0-5ece-4710-8a39-4690be3cc915; d_c0="ACDn4-HhLA-PTloTkzkSI1g9NSQ0UNbecnY=|1553490041"; _

2021-09-12 11:29:58 334

原创 第2节:图像处理基础知识

第2节:图像处理基础知识2.1 图像包含着信息(信息熵)提取出特征回归图像2.2 图像以矩阵表示单层图像,是一个个像素点组成,像素点的多少称为图片的分辨率,分辨率越高,像素点越密集,像素点是一个个数值。整体来看,一张图片就是一个二维矩阵。2.3 什么是灰度图像?就是没有上色的,仅仅有像素点的值。值的范围:0-255 ! 0:纯黑 255纯白 Opencv 怎么读取灰度值图像? gray_img = cv2.imread('./test.jpg,0) or cv2.

2021-09-11 10:35:50 156

原创 OpenCV 和图像处理学习第1节

第一节:如何使用python进行opencv入门1.opencv 的安装:安装 numpy : pip install numpy安装 opencv-python: pip install opencv-python2.导入Opencv:import cv23.图像的载入:img = cv2.imread(‘path’,…)4.显示图像:cv2.imshow(‘无心’,img )5.等待关闭,保持静止:cv2.waitKey(0)...

2021-09-11 09:13:34 97

原创 2021-09-04

爬虫-4K壁纸网获取图片介绍:使用requests 模块获取网页,用BeautifuSoup解析网页,最后提取标签内容,使用wget下载图片。适用:新手学习爬虫代码// An highlighted blockvar foo = ‘bar’;import reimport requestsimport wgetfrom bs4 import BeautifulSoup as bsimport timeimport osimport struct#获取一个网页def reback_

2021-09-04 17:19:37 110

51单片机指令大全宝典

我在学51单片机,由于是初学,在写代码的时候,老是不知道那些指令有哪些,怎么用的好。所以我把指令整理了一遍,用python写了个检索的程序。比如你在写单片机的代码,想用转移指令,转移指令那么多条,通过该小程序,就能检索出符合的指令。不过只是小玩意,大家一起学习。

2020-05-21

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除