<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[weixin_70972767的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/weixin_70972767</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; weixin_70972767]]></copyright><item><title><![CDATA[【目标检测基础】——yolo学习]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149835856</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149835856</guid><author>weixin_70972767</author><pubDate>Mon, 04 Aug 2025 20:18:45 +0800</pubDate><description><![CDATA[目录1 概念2 标注3 本质4 目标检测、图像分类、图像分割5 应用场景6 技术架构6.1 two-stage6.2 one-stage7 指标7.1 边界框7.2 交并比7.3 置信度7.4 混淆矩阵7.5 精确度和召回率7.6 mAP7.6.1 PR曲线7.6.2 AP7.6.3 AP计算7.6.4 绘制图形7.6.5 mAP8 NMS后处理技术9 检测速度9.1 前向传播耗时9.2 FPS9.3 FLOPS10 YOLO整体网络结构10.1 Backbone network10.2 Neck netw]]></description><category></category></item><item><title><![CDATA[【YOLOv5】——yolo学习]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149912372</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149912372</guid><author>weixin_70972767</author><pubDate>Mon, 04 Aug 2025 19:35:41 +0800</pubDate><description><![CDATA[带 shortcut（残差连接）的 CSP 模块。]]></description><category></category></item><item><title><![CDATA[【图像边缘检测】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149753913</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149753913</guid><author>weixin_70972767</author><pubDate>Tue, 29 Jul 2025 19:26:22 +0800</pubDate><description><![CDATA[不是一个算子，是一个完整的方案。]]></description><category></category></item><item><title><![CDATA[【图像轮廓特征查找】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149753677</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149753677</guid><author>weixin_70972767</author><pubDate>Tue, 29 Jul 2025 18:49:19 +0800</pubDate><description><![CDATA[图像轮廓特征查找其实就是它的外接轮廓。应用：图像分割、形状分析、物体检测与识别根据轮廓点进行，所以要先找到轮廓。先灰度化、二值化。目标物体白色，非目标物体黑色，选择合适的二值化方式。有了轮廓点就可以找到最上、最下、最左、最右的四个坐标，。就可以绘制出矩形。]]></description><category></category></item><item><title><![CDATA[【凸包特征检测】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149751988</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149751988</guid><author>weixin_70972767</author><pubDate>Tue, 29 Jul 2025 18:24:22 +0800</pubDate><description><![CDATA[一般来说，凸包都是伴随着某类点集存在的，也被称为某个点集的凸包。对于一个点集来说，如果该点集存在凸包，那么这个点集里面的所有点要么在凸包上，要么在凸包内。凸包检测等领域。穷举法QuickHull法。]]></description><category></category></item><item><title><![CDATA[【绘制图像轮廓】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149751717</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149751717</guid><author>weixin_70972767</author><pubDate>Tue, 29 Jul 2025 17:12:53 +0800</pubDate><description><![CDATA[轮廓是一系列相连的点组成的曲线，代表了物体的基本外形。轮廓是连续的，边缘不一定连续。轮廓是一个闭合的、封闭的形状。轮廓的作用形状分析目标识别图像分割。]]></description><category></category></item><item><title><![CDATA[【图像梯度处理】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149750332</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149750332</guid><author>weixin_70972767</author><pubDate>Tue, 29 Jul 2025 16:55:13 +0800</pubDate><description><![CDATA[当组合为dx=1,dy=0时求x方向的一阶导数，在这里，设置为1意味着我们想要计算图像在水平方向（x轴）的梯度。当组合为 dx=0,dy=1时求y方向的一阶导数（如果同时为1，通常得不到想要的结果,想两个方向都处理的比较好 学习使用后面的算子）事实上，并没有规定，你可以用你自己的。：这是输入图像，通常应该是一个灰度图像（单通道图像），因为 Sobel 算子是基于像素亮度梯度计算的。当前列左右两侧的元素进行差分，由于边缘的值明显小于（或大于）周边像素，所以边缘的差分结果会明显不同，这样就提取出了垂直边缘。]]></description><category></category></item><item><title><![CDATA[【图像噪点消除】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149724499</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149724499</guid><author>weixin_70972767</author><pubDate>Tue, 29 Jul 2025 16:14:33 +0800</pubDate><description><![CDATA[通常是由于图像采集设备、传输信道等因素造成的，表现为图像中随机的亮度。常见的噪声类型有高斯噪声和椒盐噪声。也叫卷积核，。分为线性滤波器和非线性滤波器，线性滤波器对领域中的像素进行线性运算，如在核的范围内进行加权求和。常见的线性滤波器有均值滤波、高斯滤波等。非线性滤波器则是利用原始图像与模板之间的一种逻辑关系得到结果，常见的非线性滤波器有中值滤波器、双边滤波器等/注意：椒盐噪声可以理解为斑点，随机出现在图像中的黑点或白点；高斯噪声可以理解为拍摄图片时由于光照等原因造成的噪声。]]></description><category></category></item><item><title><![CDATA[【图像掩膜】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149723735</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149723735</guid><author>weixin_70972767</author><pubDate>Mon, 28 Jul 2025 20:06:54 +0800</pubDate><description><![CDATA[具体来说，就是将两个图像中所有的对应像素值一一进行“与”运算，从而得到新的图像。前一个实验中，我们已经能够识别到图像中的某一种颜色，那么我们就可以对识别到的颜色进行一个操作，比如将其替换成别的颜色，其原理就是在得到原图的掩膜之后，对掩膜中的白色区域所对应的原图中的区域进行一个像素值的修改即可。通过这个掩膜，我们就可以对掩膜中的白色区域所对应的原图中的区域（也就是原图中的红色区域）进行像素值的修改，从而完成颜色替换的功能。通过这个掩膜，我们就可以对掩膜中的白色区域所对应的原图中的区域进行处理与操作。]]></description><category></category></item><item><title><![CDATA[【图像二值化处理】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149721595</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149721595</guid><author>weixin_70972767</author><pubDate>Mon, 28 Jul 2025 19:15:37 +0800</pubDate><description><![CDATA[直方图是一个柱状图，其中 x 轴表示灰度级（从 0 到 255），y 轴表示对应灰度级在图像中出现的次数（频率）。每个柱子的高度代表该灰度级在图像中出现的像素数量。OTSU算法是通过一个值将这张图分前景色和背景色，通过统计学方法（最大类间方差）来验证该值的合理性，当根据该值进行分割时，使用最大类间方差计算得到的值最大时，该值就是二值化算法中所需要的阈值。通常该值是从灰度图中的最小值加1开始进行迭代计算，直到灰度图中的最大像素值减1，然后把得到的最大类间方差值进行比较，来得到二值化的阈值。]]></description><category></category></item><item><title><![CDATA[【灰度实验】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149720993</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149720993</guid><author>weixin_70972767</author><pubDate>Mon, 28 Jul 2025 17:24:07 +0800</pubDate><description><![CDATA[将彩色图转为灰度图地过程称为灰度化。灰度图是单通道图像，。三种合并方法：最大值法，平均值法和加权均值法。]]></description><category></category></item><item><title><![CDATA[【图像色彩空间转换】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149720385</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149720385</guid><author>weixin_70972767</author><pubDate>Mon, 28 Jul 2025 17:06:20 +0800</pubDate><description><![CDATA[这样可以。常见的颜色空间有RGB、HSV、YUV等。]]></description><category></category></item><item><title><![CDATA[【图像矫正（透视变换）】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149719744</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149719744</guid><author>weixin_70972767</author><pubDate>Mon, 28 Jul 2025 16:43:42 +0800</pubDate><description><![CDATA[则是一些旋转量和平移量，由于透视变换矩阵的推导涉及三维的转换，所以这里不具体研究该矩阵，只要会使用就行，而OpenCV里也提供了getPerspectiveTransform()函数用来生成该3*3的透视变换矩阵。该函数会返回一个透视变换矩阵，得到透视变化矩阵之后，使用warpPerspective()函数即可进行透视变化计算，并得到新的图像。如上图所示，图1在经过透视变换后得到了图2的结果，带入上面的话就是图像中的车道线（目标物体）的被观察视角从平视视角变成了俯视视角，这就是透视变换的作用。]]></description><category></category></item><item><title><![CDATA[【边缘填充】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149597896</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149597896</guid><author>weixin_70972767</author><pubDate>Mon, 28 Jul 2025 16:25:17 +0800</pubDate><description><![CDATA[为什么需要填充边缘呢？我们以下图为例。可以看到，左图在逆时针旋转45度之后原图的四个顶点在右图中已经看不到了，同时，右图的四个顶点区域其实是什么都没有的，因此我们需要。右图就是对空出来的区域进行了像素值为（0，0，0）的填充，也就是黑色像素值的填充。除此之外，后续的一些图像处理方式也会用到边缘填充，这里介绍五个常用的边缘填充方法。]]></description><category></category></item><item><title><![CDATA[【插值方法】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149571784</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149571784</guid><author>weixin_70972767</author><pubDate>Thu, 24 Jul 2025 10:48:43 +0800</pubDate><description><![CDATA[首先要了解线性插值，而双线性插值本质上就是在两个方向上做线性插值。还是给出目标点与原图像中点的计算公式比如我们根据上述公式计算出了新图像中的某点所对应的原图像的点P，其周围的点分别为Q12、Q22、Q11、Q21， 要插值的P点不在其周围点的连线上，这时候就需要用到双线性插值了。首先延申P点得到P和Q11、Q21的交点R1与P和Q12、Q22的交点R2，如下图所示：然后根据Q11、Q21得到R1的插值，根据Q12、Q22得到R2的插值，然后根据R1、R2得到P的插值即可，这就是双线性插值。]]></description><category></category></item><item><title><![CDATA[【图像翻转+图像的仿射变换】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149563416</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149563416</guid><author>weixin_70972767</author><pubDate>Wed, 23 Jul 2025 13:47:20 +0800</pubDate><description><![CDATA[想象我们手上有一张矩形纸片，如果你固定纸片的一边，并沿着另一边施加一个平行于该边的力，这张纸片就会变形为一个平行四边形。剪切操作可以改变图形的形状，以便其在某个方向上倾斜，它将对象的形状改变为斜边平行四边形，而。二维空间中，图像点坐标为(x,y)，仿射变换的目标是将这些点映射到新的位置 (x', y')。输入点的坐标被扩展为齐次坐标形式[x,y,1]，以便能够同时处理线性变换和平移。相较于图像旋转中只能等比例的缩放，图像缩放更加灵活，可以在指定方向上进行缩放。是平移部分的系数，控制图像在平面上的移动。]]></description><category></category></item><item><title><![CDATA[【形态学变换】——图像预处理（OpenCV）]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149546513</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149546513</guid><author>weixin_70972767</author><pubDate>Wed, 23 Jul 2025 09:11:38 +0800</pubDate><description><![CDATA[基本操作有以下四种。]]></description><category></category></item><item><title><![CDATA[【LeNet网络架构】——深度学习.卷积神经网络]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149537633</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149537633</guid><author>weixin_70972767</author><pubDate>Tue, 22 Jul 2025 16:12:08 +0800</pubDate><description><![CDATA[LeNet-5模型是由杨立昆（Yann LeCun）教授于1998年在论文Gradient-Based Learning Applied to Document Recognition中提出的，是一种用于手写体字符识别的非常高效的卷积神经网络，其实现过程如下图所示。原论文的经典的LeNet-5网络结构如下：各个结构作用：卷积层：提取特征图的特征，浅层的卷积提取的是一些纹路、轮廓等浅层的空间特征，对于深层的卷积，可以提取出深层次的空间特征。]]></description><category></category></item><item><title><![CDATA[【自定义一个简单的CNN模型】——深度学习.卷积神经网络]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149535110</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149535110</guid><author>weixin_70972767</author><pubDate>Tue, 22 Jul 2025 15:15:47 +0800</pubDate><description><![CDATA[使用pytorch自定义一个简单的CNN模型return xprint("模型结构:\n", model)模型结构:SimpleCNN(上面代码虽然没有多大问题，但是看起来还是有点过于繁琐，推荐使用nn.Sequential 进行改进。是 PyTorch 中的一个容器类模块，用于按顺序组织多个神经网络层（nn.Module的子类），它会按照你添加的顺序依次执行这些层。是一个按顺序执行的神经网络模块容器，适合构建线性堆叠结构的模型，可以简化代码并使结构更清晰。# 定义简单的CNN模型。]]></description><category></category></item><item><title><![CDATA[【池化层】——深度学习.卷积神经网络]]></title><link>https://blog.youkuaiyun.com/weixin_70972767/article/details/149512714</link><guid>https://blog.youkuaiyun.com/weixin_70972767/article/details/149512714</guid><author>weixin_70972767</author><pubDate>Mon, 21 Jul 2025 18:59:24 +0800</pubDate><description><![CDATA[池化（Pooling）是一种用于减少卷积神经网络（CNN）中特征图大小的操作。它通过将特征图上的局部区域进行聚合，得到一个更小的特征图。]]></description><category></category></item></channel></rss>