自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(39)
  • 资源 (14)
  • 收藏
  • 关注

转载 命名方法

一、匈牙利命名法:广泛应用于象Microsoft Windows这样的环境中。      Windows 编程中用到的变量(还包括宏)的命名规则匈牙利命名法,这种命名技术是由一位能干的 Microsoft 程序员查尔斯?西蒙尼(Charles Simonyi) 提出的。        匈牙利命名法通过在变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域,类型等。这些符号可以

2017-06-28 15:17:33 294

转载 VC 使用OnCtlColor函数来改变控件颜色

在MFC类库提供了CWnd::OnCtlColor函数,在工作框架的子窗口被重画时将调用该成员函数.因此可以重载WM_CTLCOLOR消息的响应函数.此函数的原型:    afx_msg HBRUSH OnCtlColor(CDC *pDC,CWnd *pWnd,UINT nCtlColor);                    参数nCtlColor用于指定控件的类型,可以是: 

2017-06-28 14:17:56 450

原创 VS2010利用ATL创建COM dll,编译时报错

编译时提示:...warning MSB3075: 命令“regsvr32 /s "C:\Users\85118\Desktop\ATLdemo\Debug\ATLdemo.dll"”已退出,代码为 5。请验证您是否有足够的权限来运行此命令。..error MSB8011: 未能注册输出。请尝试启用“逐用户重定向”,或者使用提升的权限从命令提示符处注册该组件。将逐用户重定义

2017-06-26 12:39:31 605

原创 dos下显示异常

尝试以下方法均不可行:(1)RegClear注册表修复工具(2)dos窗口属性设置。如图二所示,点阵字体项为空。

2017-06-24 15:00:57 405

转载 TinyXML 根据属性名,属性值返回对应的元素节点(源代码)

转载自:http://blog.csdn.net/wojiushi3344/article/details/7925932//递归所有节点 TiXmlElement* RecursionAllNode(TiXmlElement * pElement,string attributName,string attributValue) { string strValue;

2017-06-23 15:49:22 2341

转载 C++结构体:默认构造函数,复制构造函数,重载=运算符

转载自:http://blog.csdn.net/fu_zk/article/details/10539705C++结构体提供了比C结构体更多的功能,如默认构造函数,复制构造函数,运算符重载,这些功能使得结构体对象能够方便的传值。比如,我定义一个简单的结构体,然后将其作为vector元素类型,要使用的话,就需要实现上述三个函数,否则就只能用指针了。#include #

2017-06-23 13:10:14 382

转载 C,C++,VC++,MFC之间有什么区别和联系

C语言是一种古老而又经久不衰的计算机程序设计语言,大约诞生于上个世纪60年代。由于它的设计有很多优点,多年以来深受广大程序设计人员的喜爱,并逐渐淘汰了很多其它程序设计语言。我们平时使用的大多数软件都是用c语言开发的。很多后来出现的一些语言也沿用了很多它的东西。C语言的编程方式是一种称为面向过程的开发方式。也就是说,解决问题的时候,程序员需要思考计算机应该如何一步一步完成这个问题,然后将相应过程转化

2017-06-22 18:53:32 829

原创 Invalidate的作用

invalidate的意思是“使无效”,其实就是使窗口无效。使当前的窗口无效的目的就是让Windows知道这个窗口现在该重新绘制一下了。任何时候当你想 擦除 并 绘制 窗口的时候,就可以在别的函数中完成功能代码之后Invalidat()一下。OnDraw马上就会被调用了。 CWnd* pWnd = GetDlgItem(IDC_EDIT_SHOW); if(pWnd != nullptr

2017-06-22 18:41:23 1597

转载 VS2010中创建DLL和(静态)调用DLL

创建DLL         新建indows ConsoleApplication,在“应用程序类型”选项中选择DLL,在“附加选项”中选择空项目,项目名称为CreateDll(自己定义),添加CreateDll.h和CreateDLl.cpp两个文件编译生成DLL文件,这时会在解决方案的Debug文件夹下发现生成的CreateDll.dll和CreateDll.lib文件。

2017-06-22 14:50:53 509

转载 MFC中修改静态文本框中文字的字体、颜色

一    设置字体在OnInitDialog()函数中添加代码方法1:newFont.CreatePointFont(160,L"楷体");m_static_xsdj.SetFont(&newFont);方法2:CFont* font;font=m_static_xsdj.GetFont();//获取CFont对象LOGFONT lf;font->GetLogFont(&l

2017-06-22 11:26:00 3252

转载 使用Source_Insight查看opencv源代码

转载自:http://blog.csdn.net/hx1298234467/article/details/48196671网上有很多关于用Cmake将OpenCV代码生成一个VS工程的方法查看opencv的源代码,但是我感觉这样打开源代码会让电脑很卡(不知道是不是我电脑的配置太低还是什么个情况),所以我就用Source_Insight这个工具来查看代码。使用教程在下面: 一、安装: 

2017-06-20 18:53:28 538

原创 手眼标定中的closed chain

The remaining two transformationsbaseHtooland camHcalof the closed chain of transformations depend on the robot pose and are known from the robot kinematics and from  the algorithm that determin

2017-06-20 16:26:21 1020

转载 GPU与CPU版本的矩阵乘法对比

转载自:http://www.cnblogs.com/stormhan/p/5467187.html由于刚刚开始学习Cuda,还没有整理出一个完整的Cuda类,只是在Nvidia提供的kenerl架构上做修改。  但用于初体验GPU给我们带来的好处也绰绰有余了。  直接贴代码:/* 矩阵乘法,CPU版本和GPU版本的对比*/#include "cuda_run

2017-06-19 10:59:43 946

原创 点击确定按钮退出程序时,在__crtExitProcess 的ExitProcess处出现冲突

之前程序一直可以正常退出,不会出现冲突。我仔细想来一下,除了一次更新显卡AMD Radeon R5 M420的驱动程序,再也没有更改过系统相关的东西了。我在设备管理中,将AMD Radeon R5 M420禁用后,又可以正常退出了。真是奇怪了,还是要把驱动退回到之前的版本。

2017-06-19 10:35:17 1055

原创 Halcon学习(五)手眼标定之眼在手外

首先了解变换的步骤,而后再深究其数学原理。眼在手外的标定,分为以下几步:1. 图像处理,定位抓取点坐标。2. 在放置物体的平面上放置halcon标定板,将标定板坐标系定义为参考坐标系,利用相机标定得到的内参,将抓取点从二维变换到三维(可以认为就是从相机中走出来,这一步至关重要),获得其在参考坐标系下的位姿。3. 将参考坐标系下的抓取点转换到相机坐标系中。(参考坐标系与相机坐标系间的变换

2017-06-15 20:47:02 21926 3

原创 相机成像时远小近大的数学原理

假设相机模型为小孔成像,为了方便,将像平面移动至相机和物体之间。从下图中可知,同一个物体,位于近处时在像平面上投影的大小显然要大于位于远处时的投影大小。

2017-06-15 13:36:22 4542

转载 坐标系之间的旋转平移变换与对应变换矩阵的关系

在摄影测量和计算机视觉中,经常会遇到空间坐标系之间的坐标转换问题,而两个坐标系之间的变换关系一般可以通过一个旋转矩阵R和一个平移向量T(或C)描述。因此,理解清楚坐标系之间旋转平移的转换过程与对应变换矩阵之间的关系十分重要。这个变换过程虽然简单,但是其间涉及到的参数的表述存在多种形式,常常失之毫厘谬以千里,给我们的理解和使用带来诸多不便,例如,旋转角正方向的定义,不同坐标轴的旋转顺序对应的旋转矩阵

2017-06-14 12:44:07 1438

转载 三维数学基础之坐标系、向量、矩阵

转载自:http://blog.csdn.net/iosevanhuang/article/details/9052165一、计算机图形学计算机图形学(Computer Graphics)是一种使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。其广泛应用于游戏、动画、仿真、虚拟现实(VR)、增强现实(AR)等领域。在数学之中,研究自然数和整数的领域

2017-06-14 10:41:45 14055

原创 图像坐标系中对象的平移旋转等运动为什么要放在齐次坐标下描述

摘自《计算机图像学(OpenGL版)》

2017-06-14 08:42:39 1156

原创 基与坐标系(阅读《理解矩阵》笔记)

假设线性子空间的基B={v1,v2,...,vk}, 向量 a = v1c1+v2c2+...+vkck,那么(c1,c2,...,ck)即为a基于B的坐标。换句话说,坐标是向量在某组基下的表示。此时,我们称B定义了一个坐标系。如果一组向量彼此线性无关,那么它们就可以成为度量这个线性空间的一组基,从而事实上成为一个坐标系,其中每一个向量都躺在一根坐标轴上,并且成为那跟坐标轴的基本度量单位(

2017-06-12 15:41:14 7196

转载 MFC 如何改变对话框的默认背景颜色

下面介绍三种方法:实现改变对话框的默认背景颜色:(1)可以在CLotteryApp::InitInstance()设置更新对话框的背景颜色      调用SetDialogBkColor(RGB(160,32,240)) 即可以改变背景颜色         注意这里绘制的颜色是针对程序中所有的对话框        SetDialogBkColor(RGB(0,0,255),RG

2017-06-09 13:23:33 2610 2

转载 OnCtlColor函数的用法

从函数名易看出,OnCtlColor函数的作用是改变(或响应)控件的颜色~~多用在对话框应用程序(或基于CFormView的应用程序)中,希望在对话框显示时,里面的控件的颜色可以设置为我们想要的颜色~~在OnInitDialog() 函数中,我们一般设置好控件的字体~~在OnPaint()函数中,用来画图,或者是加载一幅位图~~我们往控件里拖入了很多控件,那么控件的

2017-06-09 13:04:39 1368

原创 MFC中去掉窗口右上角的关闭按钮

转载自:http://blog.csdn.net/eickandy/article/details/48517029简介:最大化、最小化和关闭按钮是窗口中最主要的元素。首先要说明,说他们是按钮其实是不准确的,按钮是一种窗口,而这三个组件根本就不是窗口,而是一个窗口常见的组成部分。出于习惯的原因,这里还是称呼他们为按钮。这三个按钮是否显示似乎只能在窗口创建是决定。首先,要

2017-06-09 10:45:57 8774 1

原创 Halcon学习(四)图像处理中的两个坐标系

写在前面:从“矩阵都是对基的变换”这个角度去理解仿射变换,这样更为直观。        矩阵的学习应从矩阵的几何意义入手 一   参考MATLAB文档1.  Pixel  Indices (matlab文档)origin in upper left corner of the image  (pixel 和 image 都是这个坐标系),左上角的像素坐标为(1,1),右边的像...

2017-06-08 14:51:08 21642 14

原创 旋转矩阵

参考:https://en.wikipedia.org/wiki/Rotation_matrix

2017-06-08 11:21:30 565

原创 写在前面

在孟岩老师《理解矩阵》一文中看到一句话: “长期以来,我在阅读中一见矩阵,就如同阿Q见到了假洋鬼子,揉揉额角就绕道走。”以前学习线性代数、矩阵论等数学课程时,书我是看不懂,老师的课也听不懂,最后只是通过做习题,套标准答案把考试糊弄过去 了,却一点也没有理解这些课程。最近看了《理解矩阵》一文,对矩阵相乘等一些概念稍微有了一点拨云见日的感觉。三维图像处理和机器人控制理论中,矩阵的地位至

2017-06-08 10:48:58 277

原创 Halcon标定板

************************************************************************用淘宝上购买的标定板,标定后的mean error为0.014用打印机打印的标定纸,mean error为0.37还是要用专业标定板才行。*************************************************

2017-06-07 14:52:06 1819

转载 内核态(Kernel Mode)与用户态(User Mode)

内核态: CPU可以访问内存所有数据, 包括外围设备, 例如硬盘, 网卡. CPU也可以将自己从一个程序切换到另一个程序用户态: 只能受限的访问内存, 且不允许访问外围设备. 占用CPU的能力被剥夺, CPU资源可以被其他程序获取为什么要有用户态和内核态由于需要限制不同的程序之间的访问能力, 防止他们获取别的程序的内存数据, 或者获取外围设备的数据, 并发送到网络, CPU

2017-06-07 09:05:40 2423

转载 CPU性能的影响因素:主频和架构

主频和架构对CPU性能的影响同样重要,不能够割裂这两个因素来评估CPU的性能。主频很容易理解,类似于速度,对于同一种架构的CPU,当然是主频越高CPU的速度就越快。但是,如果CPU的架构不一样,只看主频,基本上无法判断CPU 性能的优劣。那么架构是什么?对于大多数用户比较陌生,是个比较晦涩的技术术语,即使听说过,也可能被懂行的技术人员用更多晦涩的技术术语解释得更像“云里雾里”。架构一词

2017-06-07 08:32:53 6538

原创 windows资源监视器

右侧共有3类CPU 图表,其中一类是CPU 总计,代表物理计算机总体的CPU 占有率情况,其中的粗线条(蓝色)代表CPU 当前的运行频率所占标称频率的百分比,细线条(绿色)代表当前系统的CPU 占有率。另外一类是服务CPU 使用率,显示Windows 系统中服务的占有率。第三类是物理计算机中每个逻辑处理器的CPU 占有率,例如笔记本的CPU 有两个核心,则会给这两个逻辑处理器分别显示CPU 占

2017-06-07 08:30:50 3879

原创 release中exe正常运行,安装文件解压后exe不能打开

网上看了一下,可能是安装路径中含有中文字符,当我把中文字符改掉后后,程序便可正常运行。

2017-06-06 20:50:58 1712

转载 InnoSetup 打包文件夹的解决方案

Q:我用inno setup 打包安装程序时,每次在添加文件夹时是添加起了,可是总在用打包好的安装程序时,每次都会把原来添加的文件夹下的文件直接装在应用程序的文件夹里,要怎么才能改成比如说打包C:\123\12文件夹下的文件,在添加的时候就添加12文件夹,可是安装程序打好凶后,12文件夹下的文件直接被安装到应用程序目录了,怎么才能改成原来的呀? A:第一,你可以添加文件夹,将整个

2017-06-06 20:07:51 5865 1

原创 window下的一些快捷键

1. 关闭窗口  alt+space+c2. win7之后多任务的时候窗口平分很简单,win+左右方向键,超方便。顺带一提上下分别是最大化和最小化。3. 打开任务管理器可以用ctrl+shift+esc,只用一只手就能完成。

2017-06-06 17:01:13 268

原创 basler、halcon在vs下的配置方法

1. basler sdk C/C++->常规->附加包含目录 $(PYLON_DEV_DIR)\include链接器->常规->附加库目录 $(PYLON_DEV_DIR)\lib\x642. halcon1)导出代码为halcon10-legacy包含目录:$(HALCONROOT)\include\cpp$(HALCONROOT)\include库目录

2017-06-06 13:19:18 3506

原创 使用BROWSEINFO选择文件夹

CString SetTargetFileName(){ CString strPath(_T("")); BROWSEINFO bi; bi.hwndOwner = NULL; bi.pidlRoot = CSIDL_DESKTOP;//文件夹的根目录,此处为桌面 bi.pszDisplayName = NULL; bi.lpszTitle

2017-06-06 08:57:48 6210 1

原创 去除调试状态下输出窗口的调试信息

basler输出较多调试信息,虽不影响正常使用,但显得有点乱七八糟。在工具选项下,将勾选红色方框。则调试状态下,则输出窗口没有basler的输出信息了。

2017-06-05 15:06:36 985

原创 两种输出调试信息的方法

1. TRACE例如:TRACE(_T("success");   TRACE(_T("%ld",9999);2. OutputDebugString例如:OutputDebugString(_T("sucess"));  Cstring strNum;  strNum.format(_T("%ld",9999);  OutputDebugString(strNum);

2017-06-05 14:54:46 567

转载 精确计算代码执行时间

转载自:精确计算代码执行时间精确测量一段代码的执行时间1.LARGE_INTERGER类型LARGE_INTERGER是union类型,用于表示一8个字节的有符号整数,定义如下:typedef union _LARGE_INTERGER{       struct{                     DWORD LowPart;

2017-06-02 16:53:28 384

转载 左值引用(&)和右值引用(&&)

参考[1]:C++——左值引用和右值引用参考[2]:C++11 rvalues and move semantics confusion (return statement)参考[3]:左值引用VS右值引用

2017-06-02 11:15:26 441

C#双缓存实现半透明缩略图跟随鼠标移动效果

C#双缓存实现半透明缩略图跟随鼠标移动效果,demo有助于了解winform双缓存实现方法,可以在此基础上实现控件拖拽功能

2019-11-29

Reflector反编译工具

最新版,亲自试过,可以用 NET程序员的开发利器.NET Reflector

2017-12-13

C# 程序间通信(SendMessage方式)

demo中两个窗体程序可以互发信息,可以在此基础上初步了解程序间通信的方法

2017-10-19

Socket通信

对话框实现打开服务端和客户端,服务端和客户端可以进行相互通讯

2017-10-11

basler相机SDK类(C++)

将basler的SDK函数封装为C++类

2017-06-01

两线程交替运行demo

实现了两个线程交替输出,基于vs2010

2017-05-28

C++多线程demo

一个简单的C++多线程demo

2017-05-28

basler ace_gige系列使用手册

介绍了basler pylon的使用,及相机内部功能

2017-05-28

实时获取光标当前位置的灰度值

MFC和Halcon编程,获取窗口上光标位置的像素灰度值。

2017-05-15

EPSON视觉引导相关资料

EPSON四轴六轴的和视觉引导相关的一些资料,里面也介绍了手眼标定的一些知识。

2017-05-15

C++面试题(第一部分)

常见的C++面试题汇总(第一部分),面试了几次题目的重复度还是可以的。

2015-12-03

粒子群优化算法

粒子群优化算法可以用于样本优选和特征提取

2015-11-27

matlab数据提取GUI文件

利用matlab工具,从excel中提取数据用于模式识别

2015-09-06

空空如也

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

TA关注的人

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