自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

原创 【linux】chmod权限开放(整个文件夹)

前面第一个rwx 是针对所有者,也就是本人,拥有r(read读), w(write写),x(?chmod a+rwx 其实相当于 chmod 777。三个rwx分别属于user,group,others。第三个 r-x 是针对其他人,拥有执行和读的权限。想要共享conda环境给同事,发现同事没权限。由于同事是组内人,想给他写的权限,本来只要执行。第二个 r-x 是针对组,拥有执行和读的权限。就行,但是发现还是复制不了,发现这个是文件夹,要使用递归。,满足所有子文件都能读写操作。

2024-04-23 20:25:54 208

原创 【python】 numpy 中常用随机数函数的使用和记忆(不易混淆)

在使用numpy生成随机数过程中,通常有多个函数,容易混乱使用,也不知道哪些要加括号,哪些不需要加括号。本文主要总结使用过程中常用随机数生成的一些函数。包括这些函数的使用。

2024-04-14 17:55:20 968

原创 【python、opencv】opencv仿射变换原理及代码实现

仿射变换是opencv的基本知识点,主要目的是将原始图片经过仿射变换矩阵,平移、缩放、旋转成目标图像。原始图像3个点为src,变换后的3个点名为dst,从数字也能看出来,这个变换就是x,y缩小一半。borderMode (可选): 边界模式,用于处理超出边界的像素。其中x,y是原始图像坐标,u,v是变换后的图像坐标。borderValue (可选): 当使用常量填充时的边界值,默认为 0。dst (可选): 输出图像,可以是预先创建的空白图像。3点法,也叫方程法,通过不共线的3个点确定仿射变换矩阵。

2023-12-07 20:53:53 663

原创 【ffmpeg】视频常用操作合集

从1.yuv文件中抽取640*360尺寸的图片,储存在out文件夹中,名字按照0001.png ,0002.png 递增。yuv数据必须指定尺寸,因为他是源数据,没有行列概念。将640*360的源yuv数据1.yuv转为1.MP4。文件夹及文件名: 例如:2-5/%04d.png。1920是开始的列,920是总的提取多少列。尺寸 : 例如 :640x360。视频源:例如: test.yuv。内容写上需要合并的视频名称。

2023-12-05 20:24:53 938

原创 【python】pip install 国内源

python很多库都需要用国内镜像才能比较快,常用的有临时换源或长久换源。在用户主目录加上一个pip文件夹,里面增加一个pip.ini文件,例如。国内源常用的有以下几种。home下创建.pip。

2023-12-05 20:07:25 651

原创 【pytorch】从yolo的make_grid理解torch.meshgrid、torch.stack

w=3,h=6对应的值就是[6,3]也就是第6行,第3列。torch.meshgrid 是 PyTorch 中的一个函数,这个函数通常用于创建坐标点的网格,以便进行一些网格上的操作,比如插值或者计算函数值。torch.stack((xv, yv), 2)就是将上述行列坐标信息堆叠在第2个维度,这样子每个位置就有各自的行列坐标值。可以看到yv实际上是一个纵坐标的网格,每个值都代表着自己所在的行,分别对应0-3行。可以看到w=1,h=2对应的值就是[2,1]也就是第2行,第1列。创建网格代码如下,那么什么是。

2023-11-28 20:33:27 769 2

原创 【Python】np.unique() 介绍与使用

在 numpy.unique 函数中,axis 参数用于指定在哪个轴上执行操作,但在默认情况下,该参数通常是 None,表示在整个数组上执行操作。在很多情况下,我们不需要设置 axis 参数,因为默认值已经能够满足大多数需求。如果你的输入数组是多维的,而且你想在特定轴上找到唯一元素,那么你可以指定 axis 参数。# 在轴 0 上找到唯一元素# 在轴 1 上找到唯一元素输出。

2023-11-23 20:34:57 941

原创 【pytorch】中gather函数的理解

如果指定dim=0,则index里面的数不能超过1,指定dim=1,则index不能超过2,指定dim=3,则index不能超过4。针对a[0]或者a[1] , 在高度维度H上,分别是3行,a[0][0:2] a[1][0:2]。例如在第b[0,1,2]的位置,则选择a[0][index[0,1,2]][2]的值进行代替即可。因此,如果选择dim=1,则index 张量里面的数必须在0-2之间,不然会越界,此时,第一个维度C是不会改变的,还是存在两个通道C,分别是a[0]和a[1],

2023-11-21 20:28:04 714

转载 【linux】跨服务器复制anaconda的环境(直接复制无需重复安装包)

跨服务器复制anaconda环境

2023-10-11 16:35:27 290

转载 【python】 @property属性详解

python@property详解

2023-09-19 16:11:55 805 1

转载 【python】__init__.py的用法

__init__.py学习理解

2023-09-19 15:25:06 867

原创 深度学习归一化原理及代码实现(BatchNorm2d,LayerNorm,InstanceNorm,GroupNorm)

本文记录总结pytorch中四种归一化方式的原理以及实现方式。方便后续理解和使用。

2023-09-18 19:27:25 845 2

原创 【论文阅读】2020ECCV-DFDNet

2020ECCV-DFDNet 人脸修复(Face restoration)

2023-07-20 14:15:34 425

原创 【调试】MNN库编译踩坑记录

● 32位编译:在设置中找到vcvarsamd64_x86.bat(VS 2017的 x64_x86 交叉工具命令提示符)并单击,打开VS交叉编译x86架构程序的虚拟环境。● 64位编译:在设置中找到vcvars64.bat(适用于 VS 2017 的 x64 本机工具命令提示)并单击,打开VS编译x64架构程序的虚拟环境。直接编译debugx64,出现MTd MDd不匹配情况,根据提示,将libprotobuf》属性》C++》代码生成-》运行库改为MDd。继续区域换成中国,尝试ninja编译,成功。

2023-07-13 19:16:49 368

原创 【论文阅读】StyleganV1 算法理解

Styleganv1算法理解

2023-07-04 09:47:13 1284

原创 【调试】vscode远程连接服务器

windows远程连接linux服务器进行操作,有多种方式。可以借助ssh客户端,MobaXtermfinalshell等,这两个我觉得是不错的软件。当然如果需要在服务器编写代码,我还是建议使用vscode这个神奇的工具。怎么用vscode远程连接服务器代码呢?

2023-07-03 16:14:52 581 1

原创 【pytorch,onnx,bug解决】pytorch的op:pixel unshuffle转到onnx的op:SpaceToDepth

pytorch的`F.pixel_unshuffle` 转onnx 的 `SpaceToDepth`,

2023-06-28 17:38:33 1136 1

原创 【linux】一些linux系统下的常用命令(本地使用、远程服务器连接常用)

一些linux系统下的个人常用命令

2023-06-27 20:28:13 418

原创 【git】git常用指令(项目一般使用流程示例)

本文记录github/gitlab上的项目怎么拉到本地、增加开发分支、合并主分支、推到仓库等过程。

2023-06-26 20:24:21 1010

原创 【GAN】GANLoss之‘vanilla‘, ‘lsgan‘, ‘wgan‘, ‘hinge‘的具体计算方式及实现

由于在实际使用中遇到了多种形式的GANLoss,就整理了以下常用的四种GANLoss在应用中的区别,包括'vanilla', 'lsgan', 'wgan', 'hinge'。

2023-06-26 10:53:43 1586

原创 【bug】vscode python 3.6 无法debug 解决方案

解决vscode的python3.6调试问题

2023-06-19 15:37:28 1790

原创 【linux】opencv修改摄像头分辨率

解决linux系统下调用opencv修改摄像头分辨率,一直修改不成功的问题。

2023-06-19 15:21:18 2431

原创 【linux】QT界面失败:出现“qt.qpa.plugin: Could not load the Qt platform plugin “xcb“

使用windows写了一个QT+Opencv的测试程序,想使用ubuntu系统跑,但是发现linux系统中运行QT不太顺利。出现“qt.qpa.plugin: Could not load the Qt platform plugin “xcb“

2023-06-19 15:07:06 1204

原创 【linux】tmux常用指令合集(目的:本地关机不影响服务器训练)

远程服务器训练,本地关机不影响训练怎么做?

2023-06-19 10:49:26 838 3

原创 【pytorch】新的windows电脑从头搭建pytorch深度学习环境(完整版+附安装包)

新电脑配置pytorch深度学习环境,附录有安装包哦

2023-06-17 21:07:00 3230 4

原创 【python】读写txt,npy,csv文件

创建列表data,使用open()函数以写入模式打开一个名为data.csv的文件,并使用csv.writer()函数创建一个写入器对象。例如,'rb’表示以二进制模式打开文件进行读取,'wb’表示以二进制模式打开文件进行写入。使用open()函数打开名为data.csv的CSV文件,并将其用csv.reader()函数进行读取,逐行打印CSV文件的内容。追加模式(‘a’):以追加模式打开文件,如果文件存在,则将新数据追加到文件末尾,如果文件不存在,则创建新文件。这个也是一样,就load函数导入就行了。

2023-06-01 09:49:42 415

原创 【linux】-bash: cd: $‘/..\r‘: 没有那个文件或目录,问题解决

这个错误提示表明脚本文件中的文件夹路径存在问题,导致无法找到指定的文件夹。其中的 \r 字符表示回车符,可能是由于脚本文件在不同操作系统或文本编辑器之间的换行符差异导致的。其实就是将文件中的\r\n 转换为\n。另外需要注意的是:尽量手动输入文件夹路径:因为如果其他地方复制了文件夹路径,粘贴可以会有不可见的特殊字符干扰。linux系统下的文本编辑器好像换行符也是\r\n,因此我在ubuntu下写sh文件就运行不起来。起因是想在ubuntu系统上写sh方便py脚本的测试,但是在写过程中发现sh文件一直出错。

2023-05-30 18:11:57 2142

原创 【python】索引img[:,:,::-1]是什么意思

s[start:stop:step] —— 返回从索引值为 start 开始一直到索引值为 stop 的那个字符之前的,以 step为步长提取的所有字符。s[start:stop] —— 返回从索引值为 start 开始一直到索引值为 stop的那个字符之前的所有字符。s[:stop] —— 返回从字符串开头一直到索引值为 stop 的那个字符之前的所有字符。s[start:] —— 返回从索引值为 start 开始一直到字符串末尾的所有字符。s[index] —— 返回索引值为 index 的那个字符。

2023-05-25 15:42:27 312

原创 【python】图片numpy和pytorch tensor的互相转换

经常使用到的场景是从本地opencv读取一张图片,需要将图片由numpy格式转为tensor格式,并经过一些通道变换(h,w,c)->(b,c,w,h)。transpose 可以理解为修改维度的先后顺序,例如将第三维度拉到第一维度,拉完之后在相应维度上的信息没有发生改变。其中代码的transpose、permute、unsqueeze、squeeze、np.newaxis都是维度的变化。torch tensor 的transpose 只能切换两个维度,permute才能切换多个维度。

2023-05-24 20:16:27 624

原创 【python】hasattr,getattr,setattr原理及在深度学习中的使用

hasattr,getattr,setattr 均涉及类(class)示例对象的属性和方法。需要注意的是,这是最简单的例子,nn.conv 可以换成任意nn.module 模块。hasattr() 函数用来判断某个类实例对象是否包含指定名称的属性或方法。如果是多卡训练,权重需要多个module.names 如果单卡训练则不用。无论是属性名还是方法名,都在 hasattr() 函数的匹配范围内。设置对象属性值或方法值,该属性不一定是存在的,即,可以新建。训练时多个卷积,推理时重参数为一个3x3卷积。

2023-05-23 15:03:03 184

原创 【python】 图片读取方法

PIL在深度学习数据增强中用到了不少,也是一个经常使用到的包。opencv在图像处理方面,感觉应该是用的最广泛的包了。python图像读取的方式主要是opencv,PIL。

2023-05-23 11:23:43 1257

原创 【python】可变、不可变数据类型

可变就是说在相同内存地址的内容可以发生改变,反之,不可变类型就是相同地址的内容不能被修改。个人学习中想要记录的一些东西,不可变数据类型中的数字和字符,对日常使用无影响,元组只要记住不可变就行,因为不可被串改,因此可作为记录使用。若想使用能改变的就用列表或转成numpy数组。可变数据类型记住浅拷贝的时候,原始值和目标值改变一个,另外一个也会发生改变。

2023-05-11 20:40:08 857 3

原创 VisualApplets User Documentation: Part I. User Manual (section1 )

目录1. Introduction1.1. VisualApplets1.2. How to Use This Documentation1.3. System Requirements1. Introduction1.1. VisualApplets功能:将帧捕捉器或相机变成一个灵活的、智能的高性能图像处理器 让您将现代FPGA技术的潜力部署到任何客户 使您能够在几分钟内为有图像处理需求的应用程序实现实时解决方案 将应用程序升级到可靠的硬件解决方案级别visu.

2021-03-24 22:18:15 349

原创 Anaconda,python,tensorflow一步安装教程

文章目录安装版本分别是window10 安装anaconda和tensorflow安装版本分别是tensorflow1.3.0python3.5.0numpy1.16.0(自动安装的是1.17.2,需要手动降级不然会有错误:(/anaconda3/envs/tf/lib/python3.5/site-packages/tensorflow/python/framework/dtypes....

2019-11-04 21:08:37 529 1

转载 C# 子窗体中调用父窗体中的方法(或多窗体之间方法调用)

看似一个简单的功能需求,其实很多初学者处理不好的,很多朋友会这么写:C# Code://父窗体是是frmParent,子窗体是frmChildA//在父窗体中打开子窗体 frmChildA child = new frmChildA();child.MdiParent = this;child.Show();//子窗体调父窗体方法://错误的调用!!!!!!!!(this....

2019-07-22 16:30:22 2100

原创 图像处理之直方图均衡化

出现原因:最重要的灰度值变换是灰度值线性比例缩放,这是一种点处理,意味着变换后的灰度值仅仅依赖于原始图像同一位置的灰度值,y(i)=ax(i)+b 其中y为变换后i位置的灰度值,x为i位置原来的灰度值。为了适用不同的应用场景,对a和b的取值进行了限定,一般是归一化处理,将整个灰度值覆盖的地方达到最大一般是2八次方-1 即0-255。但是如果图像中存在一个非常暗或者非常亮的区域的时候,灰度值归...

2019-07-19 11:32:28 2448

转载 C# ref与out关键字解析

简介:ref和out是C#开发中经常使用的关键字,所以作为一个.NET开发,必须知道如何使用这两个关键字.1、相同点ref和out都是按地址传递,使用后都将改变原来参数的数值。2、ref关键字(1)、使用ref关键字的注意点:i、方法定义和调用方法都必须显式使用 ref 关键字ii、传递到 ref 参数的参数必须初始化,否则程序会报错iii、通过ref的这个特性,一定程度上解决了C#...

2019-07-18 18:04:49 101

转载 普通集合和泛型集合的区别,哈希表和字典表的区别,队列和堆栈的区别以及堆和栈的区别。

普通集合和泛型集合的区别:泛型集合与传统集合相比 类型更安全. 泛型集合无需装箱拆箱操作. 泛型的重要性. 泛型是未来五年的主流技术 …通常情况下,建议您使用泛型集合,因为这样可以获得类型安全的直接优点而不需要从基集合类型派生并实现类型特定的成员。此外,如果集合元素为值类型,泛型集合类型的性能通常优于对应的非泛型集合类型(并优于从非泛型基集合类型派生的类型),因为使用泛型时不必对元素进行装箱。...

2019-07-18 14:14:15 622

转载 C# List用法 List介绍

一、# List泛型集合集合是OOP中的一个重要概念,C#中对集合的全面支持更是该语言的精华之一。为什么要用泛型集合?在C# 2.0之前,主要可以通过两种方式实现集合:a.使用ArrayList直接将对象放入ArrayList,操作直观,但由于集合中的项是Object类型,因此每次使用都必须进行繁琐的类型转换。b.使用自定义集合类比较常见的做法是从CollectionBase抽象类继...

2019-07-15 09:06:39 433

转载 C#序列化和反序列化

序列化和反序列化操作:作用:实现不借助数据库持久化的保存数据。实现步骤:反序列化:将序列化保存之后的数据,读取到当前的系统当中。转自https://blog.csdn.net/u013247401/article/details/82845992...

2019-07-12 17:49:04 79

python+opencv 读取webcamera,并显示

python+opencv 读取网络摄像头、usbcamera等,并显示

2023-07-14

find-avaGPU.py

使用python,自动寻找服务器中显存最大的GPU进行pytorch推理,避免显存不够导致的推理失败。

2023-05-24

空空如也

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

TA关注的人

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