Opencv
文章平均质量分 86
明月清风_@
一个人应该竭尽所能,然后才听天由命。
展开
-
opencv——PCA(主要成分分析)数学原理推导
引言:最近一直在学习主成分分析(PCA),所以想把最近学的一点知识整理一下,如果有不对的还请大家帮忙指正,共同学习。首先我们知道当数据维度太大时,我们通常需要进行降维处理,降维处理的方式有很多种,PCA主成分分析法是一种常用的一种降维手段,它主要是基于方差来提取最有价值的信息,虽然降维之后我们并不知道每一维度的数据代表什么意义,但是它将主要的信息成分保留了下来,那么PCA是如何实现的呢?本......原创 2021-05-28 19:27:00 · 1107 阅读 · 0 评论 -
opencv—— 实现图像去阴影
前言浏览OpenCV相关文章时看到了《基于OpenCV的图像阴影去除》,源码也是用pytyon实现的,分析了一下其原理,这篇我们用OpenCV的C++版来实现一下。来源原文链接:https://blog.csdn.net/qq_42722197/article/details/110790222原文源码:https://github.com/kavyamusty/Shading-remo...原创 2021-06-03 14:53:00 · 1797 阅读 · 2 评论 -
opencv——形态学深究(分析和应用)
摘要:形态学一般指生物学中研究动物和植物结构的一个分支。用数学形态学(也称图像代数)表示以形态为基础对图像进行分析的数学工具。基本思想是用具有一定形态的结构元素去度量和提取图像中的对应形状以达到对图像分析和识别的目的。形态学图像处理的基本运算有:膨胀和腐蚀(膨胀区域填充,腐蚀分割区域)开运算和闭运算(开运算去除噪点,闭运算填充内部孔洞)击中与击不中顶帽变换,黑帽变换形态学的应...原创 2021-05-23 21:11:00 · 464 阅读 · 0 评论 -
opencv——自适应阈值Canny边缘检测
前言Canny边缘检测速度很快,OpenCV中经常会用到Canny边缘检测,以前的Demo中使用Canny边缘检测都是自己手动修改高低阈值参数,最近正好要研究点小东西时,就想能不能做个自适应的阈值,在不影响整体效果的基础上不用手动调参,话不多说,且看下文。实现思路:图像转成灰度图像求其灰度直方图,并找出中位数根据中位数和设定的sigma值求出高低阈值使用Canny边缘检测代...原创 2021-06-03 14:28:00 · 1151 阅读 · 0 评论 -
opencv——轮廓发现与轮廓(二值图像)分析
引言二值图像分析最常见的一个主要方式就是轮廓发现与轮廓分析,其中轮廓发现的目的是为轮廓分析做准备,经过轮廓分析我们可以得到轮廓各种有用的属性信息。这里顺带提下边缘检测,和轮廓提取的区别:边缘检测主要是通过一些手段检测数字图像中明暗变化剧烈(即梯度变化比较大)像素点,偏向于图像中像素点的变化。如canny边缘检测,结果通常保存在和源图片一样尺寸和类型的边缘图中。轮廓检测指检测图像中的对象边...原创 2021-05-22 08:54:00 · 1767 阅读 · 0 评论 -
opencv——连通域标记与分析
引言上篇博文写了关于基于图像分割的产品计数问题(主要还是求解边缘问题)。opencv——机器视觉检测和计数 - 唯有自己强大 - 博客园 (cnblogs.com)本篇博文就来说一说对于没有粘连的区域分析。用opencv实现halcon中的connection算子(即断开不同的连通域)并获取区域相关信息。一,连通组件标记算法介绍连接组件标记算法(connected component...原创 2021-05-19 11:25:00 · 1621 阅读 · 0 评论 -
opencv——图像增强算法实现
引言 传统的图像增强方法主要分为两方面:空间域和频域。空间域中增强方法:直方图均衡化,对比度以及gama增强等(颜色的增强)均值滤波,高斯滤波(模糊)局部标准差实现对比度增强(锐化)频域中增强方法如:小波变换,在图像的某个变换域内,对图像的变换系数进行运算,然后通过逆变换获得图像增强效果。一般来说,对于实际项目中,可能用其中一种或几种方法来进行图像增强效果一般会很差,...原创 2021-05-10 14:19:00 · 4187 阅读 · 0 评论 -
opencv——边缘检测算法(总结)
前言耐心看完一定会有收获的,大部分内容也会在代码中体现,结合理论知识和代码进行理解会更有效。代码用opencv4.5.1(c++)版实现一、边缘检测算法边缘检测算法是指利用灰度值的不连续性质,以灰度突变为基础分割出目标区域。对铝铸件表面进行成像后会产生一些带缺陷的区域,这些区域的灰度值比较低,与背景图像相比在灰度上会有突变,这是由于这些区域对光线产生散射所引起的。因此边缘检测算子可以用来对...原创 2021-05-08 17:35:00 · 607 阅读 · 0 评论 -
opencv——感兴趣区域(ROI)的分析和选取[详细总结]
引言在利用OpenCV对图像进行处理时,通常会遇到一个情况,就是只需要对部分感兴趣区域进行处理。因此,如何选取感兴趣区域呢?(其实就是“抠图”)。在学习opencv的掩码运算后,尝试实现一个类似halcon的reduce_domain功能,对于实现抠图的过程中,需要掌握的要点就是位运算符和copyTo函数????位运算符的相关API:void bitwise_and(InputArray......原创 2021-05-12 19:05:00 · 8669 阅读 · 5 评论 -
opencv——几何变换原理与实现
摘要图像几何变换又称为图像空间变换, 它将一幅图像中的坐标位置映射到另一幅图像中的新坐标位置。几何变换不改变图像的像素值, 只是在图像平面上进行像素的重新安排。几何变换大致分为仿射变换、投影变换、极坐标变换,完成几何变换需要两个独立的算法过程:1、一个用来实现空间坐标变换的算法,用它描述每个像素如何从初始位置移动到终止位置2、一个插值算法完成输出图像的每个像素的灰度值放射变换????...原创 2021-05-14 17:52:00 · 984 阅读 · 0 评论 -
opencv——图像直方图与反向投影
引言在图像处理中,对于直方图这个概念,肯定不会陌生。但是其原理真的可以信手拈来吗?本文篇幅有点长,在此列个目录,大家可以跳着看:分析图像直方图的概念,以及opencv函数calcHist()对于RGB图像的直方图的绘制在其基础上自已定义函数实现对灰度图像直方图的简单绘制直方图均衡化直方图的反向投影图像直方图分析以及opencv函数实现(一)直方图的介绍直方图到底...原创 2021-05-22 20:58:00 · 315 阅读 · 0 评论 -
opencv——图像遍历以及像素操作
摘要我们在图像处理时经常会用到遍历图像像素点的方式,在OpenCV中一般有四种图像遍历的方式,在这里我们通过像素变换的点操作来实现对图像亮度和对比度的调整。数据格式千万不要搞错:uchar对应的是CV_8U,char对应的是CV_8S,int对应的是CV_32S,float对应的是CV_32F,double对应的是CV_64F。补充:图像变换可以看成像素变换——点操作邻域变换—...原创 2021-05-12 16:56:00 · 2523 阅读 · 0 评论