少有人走的路

勇哥的工业自动化技术网站

本站视觉相关教程整理贴子,持续更新

2020年勇哥的机器视觉实验项目清单(大纲)

勇哥的免费视频教程清单

勇哥在B站发布的视频清单

opencv3.1学习笔记(2) 加载、修改颜色空间、保存图像

先上代码:#include <opencv2/opencv.hpp> #include <iostream> #include <math.h> using namespace cv; int main(int argc, char** argv) { Mat src, dst; src = imr

opencv3.1学习笔记(1) opencv介绍,环境搭建

在官网 www.opencv.org 上下载  这是一个比较老的版本。本系列学习笔记使用的这个版本。下面是opencv的简单介绍。下面说明一下opencv加上vc++开发环境的配置。首先按下面的说明添加vc++的库,包含目录,依赖项。这里勇哥使用的是vs2019集成环境下的vc++。接下来用一段代码验证一下opencv开发环境是否搭建成功。#include <opencv2/opencv.hpp> #include <iostream&

图像处理之细化算法(Thinning Algorithm)C++实现

最近在实验室里遇到了一个问题,就是在有一张轮廓二值图的情况下,如何才能将轮廓进行细化,得到轮廓的骨架。效果如图:可以看到,右边图中的数字变瘦了,这就是细化算法的作用下面我们来讲一下,Thining-Algorithm的算法原理。一、八领域我们先来介绍一下,八领域这一个概念如图,八领域是指包围了中心P1像素的八个像素点。在很多图像处理算法中,八领域的这个概念都极为常见,应用十分广泛。二、算法原理首先,我们来看一下以下的几个类型点:可以看到,我们是通过八领域中的值,来确定这一点是内部点还是端点和孤立

图像解析力算法—SFR(Spatial Frequency Response)源码分析(二)--完

在上一篇图像解析力算法—SFR(Spatial Frequency Response)源码分析(一)中介绍了SFR的几个重要函数,接下来我们看一下主流程和其他函数。4、sfrProc作用:计算SFR数值的主流程函数short sfrProc (double **freq, double **sfr,         int *len,  &

OpenCV学习31--图像分水岭分割算法

任意的灰度图像可以被看做是地质学表面,高亮度的地方是山峰,低亮度的地方是山谷。给每个孤立的山谷(局部最小值)不同颜色的水(标签),当水涨起来,根据周围的山峰(梯度),不同的山谷也就是不同的颜色会开始合并,要避免这个,你可以在水要合并的地方建立障碍,直到所有山峰都被淹没。你所创建的障碍就是分割结果,这个就是分水岭的原理,但是这个方法会分割过度,因为有噪点,或者其他图像上的错误。所以OpenCV实现了一个机遇标记的分水岭算法,你可以指定哪些是要合并的点,哪些不是,这是一个交互式的图像分割,我们要做的

OpenCV学习30--阈值分割的OTSU算法

OTSU算法又叫最大类间方差阈值分割算法,也叫大津算法,是在1980年由日本的大津展之提出,是由最小二乘法推导而来,用于一些简单的阈值确定。对于一个灰度图,我们有时候非常想把他用一个阈值将他的前景和背景区分开来。我们可以合理的假设为如果将图像的像素分布图画出来,那么图像上应该有两个峰,即前景色和背景色。在这两个峰之间肯定有一个谷,那么我们就可以将阈值设在这里,从而对图像达到一个良好的分割效果。怎样确定这个阈值呢?OTSU算法说,我们可以求出用这个阈值分割后的两个图像的类间方差。对于每一个可能的阈

OpenCV学习29--计算物体的凸包

物体的凸包(Convex hull)用于理解物体的形状或轮廓。很多复杂物体的特性都能很好的被这种缺陷表现出来。 一组平面上的点,求一个包含所有点的最小的凸多边形,这就是凸包问题了。这可以形象地想成这样:在地上放置一些不可移动的木桩,用一根绳子把他们尽量紧地圈起来,这就是凸包了。凸包有什么应用?凸包在很多地方有着重要的应用,如手势识别,需要识别出手的轮廓的凸包,二维或者三维区域的边界的信息等。凸缺陷。深色的轮廓是围绕手的凸包,格子区域(A-H)是手的凸包,格子区域是手的轮廓相对于凸包的凸缺陷。相关

OpenCV学习28--在图像中寻找轮廓

查找轮廓什么是轮廓:一个轮廓是由图像中的一系列点组成的,也就是图像中的一条曲线。在OpenCV中一般用序列来存储轮廓信息。序列中的每个元素是曲线中每个点的位置。关于序列:序列是内存存储器中可以存储的一种对象,序列是某种结构的链表。下面是序列结构体:typedef sturct CvSeq{ int flags;            int h

OpenCV学习27--反向投影

什么是反射投影反射投影是记录给定图像中像素点如何适应直方图模型像素分布的方式(估计你看了这句话还是不懂)。英文的解释是这样的:a way of recording how well the pixels of a given image fit the distribution of pixels in a histogram model.(还是不懂?)简单地讲就是就是先计算某一特征的直方图模型,然后使用这个模型去寻找图像中存在的该特征。这个名词中的“反向”,“投影”怎么分别是什么意思,应该如何

OpenCV学习26--仿射变换

什么是仿射变换:一个任意的仿射变换都能表示为 乘以一个矩阵 (线性变换) 接着再 加上一个向量 (平移).仿射变换可以实现什么功能:旋转平移缩放操作怎样得到一个仿射变换:放射变换代表的是两幅图之间的关系。通过原图和目标图像三个点之间的对应关系,可以求出一个2 X 3的矩阵。我们通常使用2 x 3矩阵来表示仿射变换。怎样去旋转一个图像:- 确定旋转图像的中心点- 旋转的角度. 在OpenCV中正角度是逆时针的- 可选择:缩放因子- rot_mat = getRotationMatrix2D( ce
<< < 1 2 3 4 5 6 7 8 9 10 > >>
«    2026年1月    »
1234
567891011
12131415161718
19202122232425
262728293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接

Powered By Z-BlogPHP 1.7.3

Copyright www.skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864