自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Thomas会写字

自己的博客笔记

  • 博客(219)
  • 资源 (1)
  • 收藏
  • 关注

原创 Matlab freqz 函数实现

Matlab freqz 函数代码说明。

2023-09-28 16:18:18 495

原创 三种陷波滤波代码

【代码】三种陷波滤波代码。

2023-09-21 22:04:19 374

转载 Matlab的filtfilt函数解析

传统滤波(如Matlab的filter函数)会造成信号的延迟,延迟程度与滤波器的阶次有关,为了解决延迟问题,Matlab提供了filtfilt函数,该方法一般称为零相位滤波或双向滤波。本文的目的是对Matlab中的filtfilt函数原理进行解析,并在C++中实现。

2023-09-21 21:57:18 957 2

转载 高斯-牛顿算法

指因变量与自变量之间的关系不是线性的关系,比如平方关系、对数关系、指数关系、三角函数关系等等。对于此类方程,求解n元实函数f在整个n维向量空间Rn上的最优值点往往很难得到精确解,经常需要求近似解问题。求解该最优化问题的方法大多是逐次一维搜索的迭代算法,基本思想是在一个近似点处选定一个有利于搜索方向,沿这个方向进行一维搜索,得到新的近似点。如此反复迭代,知道满足预定的精度要求为止。需要用目标函数的到函数,又称最速下降法,是早期的解析法,收敛速度较慢收敛速度快,但不稳定,计算也较困难。

2023-08-25 16:53:20 3296

转载 C# 获取System.Color 中所有颜色

中的全部颜色提取出来,经过简单筛选后打乱顺序,做成随机颜色数组。

2023-08-03 09:45:46 410

转载 十分简明易懂的FFT(快速傅里叶变换)

快速傅里叶变换 (fast Fourier transform),即利用计算机计算离散傅里叶变换(DFT)的高效、快速计算方法的统称,简称FFT。快速傅里叶变换是1965年由J.W.库利和T.W.图基提出的。采用这种算法能使计算机计算离散傅里叶变换所需要的乘法次数大为减少,特别是被变换的抽样点数N越多,FFT算法计算量的节省就越显著。是离散傅氏变换(DFT)的快速算法。即为快速傅氏变换。它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。——百度百科,中文名快速傅里叶变换。

2023-07-15 22:09:53 15855 4

原创 傅里叶级数简介

任取两个不同三角函数元素,它们的乘积在[−π,π]上的定积分等于零。举例说明一共有如下四种情况(将函数f(x) 用 sin(x) + cos(x) 的形式表示出来的方式就是傅里叶级数。即,我们将直角坐标系上的函数曲线 f(x) 转移到了以sin cos 为底的坐标系中。此时,傅里叶级数的所有参数均可求得,对于需要展开的f(x),可以写成。由求解an的方式可知,在等式两边同乘sin(kx)可求得。我们对表达式两边在[−π,π]上求积分,得到。这时,我们就可以吧符合条件的f(x) 写成。

2023-06-11 13:37:34 1314

转载 字符串快速匹配算法 KMP

像上边的例子,我们已经不可能找到[ A,B,A,B ]这个最长的后缀串了,但我们还是可能找到[ A,B ]、[ B ]这样的前缀串的。所以这个过程像不像在定位[ A,B,A,C ]这个串,当C和主串不一样了(也就是k位置不一样了),那当然是把指针移动到next[k]啦。因为在P的每一个位置都可能发生不匹配,也就是说我们要计算每一个位置j对应的k,所以用一个数组next来保存,next[j] = k,表示当T[i]!像上图这种情况,j已经在最左边了,不可能再移动了,这时候要应该是i指针后移。

2023-05-17 14:51:35 170

原创 C# 函数指针

【代码】C# 函数指针。

2023-03-05 07:09:29 206

原创 C# MDI 简单实现

【代码】C# MDI 简单实现。

2023-03-02 08:17:43 147

原创 C# PropertyGrid 简单使用

2. 通过Enum.ToString()实现,将String[] 变为 Enum,通过 Enum 实现下拉框。常用属性 PropertyGrid 中已经封装了下拉框属性。1. 通过继承重写 StringConverter 函数。2. 根据字段封装顺序。

2023-03-01 23:26:55 4316

原创 C# Spliter使用方法

需要对应Panel容器使用,依次添加Panel、Spliter在。

2023-03-01 20:00:44 620

转载 ZedGraph 显示鼠标信息

【代码】ZedGraph 显示鼠标信息。

2023-01-17 13:39:02 138

原创 Opencv 基于傅里叶变换的图片高光滤波处理

对比发现,高光部分 处理效果明显。

2022-12-28 17:05:47 334

原创 MFC 自定义消息函数

【代码】MFC 自定义消息函数。

2022-12-26 11:11:54 226

原创 C# 中结构体的复制

【代码】C# 中 结构体的复制。

2022-11-29 09:56:39 818

转载 MySQL 有这一篇就够

前言知识无底,学海无涯,到今天进入MySQL的学习4天了,知识点虽然简单,但是比较多,所以写一篇博客将MySQL的基础写出来,方便自己以后查找,还有就是分享给大家。一、SQL简述1.SQL的概述Structure Query Language(结构化查询语言)简称SQL,它被美国国家标准局(ANSI)确定为关系型数据库语言的美国标准,后被国际化标准组织(ISO)采纳为关系数据库语言的国际标准。数据库管理系统可以通过SQL管理数据库;定义和操作数据,维护数据的完整性和安全性。2.SQL的优点。

2022-11-18 10:13:39 196

转载 C# 控件截图 屏幕截图

【代码】C# 控件截图 屏幕截图。

2022-10-17 10:03:25 467

转载 直角坐标系旋转

坐标系旋转

2022-07-12 10:18:33 764

原创 空间三维坐标系对齐

/*坐标系转换 格式必须是 n行3列 每行 x y z double类型DatasetFrom = 需要变换的坐标系DatasetTo = 目标坐标系DatasetTransResult = 转换结果nArraySize = 数组大小*/void Vision::ComputeR_T(cv::Mat DatasetFrom, cv::Mat DatasetTo, cv::Mat & DatasetTransResult, cv::Mat & matR, cv::Ma...

2022-02-28 17:49:15 3052 2

原创 机械手基坐标系和工具坐标系的相互转换

机械手基坐标系和工具坐标系的相互转换,主要是通过欧拉角来完成的。double D2R(double D){ return D / 180 * M_PI;}double R2D(double R){ return R / M_PI * 180;}void Rx(cv::Mat& mat, double dAngel){ mat = cv::Mat(3, 3, CV_64FC1); double dAngle_ = D2R(dAngel); mat.at<d

2022-02-28 17:34:42 5230

转载 【TensorFlow】理解tf.nn.conv2d方法 ( 附代码详解注释 )

最近在研究学习TensorFlow,在做识别手写数字的demo时,遇到了tf.nn.conv2d这个方法,查阅了官网的API 发现讲得比较简略,还是没理解。google了一下,参考了网上一些朋友写得博客,结合自己的理解,差不多整明白了。方法定义tf.nn.conv2d (input, filter, strides, padding, use_cudnn_on_gpu=None, data_format=None, name=None)参数:input : 输入的要做卷积的图片,要求为一个张量

2022-02-11 09:37:31 601

转载 动态时间规整算法(DTW)原理及代码实现

Dynamic Time Warping(DTW)动态时间规整算法Dynamic Time Warping(DTW)是一种衡量两个时间序列之间的相似度的方法,主要应用在语音识别领域来识别两段语音是否表示同一个单词。1. DTW方法原理在时间序列中,需要比较相似性的两段时间序列的长度可能并不相等,在语音识别领域表现为不同人的语速不同。而且同一个单词内的不同音素的发音速度也不同,比如有的人会把“A”这个音拖得很长,或者把“i”发的很短。另外,不同时间序列可能仅仅存在时间轴上的位移,亦即在还原位移的情

2022-02-09 14:38:34 7207

转载 [C#]TreeView单选模式的实现

一、需求使TreeView实现单选模式二、实现1、TreeView控件属性CheckBoxes设置为True2、为TreeView添加AfterCheck事件,并在事件中调用如下方法/// <summary>/// 树形框-单选模式的实现,放在事件 _AfterCheck下/// </summary>/// <param name="tv"></param>/// <param name="e"></param&

2022-02-07 17:05:10 990

原创 ZedGraph 手动 Set Scale to Default 功能

GraphPane myPane = zedGraphControl1.GraphPane;zedGraphControl1.ZoomOutAll(myPane);zedGraphControl1.Refresh();

2022-01-26 17:47:25 433

原创 ZedGraph 鼠标右键菜单栏编辑

1. 控件 - 属性 - ContextMenuBuilder 事件进入消息。每次点击鼠标右键时都会相应这个消息。2. 在消息里可以禁用鼠标邮件的菜单栏、中英文转换等。具体可以Debug查看下。我这里是禁用了 Set Scale to Default 功能。private void zedGraphControl1_ContextMenuBuilder(ZedGraphControl sender, ContextMenuStrip menuStrip, Point mousePt, ZedGra

2022-01-26 17:46:06 542 2

原创 Mil学习之图片的ROI获取及半透膜掩膜效果着色

只对地球部分着色用到Blob Buf Image几个部分MIL_ID MImageSrc = 0;MIL_ID MImageMask = 0;MIL_ID MImageGray = 0;ReadColorImage("C:\\Users\\kakie\\Desktop\\Image\\75.bmp", ref MImageSrc);MIL.MbufClone(MImageSrc, MIL.M_DEFAULT, MIL.M_DEFAULT, MIL.M_DEFAULT, MIL.M_D...

2022-01-23 11:31:06 483

原创 Mil学习之Mim的简单操作

1. 旋转矩形区域的矫正MIL.MbufAllocColor(MilSystem, MIL.MbufInquire(MilImage, MIL.M_SIZE_BAND, MIL.M_NULL), nWidth, nHeight, 8 + MIL.M_UNSIGNED, MIL.M_IMAGE + MIL.M_PROC + MIL.M_DISP, ref MilImageTmp);MIL.MimRotate(MilImage, MilImageTmp, -rectAngl

2021-12-01 21:23:52 2833

转载 二次曲线拟合

解此方程得到在均方误差最小意义下的拟合函数p(x),上述方程组称为多项式拟合的法方程,法方程的系数矩阵是对称的。当拟保多项式阶n>5时,法方程的系数矩阵是病态的,在计算中要用双精度或者一些特殊算法以保护解得准确性。示例:给定一组数据,用二次多项式函数拟合这组数据散点图如下所示:程序如下:#############################################Edit by wd,2013,4,16#######################...

2021-11-04 16:50:50 6713

转载 ZedGraph控件常用方法和属性总结

最近在WPF使用ZedGraph控件,发现这个控件的功能很强大,据说采用了双缓冲机制来绘制图,只要控制好显示的帧速,能够显示速度较快的动态图。参考:https://blog.csdn.net/qq_26093511/article/details/513290591、常用属性设置 zedGraphControl2.IsShowPointValues = true; //鼠标经过图表上的点时是否气泡显示该点所对应的值 zedGraphControl

2021-11-04 16:48:15 1255

转载 ZedGraph的常用属性

前面有一篇文章介绍ZedGraph的官网,以及控件的使用文档。https://blog.csdn.net/weixin_40314351/article/details/114273114现在,通过一个案例了解ZedGraph的常用属性。话不多数,直接上图。这个是官网的一个案例,实现了多个Y轴同时在使用。public partial class Form1 : Form { GraphPane myPane ; PointPairList v.

2021-11-04 16:46:35 446

转载 ZedGraph 官网下载和帮助文档ZedGraph.chm

ZedGraph介绍ZedGraph是用C#编写的.NET的类库控件,可用于绘制曲线图、饼图、柱状图、股票K线图等,功能非常强大。1、ZedGraph的官网是: https://sourceforge.net/projects/zedgraph/2、ZedGraph.CHM帮助文档官网的链接: https://sourceforge.net/projects/zedgraph/files/gigithub链接: https://github.com/wSweetMei/ZedGp.

2021-11-04 16:44:49 455

原创 C# 拖拽实现

1. 属性设置为True2. 实现两个方法 private void Form1_DragDrop(object sender, DragEventArgs e) { string[] s = (string[])e.Data.GetData(DataFormats.FileDrop, false); if (s == null || s.Length <= 0) retu.

2021-11-02 16:31:54 893

转载 将BitMap转成Icon

System.IntPtr iconHandle = pbitmap.GetHicon();this.Icon = Icon.FromHandle(iconHandle);

2021-10-30 15:27:12 590

原创 C# 设置图片背景色透明

C# 将图片的背景色设置透明需要将透明部分设置为纯白色,图片格式pngImage image = Resources.Green.ResizeImage(nw+2, nw+2); Bitmap pbitmap = new Bitmap(image);pbitmap.MakeTransparent(Color.White);uiLabel2.Image = pbitmap;

2021-10-23 22:57:22 5047

原创 C#矩阵运算类库 -- 一些补充

重点补充,发现原类中没有深度复制(也许是我没找到。。。)于是修改如下MatrixAlgebra -->Matrix.cs -->Initialize函数 private void Initialize(double[,] Elements) { elements = Elements.CopyMatrix(); SubMat = new MatrixSubset(elements); ...

2021-10-13 16:19:51 1024

转载 C#矩阵运算类库

这个类库是本人参考许多相关资料之后做出的C#矩阵运算类库,因为C#的数值计算库相对比较少,所以希望这个类库能够给大家带来一些帮助。源码github网址:https://github.com/JoshuaHe2015/MatrixLibrary功能介绍:(持续更新中)1、矩阵的基本运算:  矩阵的加、减、乘、除、求逆、求幂、求秩、求行列式、转置。运算包括矩阵与矩阵的运算,矩阵与向量的运算和矩阵与标量的运算。using System;using LinearAlgebra;namesp

2021-10-13 16:14:27 1498 1

原创 Matlab列出文件夹内容dir函数的使用

dir列出当前文件夹中的文件和文件夹。dirdir namelisting = dir(name)listing = dir('.\');listing = dir('.\*.csv');listing = dir('D:\abc\*.csv');

2021-09-14 06:31:54 2407

转载 Matlab读取csv文件csvread函数的使用

方法一:M = csvread(‘FILENAME’),读取逗号分隔值格式的文件名。结果直接返回给M。因此,文件只能包含数值。 方法二:M = csvread(‘FILENAME’,R,C),从逗号分隔值格式的文件中读取数据(从R行和C列开始)。R和C从零开始,因此R=0和C=0指定文件中的第一个值。即csv文件中的第一行为该函数的第0行,csv文件中的第一列为该函数的第0列。 方法三:M = csvread(‘FILENAME’,R,C,RNG),只读取由RNG=[R1 C1 R2 C2]指...

2021-09-14 06:27:25 28489 2

原创 Mil学习之McalFixture

思路Alloc 一个MilCalFixure 对象 指定标准状态(M_LEARN_OFFSET)要点:1. 通常learn会用到模板匹配 + 测量模块,这就要求模板匹配和测量的建模必须来自同一张图片2.MilCalFixure 的应用必须有一个基础坐标系统,也就是图片必须标定。学习模块和下面的应用模块所操作的图片对象必须绑定同一个标定ID。这里如果没有标定对象可以这样写MIL.McalUniform(MilImageTraining, 0, 0, 1, 1, 0, MIL.M_D..

2021-08-20 16:40:08 168

中心矩原点矩Hu矩Zernike矩的介绍

自己整理的矩相关文档,特别是针对HU矩以及Zernike矩部分,网上有很多的博客,但是多有不完整或者错误的地方,自己进行了核对并整理成笔记。

2018-08-22

空空如也

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

TA关注的人

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