《深度学习》 人工智能篇
文章平均质量分 96
深度学习(DL,Deep Learning)是机器学习(ML,Machine Learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI,Artificial Intelligence)
菜就多练_0828
人生而自由,却无往不在枷锁中。
展开
-
《深度学习》OpenCV 背景建模 原理及案例解析
背景建模是指通过分析视频序列中的像素值变化情况,从中提取出静态背景部分,并将其用于目标检测、运动跟踪等计算机视觉任务中。在实际应用中,背景建模常用于视频监控、行人检测、车辆识别等领域。在视频中,背景通常被定义为相对稳定的部分,例如墙壁、地面或天空等。背景建模的目标是将动态的前景对象与静态的背景进行分离,以便进一步分析和处理。原创 2024-10-02 10:41:42 · 1006 阅读 · 2 评论 -
《深度学习》OpenCV 指纹验证、识别
在OpenCV中,指纹验证是一种图像处理技术,用于识别和验证人类指纹。指纹是一种独特的生物特征,每个人的指纹都具有独特的纹路和图案。指纹验证使用这些独特的特征来确认一个人的身份。指纹图像的提取和指纹图像的匹配。在指纹图像提取阶段,OpenCV会处理输入的图像,通过一系列的图像处理和特征提取算法,提取出指纹图像中的纹路和图案。在指纹图像匹配阶段,OpenCV会将提取的指纹图像与一个或多个预先存储的指纹模板进行比对。比对过程中,OpenCV会计算两幅指纹图像之间的相似度,并根据相似度的阈值进行判断。原创 2024-09-30 02:45:00 · 2187 阅读 · 3 评论 -
《深度学习》OpenCV 图像拼接 拼接原理、参数解析、案例实现
图像拼接是指将多个图像拼接成一个大图像。在计算机视觉和图像处理领域,图像拼接常用于创建全景图像、创建大幅面照片、图像拼接等应用。import cv2import sysdef detectAndDescribe(image): # 函数用于gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY) # 将影色园片转换成死没图descriptor = cv2.SIFT_create() # 建立SIFT生成器。原创 2024-09-29 21:11:02 · 794 阅读 · 0 评论 -
《深度学习》OpenCV 角点检测、特征提取SIFT 原理及案例解析
角点检测是计算机视觉中的一种特征检测方法,用于寻找图像中的角点或者具有角点特征的图像区域。角点是指图像中突然改变方向的点,即在其周围的不同方向上都有较大的灰度变化。角点具有一些特殊性质,如旋转不变性、尺度不变性和光照不变性等,因此在图像处理和计算机视觉中具有广泛的应用。特征提取是指从原始数据中提取出具有辨识性和代表性的特征,用于描述和表示数据的关键信息。在计算机视觉、模式识别和机器学习等领域,特征提取是一项关键的任务,因为原始数据通常含有大量冗余和噪声,通过提取特征可以减少数据的维度、去除冗余信息。原创 2024-09-29 03:30:00 · 1109 阅读 · 0 评论 -
《深度学习》【项目】OpenCV 发票识别 透视变换、轮廓检测解析及案例解析
透视变换是一种图像处理技术,用于将二维平面上的图像或物体映射到三维空间中。它通过改变图像的视角和投影来创建一个具有透视效果的图像。透视变换通常用于计算机图像形态学和计算机视觉领域,用于实现图像的透视效果立体视觉图像校正等应用。它可以模拟人眼在观察远景时的透视效果,使得远处的物体看起来比近处的物体小,同时使得平行线在远处会相交的视觉效果。透视变换的实现通常需要通过计算图像中各点在三维空间中的坐标,并将其映射回二维平面上,从而实现透视效果。这个过程涉及到几何变换矩阵运算和投影变换等数学概念和算法。原创 2024-09-28 22:22:07 · 1396 阅读 · 2 评论 -
《深度学习》自然语言处理 统计、神经语言模型 结构、推导解析
自然语言处理(Natural Language Processing,NLP)是一门研究人类语言与计算机之间交互的领域。它涉及了计算机科学、人工智能和语言学等多个学科,致力于使计算机能够理解、分析、处理和生成人类自然语言。自然语言处理的目标是使计算机能够像人类一样对语言进行理解和处理。这包括了自动文本摘要、机器翻译、情感分析、文本分类、问答系统、语音识别、语义理解等多个任务。原创 2024-09-28 18:00:54 · 1345 阅读 · 0 评论 -
《深度学习》迁移学习综合应用 原理、案例解析与实现
迁移学习是指利用已经训练好的模型,在新的任务上进行微调。迁移学习可以加快模型训练速度,提高模型性能,并且在数据稀缺的情况下也能很好地工作。def train(dataloader,model,loss_fn,optimizer): # 传入打包好的数据,预定义的残差网络模型,损失函数,优化器model.train() # 模型进行训练模式for x,y in dataloader: # 遍历每个打包的图片的信息及标签。原创 2024-09-26 21:22:52 · 1524 阅读 · 0 评论 -
《深度学习》ResNet残差网络、BN批处理层 结构、原理详解
ResNet(Residual Neural Network)是一种深度卷积神经网络结构,由Kaiming He等人在2015年提出,斩获当年ImageNet竞赛中分类任务第一名,目标检测第一名。获得COCO数据集中目标检测第一名,图像分割第一名。它通过使用残差块(Residual Block)来克服深度神经网络训练中的梯度消失等问题,使得网络可以更深地进行训练。原创 2024-09-25 17:53:29 · 1353 阅读 · 0 评论 -
《深度学习》卷积神经网络 使用最优模型、调整学习率 用法解析及案例实现
在深度学习中,最优模型指的是在给定的任务上具有最好性能的模型。最优模型通常通过最小化损失函数来确定,该损失函数能够衡量模型在训练数据上的预测结果与真实结果之间的差异。最优模型具有较低的训练误差和有效的泛化能力,能够在未见过的测试数据上表现良好。为了找到最优模型,通常会使用优化算法,如梯度下降算法,来更新模型的参数,直到找到损失函数的最小值。最优模型的选择通常基于多个因素,如训练数据的质量和数量,模型的复杂性和计算资源的限制。学习率是优化算法中一个重要的超参数,用于控制模型参数在每次更新时的调整幅度。原创 2024-09-25 11:25:56 · 1647 阅读 · 0 评论 -
《深度学习》卷积神经网络 数据增强、保存最优模型 原理解析及实例实现
数据增强(data augmentation)是指通过对原始训练数据进行一系列变换和扩充,生成新的训练样本,以增加训练数据的多样性和数量,从而提升深度学习模型的泛化能力和鲁棒性。保存最优模型指的是在训练过程中,根据某个指标(如验证集准确率或损失函数值)的表现,选择最好的模型参数并将其保存下来,然后形成一个文件,后缀名为pt\ppt\t7。在深度学习中,模型的训练过程通常是通过迭代优化算法(如梯度下降)来不断调整模型的参数,以最小化目标函数(如损失函数)。原创 2024-09-24 22:02:35 · 1378 阅读 · 0 评论 -
《深度学习》卷积神经网络CNN 实现手写数字识别
卷积神经网络是一种深度学习模型,主要应用于图像和视频处理任务。它的设计灵感来源于生物视觉系统的工作原理。"""定义神经网络"""class CNN(nn.Module): # 继承nn算法中的Moduledef __init__(self): # 这里输入大小为(1,28,28)self.conv1 = nn.Sequential( # 第一层卷积, 将多个层组合成一起。nn.Conv2d( # 二维卷积成,2d一般用于图像,3d用于视频数据(多一个时间维度),1d一般用于结构化的序列数据。原创 2024-09-23 21:16:26 · 1425 阅读 · 3 评论 -
《深度学习》卷积神经网络CNN 原理及其流程解析
卷积核也称为滤波器或特征检测器,在CNN中,卷积核是一个小的矩阵或张量,它通过与输入的图像进行卷积操作来提取图像中的特征。卷积操作可以看作是将卷积核与输入数据的某一部分进行点积运算,然后将结果相加得到一个输出值。卷积核的大小通常是正方形的,并且由多个通道组成,其中每个通道对应一个特征。例如,可以有一个大小为3x3x3的卷积核,其中3x3表示卷积核的空间大小,3表示输入图像的通道数。原创 2024-09-22 22:45:12 · 1449 阅读 · 0 评论 -
《深度学习》PyTorch 常用损失函数原理、用法解析
均方误差损失(MSE)计算的是预测值与真实值之差的平方的平均值。MSE通过平方误差来放大较大的误差,从而给予模型更大的惩罚。它是回归问题中最常用的损失函数之一。二元交叉熵损失(BCE)用于二分类问题,计算的是预测概率与真实标签(0或1)之间的交叉熵。BCE通过计算真实标签对应类别的负对数概率来评估模型的性能。它适用于输出概率的模型,但并不要求输入必须经过sigmoid函数(尽管在实践中很常见)。主要用于多分类问题。它将模型的输出(logits)与真实标签进行比较,并计算损失。原创 2024-09-18 21:55:44 · 1530 阅读 · 0 评论 -
《深度学习》PyTorch框架 优化器、激活函数讲解
PyTorch是一个深度学习框架,用于构建、训练和部署神经网络模型。它是由Facebook的人工智能研究团队开发的,基于Torch库并使用了Python语言。PyTorch提供了丰富的功能和工具,使得深度学习任务变得更加简单和高效。原创 2024-09-18 21:01:05 · 1742 阅读 · 0 评论 -
《深度学习》PyTorch 手写数字识别 案例解析及实现 <下>
使用PyTorch进行手写数字识别可以分为几个关键步骤。首先,需要准备手写数字数据集,通常使用MNIST数据集。然后,需要定义神经网络模型,可以使用PyTorch提供的各种层和激活函数来构建模型架构。接下来,需要定义损失函数,通常使用交叉熵损失函数来计算预测结果与真实标签之间的差异。原创 2024-09-15 23:31:46 · 1099 阅读 · 1 评论 -
《深度学习》PyTorch 手写数字识别 案例解析及实现 <上>
MNIST数据集包含了大量的手写数字图片,MNIST算法通过训练神经网络,可以有效地识别这些手写数字。最后一步img.squeeze降低维度是因为遍历出来的图像有一个冗余的维度没有用,如下所示,维度为1,图像大小为28x28像素的。返回的是True则返回cuda,即当前使用的设备是cuda,如果返回False即执行下面的判断语句,即如果。返回的是True则返回mps,即当前使用的是苹果设备的mps,反之则使用的是cpu设备来计算。的,大小为28x28像素的,并且居中的,以减少预处理和加快运行。原创 2024-09-13 22:44:28 · 1655 阅读 · 1 评论 -
《深度学习》CUDA安装配置、pytorch库、torchvision库、torchaudio库安装
CUDA(Compute Unified Device Architecture)是由NVIDIA开发的一种并行计算平台和编程模型,用于利用NVIDIA GPU进行通用计算。它提供了一个编程接口,让开发者能够将计算任务分配到GPU上执行,以实现高性能的并行计算。CUDA可以用于各种领域的计算任务,包括科学计算、图形处理、机器学习等。原创 2024-09-13 21:04:55 · 1687 阅读 · 1 评论 -
《深度学习》深度学习 框架、流程解析、动态展示及推导
深度学习是一种基于人工神经网络架构进行机器学习的技术方法。它模拟人类大脑的神经网络结构和工作原理,通过多层次的神经元网络,对大量的输入数据进行处理和分析,从而实现对数据的自动学习和抽象表示,进而实现对复杂问题的解决和预测。深度学习的核心是深度神经网络,它由多个隐藏层组成,每个隐藏层包含多个神经元节点。每个神经元节点都与上一层和下一层的神经元节点相连,通过对这些节点之间的连接权重进行调整,使得网络能够对输入数据进行有效的学习和表示。原创 2024-09-12 23:40:25 · 1762 阅读 · 0 评论 -
《深度学习》【项目】 OpenCV 身份证号识别
图像识别是计算机视觉领域中的一个重要任务,其目标是让计算机能够理解和解释图像中的内容以及进行自动化的图像分析和处理。图像识别技术可以应用于很多领域,例如人脸识别、物体检测、车牌识别等。原创 2024-09-11 11:32:58 · 1704 阅读 · 0 评论 -
《深度学习》OpenCV 高阶 图像直方图、掩码图像 参数解析及案例实现
图像直方图是描述图像像素值分布情况的统计图形。它表示了图像中不同像素值的数量或频率。在图像直方图中,横轴表示像素值的范围,通常为0-255纵轴表示像素值的数量或频率。直方图的每一个条柱代表某个像素值范围内像素的数量或频率。例如,柱子的高度表示图像中具有该像素值的像素的数量或出现的频率。掩码图像(Mask Image)是一种与原图像具有相同尺寸的二进制图像,其中像素值为0或255或其他非零值掩码图像用于指示在应用某些图像处理操作时要处理的特定区域。原创 2024-09-10 21:42:34 · 1530 阅读 · 0 评论 -
《深度学习》OpenCV 高阶 图像金字塔 用法解析及案例实现
图像金字塔是由一幅图像的多个不同分辨率的子图构成的图像集合。是通过一个图像不断的降低采样率产生的,最小的图像可能仅仅有一个像素点。图像金字塔的底部是待处理的高分辨率图像(原始图像),而顶部则为其低分辨率的近似图像。表示拉普拉斯金字塔中的第i层表示高斯金字塔中的第i层表示高斯金字塔中的第 i+1 层。原创 2024-09-10 19:59:05 · 2689 阅读 · 4 评论 -
《深度学习》【项目】OpenCV 信用卡号识别
命令行参数自定义命令行参数是指在编写命令行程序时,由程序开发者定义并期望用户通过命令行界面(CLI)输入的参数。这些参数允许用户向程序传递额外的信息或配置,以便程序能够根据这些信息执行不同的操作或行为。在Python中,使用argparse模块可以方便地定义和解析自定义命令行参数。argparse模块提供了丰富的功能来定义参数的类型、默认值、是否必需等属性,并能够在用户没有按预期提供参数时给出友好的帮助信息。1)位置参数(Positional Arguments)位置参数是按照位置顺序提供的参数。原创 2024-09-09 23:20:52 · 1748 阅读 · 1 评论 -
《深度学习》OpenCV 模版匹配多个对象、图片旋转 综合应用
模板匹配是OpenCV中的一种图像处理技术,用于在一幅图像中查找与给定模板或样本图像最相似的区域。原创 2024-09-09 20:22:06 · 1405 阅读 · 0 评论 -
《深度学习》OpenCV轮廓检测 轮廓近似 解析及实现
指对轮廓进行逼近或拟合,得到近似的轮廓。在图像处理中,轮廓表示了图像中物体的边界,因此轮廓近似可以用来描述和识别物体的形状。原创 2024-09-03 20:54:58 · 2169 阅读 · 2 评论 -
《深度学习》OpenCV轮廓检测 模版匹配 解析及实现
模型匹配是一种通过在图像中查找和识别特定形状或物体的方法。模型匹配基于图像中的特征点,并尝试找到与预定义的模型或样本最匹配的图像区域。模型匹配(Model Fitting)是指将机器学习模型与训练数据进行拟合,使模型能够从数据中学习到最佳的参数或规律。模型匹配是机器学习中一个关键的步骤,它决定了模型的准确性和泛化能力。模型匹配的主要目标是通过调整模型的参数或超参数,使得模型能够更好地拟合训练数据,并且在未见过的数据上具有较好的预测能力。原创 2024-09-05 14:31:07 · 1978 阅读 · 1 评论 -
《深度学习》OpenCV 图像轮廓检测、轮廓处理及代码演示
为了识别匹配区域,我们必须通过滑动来将模板图像与源图像进行比较,一次移动一个像素(从左到右,从上到下)。包括Canny边缘检测器、Laplacian边缘检测器等,这些边缘检测器可以通过检测图像中的强度变化来找到物体的边缘。而对象内部中空洞的轮廓为第2级组织结构,空洞中的任何对象的轮又是第 1 级组织结构。,可选的参数 oriented 指定是否计算有向面积,默认为 False,即计算无向面积。输入的轮廓,通常是一个由一系列点组成的 Numpy 数组。计算弧长是通过计算轮廓的所有线段的长度之和来实现的。原创 2024-09-02 22:50:33 · 2051 阅读 · 1 评论 -
《深度学习》OpenCV 图像边缘检测 算法解析及代码演示
边缘检测是计算机视觉领域中的一项基本任务,它用于检测图像中物体的边缘。边缘是图像中像素值发生突变的地方,通常表示物体的轮廓或者不同区域之间的边界。边缘检测在很多计算机视觉任务中都是必需的,例如目标检测、图像分割和物体识别等。原创 2024-09-02 20:53:42 · 1672 阅读 · 0 评论 -
《深度学习》 OpenCV 计算机视觉入门 (下篇)
中值滤波器是一种非线性滤波器,它使用邻域窗口内的像素的中值来更新中心像素的值。它能够更好地保留图像的边缘信息。均值滤波是一种简单的平滑滤波器,它将每个像素周围的像素均值作为输出像素的值。用当前的像素点周围3x3个像素值的和来代替当前像素值。通过增加图像中边缘的像素值来增加图像的亮度和粗细。通过减小图像中边缘的像素值来减小图像的亮度和粗细。的操作,用于填充小的空洞和连接断开的线条。,用于提取亮的小区域,例如小的光斑。,用于提取暗的小区域,例如小的黑点。的操作,用于去除小的噪点和细线。原创 2024-08-26 02:30:00 · 1246 阅读 · 3 评论 -
《深度学习》 OpenCV 计算机视觉入门 (中篇)
图片的切片是指将图片分割成多个部分,可以按照不同的方式进行切片,如按照固定大小切片、按照特定的行和列切片或者按照特定的区域切片。图片的切片可以用于图像分析、目标检测和图像处理等应用。原创 2024-08-25 21:54:40 · 1339 阅读 · 1 评论 -
《深度学习》OpenCV 计算机视觉入门 (上篇)
OpenCV(Open Source Computer Vision)是一个开放源代码的计算机视觉库,提供了一系列用于处理图像和视频的函数和算法。它可以用于开发各种计算机视觉应用程序,包括人脸检测、目标跟踪、图像分类、图像分割等。OpenCV支持多种编程语言,包括C++、Python和Java,并且可以在多个操作系统上运行,包括Windows、Linux和Mac OS X。OpenCV是一个广泛使用的计算机视觉库,被用于许多领域,如工业自动化、医学影像分析、机器人视觉等。原创 2024-08-25 17:37:52 · 1277 阅读 · 0 评论