自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 视觉表面缺陷检测技术概述

这里写自定义目录标题1. 什么是机器视觉2. 视觉检测系统2.1 视觉检测系统的特点2.2 视觉检测系统的组成3. 视觉表面缺陷检测面临问题及发展趋势3.1 视觉表面缺陷检测面临问题3.2 视觉表面缺陷检测发展趋势4. 视觉检测与智能制造4.1 视觉缺陷检测系统原理4.2 常见缺陷检测类型参考资料1. 什么是机器视觉  机器视觉作为人工智能的一个快速发展的分支,简言之就是利用机器代替人眼来做测量和判断,广泛应用于各个行业。在3C行业等大批量工业生产过程中,利用人工视觉检查产品存在质量效率低、精度不高等问

2021-10-23 17:16:53 3378

原创 Linux常用基本操作命令详解(二)

Linux实用命令1. 前言2. 常用Linux文件操作命令2.1 文本文件编辑命令1. 前言通过前面Linux常用基本操作命令详解(一)的学习,基本可以掌握切换工作目录及对文件的管理方法。Linux 系统中“一切都是文件”,而对服务程序进行配置自然也就是编辑程序的配置文件。本节将继续介绍用于文件操作命令。2. 常用Linux文件操作命令2.1 文本文件编辑命令1. cat 命令cat 命令用于查看纯文本文件(内容较少的),格式为“cat [选项] [文件]”。如果在查看文本内容时还想顺便显示

2021-07-25 15:37:19 599 1

原创 Linux常用基本操作命令详解(一)

Linux实用命令文件目录指令文件目录指令man获取帮助信息基本语法:man[命令或配置文件](功能描述:获得信息帮助)案例:查看ls命令的帮助信息 man ls在Linux下,隐藏文件是以.开头,-a可显示全部隐藏文件,选项可以组合使用,如ls -al,ls -al/root...

2021-07-24 17:57:54 760

原创 目标检测—R-CNN、Fast R-CNN和Faster R-CNN

目标检测参考文献本讲进入到深度到深度学习的应用方面,前面提到的卷积神经网络被用作图像分类识别,即输入一张图像,输出它的类别。在实际应用中,我们更有可能遇到的是是如下几种将检测、分割与识别综合处理的情形。第一种情形,单目标检测中的目标定位与识别,即图像中有一个目标,我们需要检测出它的位置,同时识别出它的类别。第二种情形,多目标检测中的目标定位与识别,即图像中有多个目标,我们需要分别检测出它的位置,同时对每个目标都要进行识别。第三种情形,语义分割,我们不仅要检测和识别出图像中的各种目标,还要确定每个目

2021-07-10 17:14:39 1280 3

原创 Darknet中cfg文件参数详解

YOLO中cfg文件参数详解1. cfg文件参数解释2. 参考文献1. cfg文件参数解释以YOLO v3为例详细解释cfg文件各参数的含义:[net] #[xxx]开始的行表示网络的一层,其后的内容为该层的参数配置,[net]为特殊的层,配置整个网络# Testing #测试模式 #初始batch参数要分为两类,分别为训练集和测试集,不同模式相应放开参数batch=1subdivisions=1# Training #训练模式 每次前向图片的数目=batch/subdivisions#

2021-07-03 21:35:52 795 2

原创 目标检测——YOLO系列(一网打尽)

YOLO系列算法1. 基本概念2. 目标检测算法分类及流程2.1 算法分类2.2 基本流程2.3 Two-stage与One-stage基本流程比较3. YOLO系列目标检测模型3.1 YOLO v13.1.1 基本思想3.1.2 网络结构3.1.3 训练过程3.1.4 优缺点参考文献1. 基本概念目标检测(Object Detection)是在图像中对一类或多类感兴趣的目标进行查找和分类,确定它们的类别和位置。由于各类物体有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机

2021-06-27 22:43:43 5996 3

原创 人脸识别介绍

人脸识别介绍在这一讲中,我们将以人脸识别为具体应用,讲解如何用深度神经网络构建一个实用的人脸识别系统。首先,回顾人脸识别邻域近年来的发展,在2013年AlexNet提出之后,FaceBook迅速跟进,在2014年构建了一个DeepFace的卷积神经网络。训练数据库包含4000人、400万张人脸,该模型在LFW数据集上取得了97.25%的平均精度,同时在Youtube数据集上取得了当前最好的结果,比之前的第一整整高出了12.7%。2015年,香港中文大学唐晓鸥老师实验室研发了DeepID卷积神经网络,

2021-06-19 16:30:34 952

原创 你对SIFT算法了解多少—原理详解与演示

这一讲将讲解图像特征匹配中的SIFT算法,全称为尺度不变性特征匹配算法(Scale Invariant Feture Transform),它是计算机视觉中最常应用的特征匹配算法之一。由于该算法是在2004年进行完善,后续在其基础上有很多改进的算法,目前用到的特征匹配算法可能不是SIFT算法本身而是改进后的算法,但是无论用什么改进的算法,其基本思想是不变的,只不过是在计算性能和效率上有所提升。下面从原理上对该算法进行...

2021-06-11 22:28:25 2842

原创 OpenCV基于Python霍夫圆检测—基于梯度的霍夫圆检测

基于梯度的霍夫圆检测1. 回顾与目标2. 基于梯度的霍夫圆检测2.1 问题分析2.2 基于梯度的霍夫圆检测步骤3. 基于梯度的霍夫圆检测函数HoughCircles3.1 函数HoughCircles3.2 代码演示参考资料1. 回顾与目标上一讲标准的霍夫变换对于曲线检测是一项强有力的技术,但是随着曲线参数数目的增加,造成计数器的数据结构越来越复杂,如直线检测的计数器是二维的,圆检测的计数器是三维的,这需要大量的存储空间和巨大的计算量,因此通常采用其他方法进行改进,如同概率直线检测对标准霍夫直线检测的改

2021-06-03 21:27:27 3416 5

原创 OpenCV基于Python霍夫圆检测—标准霍夫圆检测

标准霍夫圆检测1972年,R. D. Duda和P. E. Hart1提出了直线的检测方法,而且还推广到了霍夫圆的检测方法,通常称为标准的霍夫圆检测。已知圆的圆心坐标为(a,b)(a, b)(a,b),半径为rrr,则圆在xoyxoyxoy平面内的方程可表示为:(x−a)2+(y−b)2=r2(x-a)^2+(y-b)^2=r^2(x−a)2+(y−b)2=r2。那么反过来考虑一个简单的问题:已知xoyxoyxoy平面内的点(x1,y1)、(x2,y2)、(x3,y3)、...(x_1, y_1)、(x

2021-06-03 21:25:53 1072 2

原创 深度学习—近年来流行的卷积神经网络(一)

近年来流行的卷积神经网络前面几讲,我们以LeNet和AlexNet为例,详细讲解了卷积神经网络的结构。从2012年AlexNet在ImageNet数据集上获得远超传统算法识别率以来,学术界在卷积神经网络方面进行了一系列改进型研究工作,这一讲我们将描述这些重要的改进。下图是截至2015年卷积神经网络的发展图。图1 各种不同网络在ImageNet上的结果2012年AlexNet将ImageNet数据集的Top5错误率降低到16.4%。2014年VGGNet和GooleNet分别将Top5错误率降低到

2021-06-01 21:25:59 3983 13

原创 深度学习编程工具Tensorflow—实现LeNet-5

Tensorflow框架实现LeNet-51. 目标与背景2. 基于LeNet的TensorFlow实现2.1 程序代码分析2.2 实验演示3. 结尾参考资料1. 目标与背景在这一讲中,我们将讲解深度学习的编程工具Tensorflow的基础使用规则。最初的深度学习编程工具主要由研究人员义务开发,免费发布供大家使用,如Caffe,在2014年,由美国加州大学伯克利分校贾扬清开发。随着深度学习技术的逐渐普及,开发深度学习的编程工具变得有利可图。因此,近年来编程工具的主要开发者变成了公司。图1 贾扬清下

2021-05-31 16:15:11 1211 3

原创 深度学习编程工具Pytorch—实现LeNet-5

Pytorch框架1.背景与目标2. Pytorch实现LeNet-52.1 主函数main()2.2 训练函数train()与测试函数test()3. 结尾参考资料1.背景与目标在这一讲中,我们将讲解近年来流行的深度学习编程工具Pytorch的使用方法。最近几年Pytorch工具使用份额日益增长,目前已经成为学术界研究深度学习的第一编程工具。这一讲我们仍然以LeNet为例来讲解Pytorch这一编程工具。2. Pytorch实现LeNet-52.1 主函数main()首先,我们打开main.py

2021-05-30 11:52:55 597

原创 深度学习—卷积神经网络AlexNet

卷积神经网络AlexNet1. AlexNet的历史2. AlexNet网络结构简要分析3. AlexNet的改进4. 结尾参考资料在这一讲中,我们将详细讲解深度学习发展中的重要里程碑AlexNet。1. AlexNet的历史2012年Geoffrey Hintton的学生ALEX Krizhevsky构建了一个包含65万多个神经元,待估计参数超过6000万的大规模的卷积神经网络。他以自己的名字命名了这个神经网络叫作AlexNet,用以解决ImageNet数据集1000类的分类问题。在2012年,Im

2021-05-28 15:32:59 1282

原创 深度学习—卷积神经网络LeNet

卷积神经网络LeNet1. CNN的历史2. 卷积神经网络LeNet2.1 经典的LeNet结构2.2 卷积过程3. LeNet-5网络结构分析3.1 卷积核参数更新3.2 LeNet网络逐层分析3.3 LeNet中待估计参数4. 结尾在这一讲中,我们将讲解目前深度学习领域最常用的一个模型—卷积神经网络(Convolutional Neural Network, CNN)。1. CNN的历史CNN的历史可以追溯到1980年Fukushima发明的神经认知机(neocognitron),这是第一个通过自

2021-05-25 21:57:45 3478 16

原创 深度学习—自编码器

自编码器1. 自编码器模型2. 自编码器思想3. 结尾参考文献1. 自编码器模型这一讲我们将讲解2006年Geoffrey Hintton在Science上发表的文章Reducing the dimensionality of data with neural networks自编码器(Auto-Encoder)模型,基于这个模型,它部分地解决了神经网络参数初始化的问题。2. 自编码器思想自编码器采用的是分层初始化的思想。例如我们想要训练图中NNN层的神经网络,步骤如下:步骤一:先训练图中下

2021-05-24 21:21:50 2386 1

原创 深度学习—历史发展

深度学习的历史发展1. 导语2. 人工神经网络发展历程2.1 人工神经网络的劣势2.2 人工神经网络三剑客3. 深度学习发展中的革新事件1. 导语从这一讲开始,我们将进入目前最火热的人工智能领域—深度学习(Deep Learning)。我们前面讲到,从上个世纪80年代开始,多层神经网络被提出,它较好地解决了机器学习中的一些实际问题,但是到了上个世纪90年代,人工神经网络的研究却突然进入了沉寂。这是因为上个世纪90年代中期,以支持向量机为代表的一系列机器学习模型的提出,对人工神经网络这样的算法造成了强烈的

2021-05-24 11:51:19 2356

原创 人工神经网络—参数设置中更深入的问题

参数设置问题1. 回顾1. 回顾在前面的章节中,我们讲过神经网络的训练是一门艺术。我们这一讲将从解决实际问题经验的角度出发,给出训练神经网络的一些建议,同时探讨神经网络参数设置中更深入的问题,希望通过本章内容的讲解,加深对训练神经网络的感性认识,提高利用神经网络解决实际问题的能力。首先是三个训练神经网络的建议,这几个建议应该是学术界一致公认的。(1)一般情况下,在训练集上的目标函数的平均值(cost) 会随着训练的深入而不断减小,如果这个指标有增大的情况,请停下来。有两种情况:采用的模型不够复

2021-05-22 15:03:20 495

原创 人工神经网络—后向传播算法应用中的问题

后向传播算法应用中的问题1. 回顾2. 对非线性函数的改进2.1 Sigmoid函数2.2 tanh函数3. 基于SoftMax函数和交叉熵的目标函数4. 随机梯度下降法5. 结尾1. 回顾在上两讲中,我们讲解了如何利用后向传播算法训练多层神经网络,我们总结出了后向传播算法的基本框架,包含以下步骤:(1)对神经网络每一层的各个神经元,随机选取相应的 w,bw,bw,b 的值。(2)前向计算,对于输入的训练数据,计算并保留每一层的输出值,直到计算出最后一层的输出 yyy 为止。(3)设置目标函数EE

2021-05-19 22:12:29 411 7

原创 人工神经网络—反向传播算法(二)

反向传播算法(二)1. 回顾2. 反向传播算法的一般情形2.1 反向传播算法的推导2.2 一般情形的后向传播算法流程3. 结尾1. 回顾在上一讲中,我们基于一个简单的神经网络,讲解了如何用后向传播算法更新神经网络的参数,完成神经网络的训练。这一讲我们将后向传播算法推广到一般的神经网络中,即我们不限制神经网络的层数以及每一层的神经元的个数来推导后向传播算法。2. 反向传播算法的一般情形如下图1所示,假设神经网络有lll层,我们不限制每一层神经元的个数,那么神经元的图可以用更简单的矩阵来表示。图1

2021-05-18 15:32:49 379

原创 人工神经网络—反向传播算法(一)

反向传播算法(一)1. 回顾2. 反向传播算法2.1 简化求解偏导数2.2 后向传播算法的步骤3. 结尾1. 回顾  在上一讲中,我们主要讲解了利用梯度下降法求解人工神经网络目标函数的局部极值的原理,在这个一讲中,我们将针对一个具体的神经网络讲解梯度下降法的具体求解过程。2. 反向传播算法  我们仍然来看这个简单的神经网络,前面讲到了这个神经网络待估计的参数共有9个,它们分别是(w11,w12,w21,w22,w1,w2,b1,b2,b3)(w_{11},w_{12},w_{21},w_{22},w

2021-05-15 15:48:28 574

原创 人工神经网络—梯度下降算法

梯度下降算法1. 回顾1. 回顾在上一讲中,我们讲到多层神经网络的结构是由每一层有多个神经元组成的线性结构,加上层与层之间的非线性函数构成。我们同时论证了层与层之间的非线性函数是阶跃函数,那么三层神经网络可以模拟任意的决策函数。然而实际的应用中,问题是反过来的,我们并不知道决策函数是什么,而是只知道特征空间中一些训练样本和这些训练样本的标签。由于我们不知道决策函数的具体形式,因此我们也无法知道表征这个神经网络的结构。我们只能采取另一种思路,即首先假定是某一种结构,然后将一堆训练数据输入到网络中去估计这

2021-05-12 11:04:25 1201

原创 人工神经网络—多层神经网络

多层神经网络1. 回顾2. 多层神经网络结构1. 回顾在上一讲中,我们提到从上个世纪80年代开始,人工神经网络领域迎来了新的突破,产生了多层神经网络,人们终于可以利用人工神经网络处理非线性问题了。2. 多层神经网络结构这一讲主要介绍多层神经网络的结构。下面这幅图是最简单的多层神经网络,它包含2层,总共由3个神经元相互连接而成。图1 两层神经网络例子输入XXX向量,有两个分量x1x_1x1​,x2x_2x2​,输出yyy是一个数值。我们逐层写出输入到输出之间的关系:  a1=ω11x1+ω12

2021-05-09 21:36:18 5391

原创 人工神经网络—第一次寒冬

人工神经网络1. 回顾2. 感知器算法的局限性及证明1. 回顾在1957年,Rosenblatt提出了感知器算法,尽管前面一讲中,我们讲到了感知器算法有那么多的历史意义,但是在当时并没有引起轰动。虽然大家觉得将神经元数学模型引入到机器学习领域的尝试是非常新颖的,但是这个算法没有实际的应用。2. 感知器算法的局限性及证明以我们今天的观点来看,问题出在感知器算法只能解决线性可分数据集的分类,对于线性不可分的数据集感知器算法无能为力,但现实生活中大多数分类问题却都是线性不可分的。第一次明确说出上述话的人是

2021-05-05 14:54:51 1070 1

原创 人工神经网络—感知器算法的意义

人工神经网络1. 回顾2. 感知器算法的意义2.1机器学习算法的框架1. 回顾在上一讲中,我们讲到了Rosenblatt在1957年提出的感知器算法,并证明了在线性可分条件下算法的收敛性。感知器算法的的实质是在训练数据集线性可分条件下,寻找分类的超平面,这与我们学过的支持向量机做的事情是差不多的,但是由于支持向量机是基于所有的训练数据寻找最大化间隔超平面,而感知器算法却是相对随意的找一个分开两类的超平面。因此,大多数时候,支持向量机划分的分类面往往比感知器算法好一点。2. 感知器算法的意义下面是对于

2021-05-04 16:11:15 1326

原创 人工神经网络—感知器算法

人工神经网络1.回顾2. 感知器算法的提出在这一讲中,我们将重点介绍美国科学家Frank Rosenblatt(1928-1971)如何对神经元的MP模型进行改造,用于解决二分类的问题。图1 Frank Rosenblatt(1928-1971)1.回顾回顾上一讲的内容,神经元的MP模型:图2 神经元生理结构示意图图3 神经元的数学模型示意图它的输出2. 感知器算法的提出1957年,Frank Rosenblatt从纯数学的度重新考察这一模型,指出能够从一些输入输出对(X,y)中通

2021-05-03 15:19:21 2140 11

原创 人工神经网络—神经元的数学模型

人工神经网络1. 简介1. 简介人工神经网络(Artificial Neural Networks)简称(NEURAL NETWORKS),是集体智慧的结晶。人工神经网络的方法曾经经历过起起落落,也经历过几乎无人问津的地步,但是近年来突然受到非常广泛的关注,其原因在于以人工神经网络为理论基础的深度学习算法(DEEP LEARNING),在几乎所有的机器学习领域取得突破性进展,获得了比深度学习之前的传统算法高很多的性能。尽管深度学习在实践中获得了非常好的性能,但它最本质的理论基础却和人工神经网络没有区别,

2021-04-30 10:26:55 13722

原创 2021-04-28 YOLO实验记录

YOLOv3-Tiny+vs2019+opencv训练1.环境的配置2.YOLOv3-Tiny3.数据准备4.准备模型5.训练模型1.环境的配置建议环境:Win10、支持CUDA的Nvidia显卡、Python3、CUDA>=9.0、CUDNN>=7.0、VS2015(或其他)、OPENCV<4.0详细操作步骤参考:Yolov3+windows10+VS2015部署安装Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)YOLO

2021-04-28 21:45:28 283

原创 缺陷检测中的分类、检测与分割网络

缺陷检测中分类、检测与分割网络前言1. 分类网络2. 检测网络3. 分割网络前言根据缺陷检测的三个阶段其方法大致可以分为三类分别是分类网络、检测网络、分割网络。1. 分类网络由于CNN强大的特征提取能力, 采用基于CNN的分类网络目前已成为表面缺陷分类中最常用的模式一般来说,现有表面缺陷分类的网络常常采用计算机视觉中现成的网络结构, 包括AlexNet, VGG, GoogLeNet,ResNet, DenseNet, SENet, ShuteNet,MobileNet等。利用分类网络结合上滑动窗口

2021-01-19 20:26:30 7333 3

原创 torch.nn模块之常用激活函数详解

激活函数1. 常用的激活函数2. 激活函数计算公式及其可视化2.1 Sigmoid激活函数2.2 Tanh激活函数2.3 ReLu激活函数2.4 LeakyReLU2.5 Softplus激活函数1. 常用的激活函数在PyTorch中,提供了十几种激活函数层所对应的类,但常用的激活函数类和和功能如下表1所示。表1 常用激活函数操作名称层对应的类功能S型激活函数torch.nn.SigmoidSigmoid激活函数双曲正切函数torch.nn.TanhTanh激活函

2021-01-16 10:46:29 11238 2

原创 torch.nn模块之池化层详解

torch中的池化层1. torch.nn模块中的池化层简介2. 池化的调用方式3. 图像池化演示3.1 最大值池化3.2 平均值池化3.3 自适应平均值池化1. torch.nn模块中的池化层简介池化操作的一个重要目的就是对卷积后得到的特征进行进一步处理(主要是降维),从而缓解计算时内存的压力。池化会选取一定大小的区域,将该区域内的像素值使用一个代表元素表示。如果使用平均值代替,称为平均值池化,如果使用最大值代替则称为最大值池化。这两种池化方式示意图如下图1所示。图1 最大值和平均值池化示意图在

2021-01-14 20:18:11 5817

原创 torch.nn模块之卷积层详解

torch中的卷积层1. torch.nn模块中的卷积层例如,二维图像卷积运算过程示意图如下图所示。卷积核大小为2×2,步长为1。![二维图像卷积运算过程示意图](https://img-blog.csdnimg.cn/20210113204343146.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0RJUERXQw==,size_16,colo

2021-01-14 11:32:40 3922 1

原创 OpenCV基于Python图像掩模处理

图像掩模目标1. 图像掩模的概念2. 图像掩模的作用3. 示例演示目标本篇文章主要介绍图像掩模的概念、作用、及其简单实现。1. 图像掩模的概念图像掩模(image mask)是用选定的图像、图形或物体,对待处理的图像(局部或全部)进行遮挡来控制图像处理的区域或处理过程。由于覆盖的特定图像或物体称为掩模或模板。2. 图像掩模的作用数字图像处理中,掩模为二维矩阵数组,有时也为多值图像。图像掩模主要用于:提取感兴趣区,用预先制作的感兴趣区掩模与待处理图像相乘,得到感兴趣区图像,感兴趣区内图像值保持

2021-01-08 20:46:08 3961 1

原创 OpenCV基于Python轮廓面积筛选

轮廓面积筛选目标目标通过本篇文章的学习,你将会学习到对不同轮廓图案按照设置的面积条件进行筛选,获取满足面积条件的轮廓图案。下面用一个示例图像筛选出轮廓面积超过平均面积的轮廓,待处理图像如下图所示:处理程序代码:import numpy as npimport cv2 as cv# 加载图片img = cv.imread('Contour area screening.png')# 灰度化img_gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)#

2021-01-07 22:24:26 5316 2

原创 PyTorch中的自动微分

PyTorch中的自动微分目标PyTorch中的自动微分目标通过本篇文章的学习,你将对PyTorch中的自动微分过程有一个清晰的认识,本文通过一个示例来解释PyTorch中自动微分的计算。PyTorch中的自动微分在torch中的torch.autograd模块,提供了实现任意标量值函数自动求导的类和函数。针对一个张量只需要设置参数requires_grad = True,通过相关计算即可输出其在传播过程中的梯度(导数)信息。如在PyTorch中生成一个矩阵张量xxx,并且y=sum(x2+4x+

2021-01-05 21:31:11 1508 2

原创 OpenCV基于Python霍夫直线变换

霍夫变换直线检测目标前言1. 什么是霍夫变换直线检测2. 霍夫变换直线检测原理详解3. OpenCV中的霍夫直线变换4. 概率霍夫变换5. 霍夫直线检测的优缺点6. 小结目标通过本篇文章的学习,你将学习到以下内容:霍夫变换(Hough Transform)的概念霍夫变换直线检测原理详解学习使用OpenCV的Python接口调用函数:cv.HoughLines(),cv.HoughLinesP()前言霍夫变换是一种特征检测(feature extraction),被广泛应用在图像分析(ima

2021-01-04 22:28:46 925

原创 2.1 PyTorch中张量的数据类型及生成全面详解

PyTorch中的张量目标1. 什么是张量2. 张量的数据类型2.1 张量的数据类型2.2 张量的数据类型查看及转换2.2.1 查看张量的数据类型2.2.2 设置张量的默认数据类型及其转换2.2.3 获取张量的默认数据类型目标通过本篇文章的学习,你将学习到以下内容:张量的数据类型——查看张量的数据类型、设置张量的默认数据类型及其转换、获取张量的默认数据类型张量的生成——torch.tensor()生成、torch.Tensor()生成、张量和NumPy数据互相转换、随机数生成张量、其他生成张量的函

2021-01-04 17:04:40 1075

原创 OpenCV基于Python图像模板匹配

模板匹配目标前言1. OpenCV中的模板匹配2. 多对象的模板匹配3. 小结目标通过本篇文章的学习,你将学习到以下内容:使用模板匹配在图像中查找对象学习到函数:cv.matchTemplate(),cv.minMaxLoc()前言模板匹配是一种用于在较大图像中搜索和查找模板图像位置的方法。为此,OpenCV带有一个函数cv.matchTemplate()。 它只是将模板图像滑动到输入图像上(就像在2D卷积中一样),然后在模板图像下比较模板和输入图像的拼图。OpenCV中实现了几种比较方法,

2021-01-02 20:31:53 446

原创 OpenCV基于Python傅里叶变换及高通/低通滤波

傅里叶变换及高通/低通滤波目标前言1. Numpy中的傅里叶变换2. OpenCV中的傅里叶变换3. 为什么拉普拉斯算子是高通滤波器?附加资源目标通过本篇文章的学习,你将学习到以下内容:使用OpenCV查找图像的傅立叶变换利用Numpy中可用的FFT函数傅立叶变换的某些应用学习到函数:cv.dft(),cv.idft()前言傅立叶变换用于分析各种滤波器的频率特性。对于图像,使用2D离散傅里叶变换(DFT)查找频域。一种称为快速傅立叶变换(FFT)的快速算法用于DFT的计算。对于正弦信号

2021-01-01 20:55:24 2161 2

原创 OpenCV基于Python二维直方图

二维直方图目标前言1. OpenCV中的二维直方图2. Numpy中的二维直方图3. 绘制二维直方图3.1 使用 cv.imshow()绘制3.2 使用Matplotlib绘制4. 补充一个示例5. 总结目标在本篇文章中,我们将学习查找和绘制2D直方图,包括以下内容:OpenCV中的二维直方图Numpy中的二维直方图绘制二维直方图示例补充前言在直方图板块的第一篇文章图像直方图的查找、绘制和分析中,我们计算并绘制了一维直方图, 之所以称为一维,是因为我们仅考虑一个特征,即像素的灰度强度值。

2020-12-30 21:50:06 1043 1

空空如也

空空如也

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

TA关注的人

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