艾醒(AiXing-w)
一个摸鱼区的鸽子博主,佛系更新,可私信催更。欢迎大家来群里玩呀 :466120702
展开
-
OpenCV与机器学习:使用opencv和sklearn实现线性回归
线性回归主要分为一元线性回归和多元线性回归。一元线性回归涉及两个变量,其关系可以用一条直线近似表示。而多元线性回归则涉及两个或两个以上的自变量,因变量和自变量之间是线性关系。线性回归的目标是找到一个数学公式,能够尽可能完美地组合所有自变量,以接近目标值。原创 2024-02-06 15:22:01 · 1682 阅读 · 1 评论 -
OpenCV与机器学习:OpenCV实现主成分分析
维数灾难是指出现一定数量的特征(或者维度)后,分类器的性能将开始下降。特征越多,数据集中的信息就越多。但是,如果考虑的特征超过了所需的特征,分类器甚至会考虑异常值或者会过拟合数据集。因此分类器的性能开始下降,而不是上升。降维技术允许我们在不丢失太多信息的情况下,找到高维数据的一种紧凑表示。原创 2024-03-06 16:58:32 · 1285 阅读 · 1 评论 -
OpenCV与机器学习:使用opencv实现KNN
KNN算法,即K-Nearest Neighbor,是一种简单的机器学习算法。它的基本思想是:如果一个样本在特征空间中的K个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。KNN算法通过计算待分类样本与已知类别样本的距离,找出距离最近的K个样本,根据这K个样本的类别,通过投票的方式确定待分类样本的类别。在KNN算法中,距离的度量方式主要有欧式距离、曼哈顿距离、余弦相似度等。其中,欧式距离是最常用的距离度量方式,计算的是两点之间的直线距离。原创 2024-01-31 17:16:38 · 1473 阅读 · 0 评论 -
opencv-python常用函数解析及参数介绍(一)——图像读取及其通道与灰度
本文将简单介绍opencv-python中的图像以及视频的读取,并且介绍灰度图与彩图的通道,以及灰度图与单通道的联系与区别。原创 2022-12-31 12:47:51 · 3153 阅读 · 5 评论 -
opencv-python常用函数解析及参数介绍(二)——图像填充与图像融合
本文主要介绍使用opencv-python进行图像填充和图像融合时会用到的函数以及参数的设置原创 2022-12-31 14:20:18 · 1888 阅读 · 1 评论 -
opencv-python常用函数解析及参数介绍(三)——图像滤波
很多时候我们能拿到的图片并不是十分干净,有时会有一些噪声,这时我们就应该采用滤波的方式对他进行处理,本文将在一张干净的图片上生成噪声并进行滤波操作。均值滤波适合椒盐噪声,高斯滤波适合高斯噪声,两种噪声都要尝试一下中值滤波通过比较得出较好的图片。原创 2022-12-31 20:28:30 · 893 阅读 · 1 评论 -
opencv-python常用函数解析及参数介绍(四)——图像阈值
在很多任务当中,首要的任务就是对图像进行阈值处理,为后续其他操作做准备,本文将介绍5种阈值处理的方法以及参数设置,同时通过合理的分析帮助记忆相关参数。原创 2022-12-31 20:38:18 · 790 阅读 · 0 评论 -
opencv-python常用函数解析及参数介绍(五)——腐蚀与膨胀
有些时候图片上会有一些划痕或者污渍,会影响图片的质量,假设我有一张写有“艾醒”的图片,但是有花花绿绿的划痕和污渍,这时我们就可以运用腐蚀与膨胀消除这些划痕和污渍。原创 2022-12-31 22:37:43 · 3845 阅读 · 0 评论 -
opencv-python常用函数解析及参数介绍(六)——图像梯度
前面的文章中我们介绍了用膨胀和腐蚀得到了图像轮廓,图像梯度也是一种可以得到图像轮廓的方式,同时他也是边缘检测的其中一个步骤,下面我们来介绍各种可以求得图像梯度的算子。原创 2023-01-01 11:20:30 · 900 阅读 · 3 评论 -
opencv-python常用函数解析及参数介绍(七)——边缘检测
在之前的文章中我们介绍了使用膨胀和腐蚀、计算图像梯度的方式来获取图像的轮廓,本篇文章将介绍另外一种可以获取图像轮廓的方法——边缘检测。原创 2023-01-02 14:47:20 · 1148 阅读 · 1 评论 -
opencv-python常用函数解析及参数介绍(八)——轮廓与轮廓特征
在前面的文章中我们已经学会了使用膨胀与腐蚀、使用梯度、使用边缘检测的方式获得图像的轮廓,那么在获得轮廓后我们可以对图像进行什么样的操作呢?本文将介绍轮廓的绘制与轮廓特征的使用。原创 2023-01-02 21:18:22 · 1192 阅读 · 0 评论 -
opencv-python常用函数解析及参数介绍(九)——视频读取与保存
本专栏前面文章中所介绍的都是对于图像的处理,那么如果是视频我们将如何进行处理呢?首先我们先要有个概念,就是视频是由帧组成的,而为了让人眼看见的视频变得流畅,一般一秒钟会有多个帧,这就有了一个概念,叫帧率,即每秒多少帧,下面我们将针对视频以及视频相关信息结合函数进行讲解。原创 2023-02-03 21:43:22 · 1537 阅读 · 0 评论 -
从零开始详解OpenCV条形码区域分割
在识别二维码之前,首先要划分出二维码的区域,在本篇文章中将从零开始实现二维码分割的功能,并详细介绍用到的方法。原创 2024-05-11 14:45:47 · 1134 阅读 · 4 评论 -
从零开始详解OpenCV车道线检测
车道线检测是智能驾驶和智能交通系统中的重要组成部分,对于提高道路安全、交通效率和驾驶舒适性具有重要意义。在本篇文章中将介绍使用OpenCV进行车道线的检测。原创 2024-05-13 17:04:12 · 2013 阅读 · 6 评论 -
从零开始详解OpenCV硬币检测
在上一篇中我们介绍了车道线检测,在本篇中我们将使用类似的做法来实现对应硬币的检测。原创 2024-05-15 16:44:41 · 904 阅读 · 0 评论 -
opencv案例实战:表格修复
在对于图标的扫描问题当中,有些时候会遇到扫描的表格缺失的问题,通过OpenCV中的形态学变换(morphologyEx)实现对于表格的修复。原创 2024-02-18 09:34:47 · 366 阅读 · 0 评论 -
opencv案例实战:条码区域分割
识别二维码是一个日常生活中常见的应用,而识别之前,需要先分割出条形码的区域来获取条形码。我们可以使用OpenCV便捷的获取条码的区域。原创 2024-02-06 17:43:49 · 942 阅读 · 0 评论 -
opencv案例实战——银行卡模式匹配识别
在之前的几篇文章中我们已经介绍了opencv的一些基础知识,本篇文章我们将结合一个案例运用之前的知识并且学习opencv中模式匹配的应用,用到的知识点如果有不清楚的可以查看上面列出来的系列文章。具体代码会放在最后。原创 2023-01-04 11:03:33 · 1062 阅读 · 5 评论 -
边缘检测生成(伪)手绘线稿风格的视频简易版教程
闲来无事,用边缘检测将视频转换成了手绘线稿风格原创 2022-11-07 09:21:06 · 958 阅读 · 0 评论 -
pytorch零基础实现手写数学符号识别项目(一)——数据集以及数据概况
人工智能主要可以解决的问题分为:模拟人类认知和模拟人类感知,图像分类就是模拟人类感知的过程的一个方向,即分辨出图像中的事物是什么,未来的几周我们将借助手写数学符号数据集来着重讲解pytorch用于图像分类的技术,对于实现中的细节也将逐步讲解。原创 2023-01-21 17:13:17 · 979 阅读 · 0 评论 -
pytorch零基础实现手写数学符号识别项目(二)——数据加载以及模型浅试
数据加载以及模型浅试前言数据加载加载单个数据数据加载器参数过程解析批量数据加载模型训练ResNet模型模型结构模型修改结尾前言在上一篇文章中,我们着重分析了数学符号数据集的特征,并且做好了真实标签与数字标签的映射,同时为了防止内存溢出,我们将图像的路径和类别存放到了txt文件中实行随用随取。本篇文章我们将在上一篇文的基础上定义数据的加载方式以及在resnet下进行模型的训练。数据加载加载单个数据在torchvision中,可以使用io.read_image打开适用于torch的图片,还记得上篇我们原创 2023-01-22 16:09:50 · 705 阅读 · 1 评论 -
pytorch零基础实现手写数学符号识别项目(三)——模型训练与预测
在前面的文章中我们重点介绍了数据的形式,数据的加载,并且解决了加载过大的数据集可能导致的OOM问题。同时我们也解决了加载torchvision中现有的模型时遇到的输入和输出端与我们实际问题不匹配的情况,在本篇文章中我们将介绍模型的训练和预测过程。原创 2023-01-24 14:53:29 · 1513 阅读 · 1 评论 -
pytorch零基础实现语义分割项目(一)——数据概况及预处理
在本专栏的上一个项目中我们介绍了使用CNN进行图像分类,在本项目中我们将介绍另外一种对于图像进行处理的算法——语义分割。原创 2023-02-17 15:29:14 · 2532 阅读 · 0 评论 -
pytorch零基础实现语义分割项目(二)——标签转换与数据加载
在前面的文章中我们介绍了数据集的概况以及预处理,在训练之前除了数据预处理之外我们还需要对于标签进行处理,因为标签是以RGB格式存放的,我们需要把他们变换成常见的类别标签,并且因为语义分割问题是针对像素的分类,在数据量较大的情况下容易内存溢出(OOM),所以我们往往需要重写数据加载类针对大量数据进行加载。原创 2023-02-18 10:13:47 · 1533 阅读 · 0 评论 -
pytorch零基础实现语义分割项目(三)——语义分割模型(U-net和deeplavb3+)
在前两篇中我们完成了针对数据的处理和加载,本篇文章中我们将介绍两个常见的语义分割模型U-Net和deeplabv3+来完成航拍语义分割项目。原创 2023-02-18 13:18:55 · 1627 阅读 · 0 评论 -
pytorch零基础实现语义分割项目(四)——模型训练与预测
在本系列的前几篇文章中我们介绍了数据与模型,在本篇中我们将数据与模型相结合进行模型训练与预测。原创 2023-02-20 09:02:49 · 1835 阅读 · 0 评论 -
python零基础实现基于旋转特征的自监督学习(一)——算法思路解析以及数据集读取
在本专栏的第一个项目pytorch实现手写数学符号识别项目中,我们实现了多分类问题。有这样一个论文中提到的特征旋转的自监督学习的方法,能够通过简单的处理使得图像任务的处理效果更好(是的,下面介绍的方法不只是可以用于图像分类任务,还可以用于其他任务)。会介绍论文的思路,并且构建用于基于特征旋转的自监督学习的数据加载器原创 2023-04-09 15:48:16 · 1660 阅读 · 0 评论 -
python零基础实现基于旋转特征的自监督学习(二)——在resnet18模型下应用自监督学习
在本系列的上一篇文章中,我们介绍了如何对数据加载器进行修改来构建适合预基于特征旋转的自监督学习使用的数据集,在本篇文章中,我们将构建一个简易的深度学习模型——resnet18作为测试模型作为案例,在resnet18上我们进行训练,以及效果的对比。基于旋转特征的自监督学习实质上就是将原始图像进行旋转,旋转过后将他的标签设置成旋转的角度。然后传入模型进行训练,训练好的权值作为分类模型的预训练模型进行模型迁移。原创 2023-04-10 11:02:57 · 1865 阅读 · 0 评论