随笔分类 -  Opencv

Opencvv的练习程序
摘要:第一次运行时,并行计算会比普通计算要快很多,如图1所示。可是第二次运行,两种方式所用时间基本差不多,有高手能指点下吗? 这段程序我是参考了下面这篇文章: OpenCV并行加速Parallel_for_与ParallelLoopBody教程_void operator()(const range& r 阅读全文
posted @ 2024-06-19 06:20 凤凰_1 阅读(167) 评论(0) 推荐(0)
摘要:发现一个好玩的二维图像绘制函数,与大家共同欣赏:) 参考网址:OpenCV4入门061:使用plot2d绘制折线图 - 食铁兽 (feater.top) 头文件: #include<opencv2/plot.hpp> 动态库: -llibopencv_plot454d int main() { // 阅读全文
posted @ 2022-08-16 12:20 凤凰_1 阅读(555) 评论(0) 推荐(0)
摘要:附属代码: 基本代码: 将要学习的图片,手写数字1 下面是演示代码: int main() { string labelpath="D:/Qt/MyImage/MNIST/train-labels.idx1-ubyte"; string imgpath="D:/Qt/MyImage/MNIST/tr 阅读全文
posted @ 2022-08-16 10:36 凤凰_1 阅读(152) 评论(0) 推荐(0)
摘要:本程序主要包括两部分:一、神经元类NeuronNode,里面含有基本的神经元信息,比如权重w、偏置项b,输出项out_a,他们都是以矩阵的形式表示;该类可以定义一个或多个神经层,每个神经层节点组成矩阵 二、神经网络类NeronNet,在该类中将NeuronNode组织成多层神经网络。 class N 阅读全文
posted @ 2022-08-09 15:03 凤凰_1 阅读(414) 评论(0) 推荐(0)
摘要:参考了一下两个链接: Parsing MNIST data, save as bmp images · GitHub; (20条消息) C++读取MNIST数据集_N3verL4nd的博客-CSDN博客_c++读取mnist; 大小端转换程序1: void reverseInt(int& i) { 阅读全文
posted @ 2022-07-16 14:29 凤凰_1 阅读(237) 评论(0) 推荐(0)
摘要:1、构造图像的基本单元类 class ImgUnit { public: ImgUnit(unsigned char *p) { for(int i=0;i<3;i++) { unsigned char *pp=p+1+i*1024; m[i]=Mat(32,32,CV_8U,pp); } merg 阅读全文
posted @ 2022-07-15 15:14 凤凰_1 阅读(76) 评论(0) 推荐(0)
摘要:傅里叶变换的公式,大家脑部,本实例是先将一副图像做傅里叶变换,再对傅里叶阵列做逆变换,代码如下: #include <iostream> #include<opencv2/opencv.hpp> using namespace cv; using namespace std; void dftshi 阅读全文
posted @ 2021-06-05 12:12 凤凰_1 阅读(2198) 评论(0) 推荐(0)
摘要:在Opencv中实现了Matlab的bsxfun函数,只实现了加法plus、减法minus,其它的太耗时,有感兴趣的朋友也来做做,分享分享。 bsxfun函数的用法参考链接: https://blog.csdn.net/tina_ttl/article/details/51034773 #inclu 阅读全文
posted @ 2021-02-17 15:29 凤凰_1 阅读(173) 评论(0) 推荐(0)
摘要:#include <iostream> #include<opencv2/opencv.hpp> using namespace cv; using namespace std; void idealFilter(const Mat&imgDft,Mat&result,int R) { int co 阅读全文
posted @ 2020-06-02 03:15 凤凰_1 阅读(379) 评论(0) 推荐(0)
摘要:K-Means聚类算法原理参考以下链接: https://www.cnblogs.com/pinard/p/6164214.html 2. 传统K-Means算法流程 在上一节我们对K-Means的原理做了初步的探讨,这里我们对K-Means的算法做一个总结。 首先我们看看K-Means算法的一些要 阅读全文
posted @ 2019-09-13 17:49 凤凰_1 阅读(635) 评论(0) 推荐(1)
摘要:unmix 该程序用来消除“像素混叠”。所谓像素混叠,是值在自然场景的图像中,边缘线成像到cmos的像素上时,某些像素会刚好跨在该边缘线上。 这样的像素特点就是,其R、G、B三色像素梯度值不一致。比如说cmos上,每个彩色像素有R、G、B三色传感器组成,其排列方式是依次从左向右排序。 那么,如果刚好 阅读全文
posted @ 2019-08-15 17:03 凤凰_1 阅读(433) 评论(0) 推荐(0)
摘要:我们都知道梯度很好求,只需要将[-1,1] 与图像分别在x 方向和y方向卷积,即可求得两个方向上的梯度。不过在求梯度方向时,还是有些麻烦,因为梯度方向会指向360°的任何一个方向,所以直接用atan(dy/dx)函数,通常会得到正负PI/2范围内的值,因此,在本文中将根据dy、dx的正负,求取任一象 阅读全文
posted @ 2019-08-14 16:06 凤凰_1 阅读(2445) 评论(0) 推荐(1)
摘要:英文参考:http://www.incrediblecharts.com/indicators/exponential_moving_average.php Exponential moving averages are recommended as the most reliable of the 阅读全文
posted @ 2018-06-24 11:32 凤凰_1 阅读(1434) 评论(0) 推荐(0)
摘要:在本示例中,共设计了三个函数,分别是巴特沃斯滤波器BLPF()、巴特沃斯陷波滤波器notchFilter_BTW()、高斯陷波滤波器notchFilter_GAUSS() 巴特沃斯陷波滤波器参见书上6.4.5选择性滤波器,高斯陷波滤波器参照6.3.3节中的高斯低通滤波器。 阅读全文
posted @ 2018-06-16 08:36 凤凰_1 阅读(1693) 评论(0) 推荐(0)
摘要:奇异值分解的理论参见下面的链接 http://www.cnblogs.com/pinard/p/6251584.html https://blog.csdn.net/shenziheng1/article/details/52916278 https://blog.csdn.net/billblis 阅读全文
posted @ 2018-05-19 21:26 凤凰_1 阅读(5655) 评论(0) 推荐(0)
摘要:在Matlab中有个psf2otf()函数,可以将小尺寸的点扩散函数,扩大尺寸,并作二维傅里叶变换,opencv中没有这个函数,所以编了这么个函数: /*****************************Mat psf2otf(const Mat&psf, Size outSize=Size( 阅读全文
posted @ 2018-05-18 21:10 凤凰_1 阅读(3576) 评论(0) 推荐(0)
摘要:下面是根据书上103页,图4.4(e),分别采用8-连通和4-连通两种方式进行边界追迹的简单示例程序: 运行结果如下,左图是一个多边形图像,背景为黑色。右图是采用4-连通的方式追迹边界的结果 为了看得清楚,将上图拐角处放到如下,从图中我们可以看到,拐角处是不连续的边线。 接下来,我们再看看8-连通边 阅读全文
posted @ 2018-03-24 09:25 凤凰_1 阅读(2304) 评论(0) 推荐(0)
摘要:费了半天劲,终于把这个WMesh类搞懂了,可惜效果不佳,比Matlab中的mesh差多了。 使用WMesh前,需要有一个Mesh对象,Mesh是三维数据点的基本几何信息、颜色信息、索引信息等集成的对象。Mesh对象无法直接在Viz3d中显示,需要转换为WMesh对象,然后才可以显示。 首先了解Mes 阅读全文
posted @ 2018-02-12 19:05 凤凰_1 阅读(848) 评论(0) 推荐(0)
摘要:在Opencv中有个Viz模块,可以显示三维物体,还可以实现三维动画,本来是很好的东东,但是里面的函数、类的说明太过简单,始终不得要领。不过其中一个扩展功能非常好,就是你可以在vtk中设计自己的模型类,在Opencv中的Viz3d窗口中显示。 在这里我用vtk中的vtkSurfaceReconstr 阅读全文
posted @ 2018-02-10 17:44 凤凰_1 阅读(5422) 评论(0) 推荐(0)
摘要:///*12 在Matlab中有个circshift()函数,可以实现行、列的循环移动 /// 在返卷积运算中,会用到这个函数。所以,在Opencv中我也定义同样功能的函数 /// 该函数有3个参数,第1个src是输入矩阵或图像,第2、3个参数分别是 /// 沿着'行'方向移动的函数,和沿着‘列’方 阅读全文
posted @ 2018-02-07 10:12 凤凰_1 阅读(1829) 评论(0) 推荐(0)