- 博客(43)
- 资源 (1)
- 收藏
- 关注
原创 mutable default <class ‘timm.models.maxxvit.MaxxVitConvCfg‘> for field conv_cfg is not aallowed
在准备训练图像分类模型的时候出现了这样的错误输出:ValueError: mutable default <class 'timm.models.maxxvit.MaxxVitConvCfg'> for field conv_cfg is not allowed: use default_factory,即在import timm时报错。
2025-03-28 16:33:04
197
原创 大疆 M30T H20T H30T 御2行业进阶版(M2EA) 热红外图像jpg转tiff或tif,并将tiff或tif使用pix4d合成 | 热红外照片温度信息提取(方法三)
看到很多人不会处理大疆无人机拍摄的热红外照片,也不怎么会合成正射影像,在这里我介绍一种处理大疆多种无人机热红外成像照片的方法,以及将处理好的热红外照片拼接成正射影像(大图)。由于大疆R-JPEG格式照片无法直接导出纯温度信息,我这里提出通过提取温度信息转成TIFF或者TIF格式,并在Pix4Dmapper软件中进行空三和拼接,以保留温度细节。这个方法唯一的缺点就是没有了相机型号信息,目前我不知道怎么解决,如果有大佬知道,还望多指导指导。
2025-02-28 15:39:13
885
原创 \wsl.localhost\Ubuntu-22.04 无法访问。你可能没有权限使用网络资源。请与这台服务器的管理员联系以查明你是否有访问权限。试图访问无效的地址。
安装了某个模拟器之后突然无法访问WSL的ubuntu,终端也无法使用,具体提示为:打开文件夹\wsl.localhost\Ubuntu-22.04 无法访问。你可能没有权限使用网络资源。请与这台服务器的管理员联系以查明你是否有访问权限。试图访问无效的地址。原因大概是安装模拟器之后重启关闭了虚拟机平台
2024-12-20 09:32:59
804
原创 如何在arcmap软件中打开shapefile文件绘制矩形
3.在Create Features中选择shapefile文件并选择要绘制的工具。先选择一个顶点,再选择另一个顶点,最后把线条延伸即可绘制一个矩形。2.选择Editor----->Start Editing。1.选择需要绘制的shapefile文件。
2024-12-15 16:26:03
261
原创 在arcmap中如何根据shapefile文件裁剪gdb(shapefile)文件
在这里讲解一下如何根据矢量文件(如 Shapefile)裁剪 GDB (shapefile)文件,并将裁剪得到的结果转换为矢量文件(如 Shapefile)选择DLTB,拖入显示窗口即可打开gdb文件。选择Geoprocessing——>Clip。2.导入gdb(shapefile)文件。点击OK即可裁剪成功。1.导入shapefile文件。
2024-12-10 11:24:05
370
原创 如何利用ArcMap裁剪TIF格式影像
1.新建矢量(shapefile)文件 打开Catalog 在Catalog中找到自己想链接的文件夹,即存放shapefile文件的文件夹 右键文件夹选择 “new” ---> “Shapefile” 设置矢量文件类型、投影 2.设置矢量(shapefile)文件范围3.裁剪tif影像
2024-12-09 10:32:03
1586
原创 [保姆式教程]使用目标检测模型YOLO11 OBB进行旋转目标检测:训练自己的数据集(基于卫星和无人机的农业大棚数据集)
之前写了一个基于YOLOv8做旋转目标检测(OBB)的文章,内容写得不够好,内容也有些杂乱无序。现如今YOLO已经更新到11了,数据集也集齐了无人机和卫星的农业大棚,所以这次就写一个基于YOLO11 OBB的农业大棚旋转检测。
2024-12-04 21:17:21
2368
3
原创 [保姆式教程]使用labelimg2软件标注定向目标检测数据和格式转换
定向目标检测是一种在图像或视频中识别和定位对象的同时,还估计它们方向的技术。这种技术特别适用于处理有一定旋转或方向变化的对象,例如汽车、飞机或文本。定向目标检测器的输出是一组旋转的边界框,这些框精确地包围了图像中的对象,并且每个框都带有类别标签和置信度分数。LabelImg2是LabelImg的一个改进版本,它不仅支持传统的轴对齐矩形边界框标注,还支持旋转边界框(即定向边界框)的标注。这对于需要精确捕捉物体方向的目标检测任务非常有用。
2024-11-28 10:04:07
618
原创 attributeerror: ‘FreeTypeFont‘ object has no attribute ‘getsize‘问题
我在训练yolov9的时候报错:attributeerror: ‘FreeTypeFont‘ object has no attribute ‘getsize‘。如果不想降级,仍然使用pillow10解决这个报错,可以使用getbbox方法,返回值和getsize方法是一样的。字体的原因,其实真实问题出现yolo版本安装的Pillow库更新后,getsize()方法已经抛弃使用了。意思是getsize方法将在pillow10中被getbbox或getlength代替。再去执行,可以成功运行,但是有个警告。
2024-11-06 09:28:27
1737
原创 基于windows10的WSL详细安装与使用教程
WSL(Windows Subsyetem for Linux,适用于 Linux 的 Windows 子系统),是 Microsoft 公司于 2016 年在 Windows 10 平台发布的一项功能,其使得用户可以在 Windows 操作系统上运行 ELF 格式的 Linux 可执行文件。WSL 目前已发布两代产品:WSL 1 和 WSL 2。WSL 1 实现了 Linux 兼容层,将 Linux 系统调用转换为 Windows NT 系统调用;
2024-10-19 20:54:43
10771
10
原创 在WSL2中删除文件后,磁盘空间未释放怎么办
不同于 WSL1,WSL2 本质上是虚拟机,所以 Windows 会自动创建 vhdx 后缀的虚拟磁盘文件作为存储。我在WSL中删掉了一些文件,但是磁盘剩余空间并没有增加,于是去搜索了相关内容,找到了原因和解决办法。这个 vhdx 后缀的虚拟磁盘文件特点是可以自动扩容,但是一般不会自动缩容。一旦有很多文件把它“撑大”,即使把这些文件删除它也不会自动“缩小”如果默认WSL安装在C盘,那么Linux 发行版的。2.第一步,找到并确定要压缩的虚拟磁盘文件。文件一般都会在下面的路径中。盘的存储空间得到了释放。
2024-08-28 16:51:08
1373
原创 使用SAM(Segment Anything Model)模型中的SamAutomaticMaskGenerator一键分割图片中所有对象并保存所有分割后的目标对象
下面将介绍使用SAM(Segment Anything Model)模型中的SamAutomaticMaskGenerator一键分割图片中所有对象并保存所有分割后的目标对象,包括保存图像完整的mask和图像中各个mask。也可以通过调整SamAutomaticMaskGenerator函数中的相关参数,以得到不同尺度的分割结果,下面是SamAutomaticMaskGenerator()函数的参数默认值。
2024-07-18 10:19:16
285
原创 使用SAM(Segment Anything Model)模型做图像分割,包括单个、多个提示点进行目标分割
最近需要做YOLO + SAM的工作,先是实现了YOLOV8 OBB + SAM模型的级联,即在使用旋转目标检测模型YOLOV8 OBB对图像推理得到检测框之后分别计算检测框内部的单个和多个坐标点,在SAM模型中分别使用单个和多个提示点对目标进行分割(也可以对旋转检测框内的目标进行分割)
2024-07-17 21:37:51
891
原创 使用目标检测模型YOLO V10 OBB进行旋转目标的检测:训练自己的数据集(基于卫星和无人机的农业大棚数据集)
这个是在YOLO V10源码的基础上实现的。我只是在源码的基础上做了些许的改动。因为YOLOv10是是在Ultralytics的基础上开发而来,所有可以轻松地按照V8 OBB中的代码来修改。修改一个yaml文件和一个脚本脚本代码就可以实现YOLO V10 OBB
2024-07-02 16:24:42
2414
15
原创 使用目标检测模型YOLO V9 OBB进行旋转目标的检测:训练自己的数据集(基于卫星和无人机的农业大棚数据集)二
在网上看到别人在YOLO V9 源码上实现了旋转目标检测,但是我在按照他的方法进行训练的时候出现了错误提示,问题弄了很久都没有解决。运行训练脚本train_dual.py提示如下。loss_tal_dual.py中的报错代码。运行训练脚本train.py提示如下。loss_tal.py中的报错代码。
2024-06-04 15:49:34
743
2
原创 使用目标检测模型YOLO V9 OBB进行旋转目标的检测:训练自己的数据集(基于卫星和无人机的农业大棚数据集)
我看到YOLO V8中(ultralytics版本8.2.18)集成了YOLO V9,所以直接在YOLO V8 OBB的基础上实现YOLO V9 OBB,训练结果也出来了,但是评估指标比YOLO V8 OBB低一点点。之前不知道是因为什么原因,现在原因查明了,是因为训练的v9 OBB只有主分支,没有辅助分支,所以精度较低。还有另一个原因可能是没有预训练权重,如果先在DOTA数据集上进行预训练,再使用预训练权重训练v9 OBB,精度可能还可以再提一点。
2024-05-28 09:16:10
1131
9
原创 [保姆式教程]使用目标检测模型YOLO V8 OBB进行旋转目标的检测:训练自己的数据集(基于卫星和无人机的农业大棚数据集)
最近需要做基于卫星和无人机的农业大棚的旋转目标检测,基于YOLO V8 OBB的原因是因为尝试的第二个模型就是YOLO V8,后面会基于YOLO V9模型做农业大棚的旋转目标检测。YOLO V9目前还不能进行旋转目标的检测,需要修改代码PS:欢迎大家分享农业大棚数据集,数据制作太花时间了......下面是我制作的农业大棚图像。
2024-05-20 16:22:54
8219
18
原创 [保姆式教程]使用目标检测模型YOLO V5 OBB进行旋转目标的检测:训练自己的数据集(基于卫星和无人机的农业大棚数据集)
最近需要做基于卫星和无人机的农业大棚的旋转目标检测,基于YOLO V5 OBB的原因是因为尝试的第一个模型就是YOLO V5,后面会基于其他YOLO系列模型做农业大棚的旋转目标检测,尤其是YOLO V9,YOLO V9目前还不能进行旋转目标的检测,需要修改代码。
2024-05-17 21:44:25
1970
7
原创 详解NDVI(归一化差异植被指数)图像
因为NDVI图像是从特定的光谱数据计算而来的,通常表现为单通道图像,其值范围在-1到1之间。但是在实际应用中,为了更好的可视化,NDVI图像常常被映射到彩色空间(如伪彩色),这时可能会用到多个通道来展示不同的植被密度。总的来说,NDVI图像是一个强大的工具,适用于监测和分析地球表面的植被状态。较低的正值或负值表示较少的或无植被。NDVI是通过分析在不同光谱波段(通常是红光和近红外)反射的光来衡量植被的生长情况和密度。3. 时间动态监测:通过比较不同时间的NDVI图像,可以监测植被覆盖和健康状况的变化。
2024-03-15 10:46:27
13298
原创 详解灰度图像和二值图像
灰度图像是一种特殊的图像,其在表示时不涉及彩色信息,而是仅通过灰度来表示图像中的明暗变化。这种图像的每个像素值仅包含了亮度信息,而没有颜色信息。灰度值通常是从0(黑色)到255(白色)的整数,介于这两者之间的值代表了不同的灰度级别,其中较小的数值表示较暗的区域,较大的数值表示较亮的区域。灰度图像1. 数据简化:由于仅包含灰度信息,灰度图像的数据量比彩色图像小,处理起来更为简单高效。2. 易于处理:许多图像处理技术,如边缘检测、图像分割等,在灰度图像上的实现更为直接和简单。
2024-03-12 17:58:01
2446
原创 详解常见图像颜色空间(RGB、CMYK、HSV、HSL、YCbCr、CIE XYZ和CIE Lab)和图像阈值方法(全局阈值处理、自适应阈值处理和Otsu方法)
这是一种自动确定阈值的方法,特别适合于图像的灰度级分布较为集中的情况。Otsu方法是一种普遍使用的全局阈值方法,因为它不需要预先设置阈值,适用于自动化的图像处理任务。图像阈值是一种基于像素值将图像从灰度转换为二值(黑白)的简单而有效的分割技术,通常用于图像分割和边缘检测。: 这是电子显示设备中最常见的颜色空间,基于光的三原色:红色、绿色和蓝色。: 这是印刷行业常用的颜色空间,它基于颜料的混合原理,其中黑色(Key)通常用于增加深度和细节。图像颜色空间是用于表示颜色的方法。:在整个图像上应用单一阈值。
2024-03-11 10:09:49
2108
原创 详解深度学习中编码器(Encoder)和解码器(Decoder)层
在深度学习中,编码器(Encoder)和解码器(Decoder)层是构成序列到序列(Seq2Seq)模型的两个主要组件,广泛应用于自然语言处理(NLP)任务中,如机器翻译、文本摘要、问答系统等。这些层的设计使得模型能够处理输入序列并产生相应的输出序列,即从一个域(如源语言文本)到另一个域(如目标语言文本)的转换。
2024-03-06 16:03:13
13970
原创 详解深度学习中自注意力机制、多头注意力、位置编码、编码器和解码器层以及前馈神经网络
自注意力(Self-Attention),也称为内部注意力,是一种注意力机制,使模型能够在序列内部加权并关注到不同位置的信息。这允许模型捕捉序列内的上下文关系,例如,在处理一个句子时,模型可以学会将“它”与句子中的正确名词关联起来。自注意力机制通过计算序列中每个元素对其他所有元素的注意力分数来工作,这些分数决定了在生成每个元素的表示时应该给予序列中其他元素多少权重特点全局依赖建模: 能够捕获长距离依赖,不受序列长度限制并行计算: 相比于RNN的序列化处理,自注意力可以并行处理所有元素,提高计算效率。
2024-03-06 15:45:37
2515
原创 详解深度学习之Transformer
Transformer模型是由Vaswani等人在2017年提出的,它是第一个完全基于注意力机制的模型,用于处理序列到序列的任务,比如文本翻译。它在处理序列数据时,相比于之前的模型如循环神经网络(RNN)和长短期记忆网络(LSTM),展现了更高的效率和性能。其创新之处在于使用了自注意力机制(Self-Attention),能够在处理序列数据时更高效地捕获远距离依赖关系,这使得它在并行化处理方面有着显著的优势。Transformer模型包括两大部分:编码器(Encoder)和解码器(Decoder)
2024-03-06 11:36:03
569
原创 详解深度学习中模型的权重和偏置
权重和偏置是神经网络的核心参数,决定了模型如何从数据中学习。它们在训练过程中通过反向传播和梯度下降算法更新,以优化模型的性能。训练完成后,这些参数会被保存在权重文件中,以便模型的后续使用或部署。这些过程确保了深度学习模型可以学习复杂的数据表示,并在多种任务中实现高效的预测。
2024-03-06 10:05:45
4978
原创 详解深度学习中前向传播和反向传播两个核心过程
前向传播和反向传播共同构成了神经网络训练的基础。前向传播负责根据当前参数生成预测,而反向传播则负责根据这些预测和实际结果之间的差异来更新网络的参数,从而让网络学习到数据中的模式和结构。这两个过程使得深度学习模型能够在复杂的任务中表现出卓越的性能,无论是在视觉识别、语言处理还是其他领域。
2024-03-05 18:06:18
944
原创 详解深度学习中模型提取的特征图在模型中传递的形式(第3种解释)
在深度学习中,图像分割和分类任务通常依赖于一个称为“backbone”的卷积神经网络(CNN)来提取图像的特征。这些特征图(Feature Maps)是通过卷积层、激活层、池化层等一系列层次的处理过程在网络中以张量(Tensor)的形式传递的。
2024-03-05 18:01:11
608
原创 详解深度学习中模型提取的特征图在模型中传递的形式(第2种解释)
每一层的输出(即特征图)成为下一层的输入,这就是特征图在backbone中传递的方式。在深度学习中,尤其是在图像分割和分类任务中,模型中的特征图(feature maps)是通过多维数据结构,即张量(tensors),在模型的各个部分之间传递的。在深度学习的上下文中,"backbone"通常指的是模型的主干网络,这是负责提取图像的高级特征的部分。总之,特征图是以张量的形式在深度学习模型的backbone中传递的,允许模型有效地学习和提取图像中的信息,以进行分类、分割或其他视觉任务。
2024-03-05 17:57:13
511
原创 详解深度学习中的特征图融合和特征图拼接
在深度学习的图像分割和分类任务中,特征图融合(Feature Map Fusion)和特征图拼接(Feature Map Concatenation)是两种常用的技术,用于结合不同层次或不同阶段的特征图,以提高模型的性能和泛化能力。这两种技术虽然在目的上相似,但在实现方式上有所不同。
2024-03-05 17:31:23
4919
原创 详解深度学习中模型提取的特征图在模型中传递的形式(第1种解释)
在深度学习中,尤其是在图像分割和分类任务中,模型骨干(或称为基础网络)起着至关重要的作用。骨干网络的主要职责是提取图片中的特征,这些特征随后被用于分类或分割任务。那么,这些特征是以什么形式在网络中传递的呢?:在深度学习模型中,特征图是卷积层输出的数据。它们是原始输入图像经过一系列卷积、池化等操作后得到的,能够代表图像的某些特性或模式,如边缘、纹理等。随着网络层次的加深,特征图能够表示越来越高级的抽象概念:在深度学习框架中,张量是一种数据结构,用于表示数据的多维数组。它是特征图传递和存储的形式。
2024-03-05 16:25:54
433
原创 详解深度学习图像分类任务中,进入分类头前的数据结构、分类头的输出,以及经过Softmax函数处理后的输出
总结来说,进入分类头前的数据是特征图,这些特征图是通过深度网络处理输入图像得到的高维张量。分类头的输出是一个向量,包含了模型对每个类别的原始预测得分。经过Softmax函数处理后,这个向量转换为一个概率分布,每个元素表示模型对相应类别的预测概率。这些概念和数据结构是深度学习图像分类任务中的基础,它们支持模型学习从输入图像中提取抽象特征,并将这些特征映射到具体的类别上。
2024-03-05 16:02:46
1679
原创 详解深度学习中的张量和特征图
在深度学习中,张量是一种多维数据结构,用于在神经网络模型中表示和存储数据。张量可以被视为向量和矩阵的高维推广。在不同的上下文中,张量可以是标量(0维张量)向量(1维张量)矩阵(2维张量)或更高维度的数组。深度学习框架(如TensorFlow和PyTorch)中的大部分操作都是围绕着张量进行的,包括数据的输入、模型参数和输出等。
2024-03-05 11:48:29
1699
原创 详解深度学习图像分割中“完整的上下文关系”
在深度学习和图像分割的领域中,"完整的上下文关系"通常指的是在进行图像分割任务时,算法能够综合利用图像中的全局信息和局部信息来理解和解析图像的能力。这种上下文关系的认识对于提高分割精度和效果至关重要,尤其是在处理复杂的视觉场景时,例如在自然景观中识别不同的物体,或者在医学图像中准确地区分各种组织和结构。
2024-03-05 11:05:55
1785
原创 卷积神经网络(CNN)和Transformer这两个术语既可以指代整个网络架构,也可以指代网络中的单独层
在深度学习中,看到很多人说CNN是架构,也有人说CNN是层。同时,也看到很多人说Transformer是架构,但有人说Transformer是层......我去了解了一下,卷积神经网络(CNN)和Transformer这两个术语既可以指代整个网络架构,也可以指代网络中的单独层,具体取决于上下文。
2024-03-05 09:46:28
1131
原创 详解深度学习图像分类中的分类头
在深度学习图像分类任务中,分类头(Classification Head)是模型中专门用于将学习到的特征表示映射到类别预测上的部分。它通常位于网络的末端,紧跟在特征提取层(例如卷积层、Transformer层)之后。
2024-03-04 20:43:47
5145
原创 详解深度学习图像分割中的分割头
在深度学习图像分割领域,"分割头"(Segmentation Head)是指模型中专门用于执行图像分割任务的部分。它通常位于模型的末端,紧接在特征提取部分之后,负责将前面网络提取的特征图(Feature Map)转换成像素级的分类预测。分割头的设计直接影响到模型的分割性能和效率。
2024-03-04 20:27:23
3811
1
原创 深度学习中保存Tensor的方式及每种方式特定的应用场景和优缺点
在深度学习中,保存tensor的方式有多种,每种方式都有其特定的应用场景和优缺点
2024-03-01 11:46:28
2003
原创 深度学习之batch size、iterations、epochs
batch使用训练集中的一小部分样本对模型权重进行一次反向传播的参数更新,这一小部分样本被称为“一批数据”iteration是使用一个batch数据对模型进行一次参数更新的过程,被称为“一次训练”epoch使用训练集的全部数据对模型进行一次完整训练,被称为“一代(轮)训练”
2024-02-29 15:38:29
804
原创 读取shp文件中的地块数据后求地块(复杂多边形)最大内切圆圆心坐标及半径的Voronoi图算法
地块是一些超复杂的多边形,其中一些多边形是简单多边形,有些多边形是包含内部空洞的复杂多边形,而多边形是两三个复杂多边形(可能包含内部空洞)的“复合体”。 读取地块数据并使用Voronoi图方法顺序计算shapefile文件中每一个复杂多边形最大内切圆的圆心坐标和半径,并添加新字段将圆心坐标和半径写入shapefile文件中
2024-02-25 21:00:12
559
原创 转换shapefile投影:将Shapefile文件中的字段中的投影坐标系转换为经纬度坐标系
这次的需求是将投影为Gauss_Kruger,投影坐标系为CGCS2000_3_Degree_GK_CM_108E的shapefile(shp)文件中某些字段的值进行投影坐标系的转换,将投影坐标转换为经纬度坐标(WGS84)
2024-02-25 20:04:33
879
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人