- 博客(36)
- 资源 (7)
- 问答 (1)
- 收藏
- 关注
转载 “default”标签跳过“ ”的初始化操作问题解决
在switch语句中不可以有定义部分,如果有定义,要初始化的时候,必须把定义部分需要用{}括起来。eg:switch(c){case '+': { Context *context=new Context(newAddOperation(a,b)); cout context->GetResult()endl;
2017-11-20 14:20:57 5281 1
转载 HTuple和VC数据的相互赋值
// HTuple→VC 数据类型转换HTuple hTuple = 1234;int i = hTuple[0].I(); // i=1234long l = hTuple[0].L(); // l=1234long lNumber = hTuple.Num(); // lNumber=1,数据个数
2017-11-17 18:15:18 4298 1
转载 qt+halcon配置方法记录
本来一直使用MFC与Halcon配合写,后来发现qt有兼容性好的天然优势,加上又在看QGroundcontrol的源码,更想讲Qt与Halcon结合。可是结合的过程并不顺利,耗时了好久都不能成功配置,几度想放弃,最后在QT开源群的指点下加上自己的尝试终于配置成功,再次做一个记录,也希望给后来者做一个提示配置:在.pro文件中加入以下代码#includes
2017-11-17 11:04:12 1262
转载 OpenCV中矩阵类详解之一:Mat
综述Mat类可以被看做是opencv中C++版本的矩阵类,替代原来C版本的矩阵结构体CvMat和图像结构体IplImage;Mat最大的优势跟STL的兼容性很好,有很多类似于STL的操作。但是Mat远远强于后者;Mat是一种高效的数据类型,它对内存进行动态的管理,不需要之前用户手动的管理内存。Mat类定义Mat类定义于core.h
2017-11-17 10:12:33 1286
转载 马尔可夫和马尔可夫链简介
1 马尔可夫个人简介安德烈·马尔可夫,俄罗斯人,物理-数学博士,圣彼得堡科学院院士,彼得堡数学学派的代表人物,以数论和概率论方面的工作著称,他的主要著作有《概率演算》等。1878年,荣获金质奖章,1905年被授予功勋教授称号。马尔可夫是彼得堡数学学派的代表人物。以数论和概率论方面的工作著称。他的主要著作有《概率演算》等。在数论方面,他研究了连分数和二次不定式理论 ,解决了许多难题 。在
2017-11-17 08:29:31 2893
转载 c++中常用的计算程序运行时间的方法
方法1:计时函数是clock(),而与其相关的数据类型是clock_t(头文件是time.h)。函数定义原型为:clock_t clock(void);这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock)。clock_t是一个长整形数。另外在time
2017-11-15 11:50:02 339
转载 opencv中的匹配函数matchTemplate
使用OpenCV函数 matchTemplate 在模板块和输入图像之间寻找匹配,获得匹配结果图像使用OpenCV函数 minMaxLoc 在给定的矩阵中寻找最大和最小值(包括它们的位置).原理什么是模板匹配?模板匹配是一项在一幅图像中寻找与另一幅模板图像最匹配(相似)部分的技术.它是怎么实现的?我们需要2幅图像:
2017-11-15 09:57:08 2274 1
转载 QT循环队列实时处理数据(二)
上一篇多线程介绍的是,QT多线程处理机制,这篇,将对接收数据,实时处理进行分析。 QT通过socket通信,从接收缓冲区中读取数据,交给线程进行处理,那么问题来了,如果线程还没有处理完数据,则线程就没有办法继续从缓冲区中取数,那么当数据量过大的时候,缓冲区会满,继而被覆盖,从而造成数据的丢失。那么如何将数据存储在某个特定的空间内,并且让其他线程进行读取。这个是线程通信的问题
2017-11-10 19:41:28 4741 1
转载 Qt中QString和int,char等相互转换
网上找了半天,全是QString转int和char等的,就没有int转QString的,但是还是找到啦,我来整合一下哦~Qt中 int ,float ,double转换为QString有两种方法1.使用QString::number();如:[cpp] view plain copy
2017-11-10 15:04:43 3585
转载 qRegisterMetaType的使用
如果是自己定义的类型如果想使用signal/slot来传递的话,则没有这么简单。直接使用的话,会产生下面这种错误:QObject::connect: Cannot queue arguments of type 'TextAndNumber' (Make sure 'TextAndNumber' is registed using qRegisterMetaType().) 原因:当
2017-11-10 15:02:18 1373
转载 参数传递之指针传递
(1)基础知识C课本上的一个程序:void swap(int *p1,int *p2){ int t=*p1; *p1=*p2; *p2=t;}void main(){ int a=1,b=2; swap(&a,&b); ...}a,b的值交换了是因为a,b的地址被传递给了函数swap,使得p1=&a,
2017-11-10 15:01:45 252
转载 查看opencv3.0的开源代码
为什么要配置opencv_contrib?opencv3.0版本 功能更加模块块,一些功能模块不够完善,等足够完善在merge到主分支中,而我们图像识别中要用到的SIFT等算法被封装在xfeacture模块并且不在主分支,所以要用的时候需要编译它 [ opencv_contrib-github地址 ]https://github.com/opencv/opencv_contrib
2017-11-09 13:58:26 1180
转载 查看opencv源码
本系列文章由@浅墨_毛星云 出品,转载请注明出处。 文章链接: http://blog.csdn.net/poem_qianmo/article/details/21974023作者:毛星云(浅墨) 邮箱: happylifemxy@163.com 写作当前博文时配套使用的OpenCV版本: 2.4.8
2017-11-09 13:36:48 7890
转载 Cmake编译OpenCV3.1源码
深度学习作为今年来一个新兴的研究方向,如今真的是不要太火;而OpenCV作为一个久负盛名的开源视觉处理库,也一直被用在卷积神经网络的开源工具——caffe中,用来处理图像。而OpenCV再进入3.0时代以后,也顺应民意加入了DNN模块,能够与caffe无缝对接!1、要想在OpenCV中运行dnn,首先得编译OpenCV3以上版本的源码,因为dnn模块封装在OpenCV的contrib库中,
2017-11-09 13:33:58 2479
转载 Opencv3.0中Mat与IplImage的转换
Opencv3.0中Mat与IplImage的转换最近做图像,使用了Opencv3.0。因为涉及了蛋疼的混合编程,所以Mat 和 IplImage的转换是必不可少的。让人无语的是从网上查的IplImage转Mat的方法根本不能用。于是我不得不扒了一下Opencv3.0的原文档,上面这么说:Partial yet very common cases of th
2017-11-09 09:43:59 310
转载 QObject::connect: Cannot queue arguments of type "xxx",(Make sure "xxx" is registed using qRegisterM
在线程中通过信号和槽函数传递信息的时候,由于用到了自己定义的参数结构:QHashint , pMsg>,于是在发生信号传递的时候出现了报错:QObject::connect: Cannot queue arguments of type "QHashint , pMsg>",(Make sure "QHashint ,pMsg>" is registed using qRegist
2017-11-08 15:57:09 1111
转载 QMutexLocker作用范围
QMutexLocker用来简化互斥量的锁定和解锁操作。在复杂函数或者异常处理代码中互斥量的锁定和解锁容易出错和难以调试。QMutexLocker就可以应用于这些情况,确保互斥量状态总是定义明确。应该在程序中QMutex需要被锁定处创建QMutexLocker。当QMutexLocker被创建后,互斥量就锁定了。你可以使用unlock()和relock()来解锁和再次锁定互斥量。如果互
2017-11-08 13:14:13 2479 1
转载 Qt中Debug设置断点无效
今天刚装好了QT,我迫不亟待的先打开一个例子工程,编译(QT里面好像是叫构建),运行,嘿,效果出来了。然后我想调试一下程序,就在源代码中打了几个断点(QT中打断点和VS2012是一样的,都是按F9),然后点击调试,突然弹出了一个提示对话框然后,上网查了一下,原因找到了,就是在项目设置的时候,选择了影子构建,最后生成文件和工程不在同一目录下这时只需要打
2017-11-06 20:49:28 6776 1
转载 Qt string与QString之间的转换
string str;QString qstr;//从QString 到 std::stringstr = qstr.toStdString();//从std::string 到QStringqstr = QString::fromStdString(str);---------------------------------------------------
2017-11-06 13:18:00 698
转载 VS2015 + Qt5.7 环境搭建
之前介绍过 Qt5.x 的环境搭建,5.7 开始支持 VS2015,为了使用新的开发环境(典型的强迫症),不得不再次进行 Qt5.7 + VS2015 的环境搭建。除了之前介绍的搭建细节之外,其实中间有很多需要注意的部分。下面,主要分享搭建过程以及其中需要注意的一些事项。注意:安装 VS2015 时,切记勾选“Visual C++”选项。安装 Qt5.7进入官网下载 Qt5.7,我...
2017-11-06 08:46:25 8781 3
原创 Visual Studio 2015专业版安装激活图文教程
一、下载安装镜像下载地址:http://msdn.itellyou.cn/ (微软的东东在这里下方便快速) 本人下载的是专业版。二、安装 Windows 8.1系统双击下载好的ISO文件会自动虚拟光驱。 双击运行文件。 想体验新版的更多功能,这里选择【自定义】,点击【下一步】。 选择【全选】,点击【下一步】。 ...
2017-11-06 08:41:35 36750 1
转载 halcon在VS2015中的配置
VS2010 C++ + halcon 11 1. 在[项目属性]->[配置属性]->[C/C++]->[常规]->[附加包含目录]中添加包含路径:$(HALCONROOT)\include;$(HALCONROOT)\include\halconcpp;如果使用的halcon版本是10.0以前的,则这里的路径应为$(HALCONROOT)\include;$(HALCONROOT
2017-11-06 08:37:58 5321
原创 Qt + VS显示无法打开xx文件
在工程中右键点击属性-配置属性-VC++目录-包含目录-选择自己安装的qt路径下的头文件包含进去即可,烦人的下杠红线也随之消失。
2017-11-06 08:18:23 5861
转载 用matlab实现一维信号的高斯滤波
1.从正态分布说起高斯滤波使用的是高斯函数,即我们熟悉的正态分布的概率密度函数: f(x)=1σ2π−−√exp(−(x−μ)22σ2)我们生成的高斯模板就是从这个公式来的。例如要生成一个大小为3,标准差为1的模板,则只需要代公式计算(此处均值μ为0,不为0将其平移即可):f(−1) 、f(0)、f(1)就可以得到模板的值了。2.高斯滤波是如何实现的?
2017-11-06 08:15:25 13361 5
原创 Qt线程与线程池实现对比(QThread QThreadPool)
经过四处查询,在理解了微软底层线程与线程池(转载的文章中有介绍)的基础上,终于弄明白了在Qt中的实现过程,现将代码记录如下:#include #include #include #include #include extern double t1=(double)clockint main(int argc, char *argv[]){ QCor
2017-11-05 20:58:06 3866
转载 Qt中的线程池
总结一下最近使用qt多线程和线程池遇到的一些问题。文章1: 简述QRunnable 是所有 runnable 对象的基类,而 QThreadPool 类用于管理 QThreads 集合。QRunnable 类是一个接口,用于表示一个任务或要执行的代码,需要重新实现 run() 函数。QThreadPool 管理和循环使用单独的 QThread 对象,以帮助程序减少创建线程的...
2017-11-05 16:47:38 11596 5
转载 线程池是什么?线程池的作用?
为了更好的理解,首先来看一篇JAVA中的线程池介绍:一、简介线程池类为 java.util.concurrent.ThreadPoolExecutor,常用构造方法为:ThreadPoolExecutor(int corePoolSize, int maximumPoolSize,long keepAliveTime, TimeUnit unit,BlockingQ
2017-11-05 00:18:56 14843 1
转载 new对象时,类名后加括号与不加括号的区别
【1】默认构造函数 关于默认构造函数,请参见随笔《类中函数》 请看测试代码: 1 #include 2 using namespace std; 3 4 // 空类 5 class empty 6 { 7 }; 8 9 // 一个默认构造函数,一个自定义构造函数10 class Base11 {12 public:13 Base
2017-11-03 08:15:16 617
转载 QObject::connect: Cannot queue arguments of type 'string'
信号槽传递非Qt库类型参数时,出现QObject::connect: Cannot queue arguments of type 'string'(Make sure 'string' is regi...例如以C++标准库中string做参数,则会出现:QObject::connect: Cannot queue arguments of type 'string'
2017-11-02 17:17:46 1691
转载 Qt环境搭建(Qt Creator)
简述上一节中介绍了如何进行Qt和Visual Studio的下载安装,随后演示了如何将Qt集成到Visual Studio中,并完成了我们第一个Qt小程序-Hello World。下面主要讲解如何利用Qt Creator来编写Qt程序。简述Hello World配置环境下载Windows Debugging配置调试器Hello W
2017-11-02 14:36:33 233
转载 Qt5.7 + VS2015 环境搭建
简述之前介绍过 Qt5.x 的环境搭建,5.7 开始支持 VS2015,为了使用新的开发环境(典型的强迫症),不得不再次进行 Qt5.7 + VS2015 的环境搭建。除了之前介绍的搭建细节之外,其实中间有很多需要注意的部分。下面,主要分享搭建过程以及其中需要注意的一些事项。简述安装 VS2015安装 Qt57配置 Qt Creator配
2017-11-02 14:33:17 217
原创 Qt中配置Opencv
建立Qt工程我们就简单点,建立个Widgets工程吧最重要的是修改pro文件,这里的pro文件就是工程的属性配置,经过qmake之后会生成make文件.实在是比VS系列慢慢点鼠标地弄配置表方便多了.学习一下pro文件的写法或者你直接去学习cmake的写法还是很有意义的.但是这里看不懂也没关系,直接在你自动生成的pro文件里加上这两段就行INCLUDEPATH +
2017-11-02 09:33:47 534
转载 C++ 中override的作用
描述:override保留字表示当前函数重写了基类的虚函数。目的:1.在函数比较多的情况下可以提示读者某个函数重写了基类虚函数(表示这个虚函数是从基类继承,不是派生类自己定义的);2.强制编译器检查某个函数是否重写基类虚函数,如果没有则报错。用法:在类的成员函数参数列表后面添加该关键字既可。例子:class Base {virtual void f();};
2017-11-01 20:08:43 59682 5
转载 qt中connect参数(Qt::DirectConnection,Qt::QueuedConnection)
connect用于连接qt的信号和槽,在qt编程过程中不可或缺。它其实有第五个参数,只是一般使用默认值,在满足某些特殊需求的时候可能需要手动设置。Qt::AutoConnection: 默认值,使用这个值则连接类型会在信号发送时决定。如果接收者和发送者在同一个线程,则自动使用Qt::DirectConnection类型。如果接收者和发送者不在一个线程,则自动使用Qt::QueuedConn
2017-11-01 19:32:35 7210
转载 C++中计算程序运行时间
说明:1)头文件ctime里面提供了一个函数: clock_t clock(); 该函数返回的是从程序开始运行到调用clock函数时所打的点数,即clock tick(时钟打点);2)有一个常数CLK_TCK,是机器时钟每秒所走的时钟打点数,是这样定义 的,#define CLK_TCK CLOCKS_PER_SEC # define CLOCKS_
2017-11-01 17:20:41 873
qt加载地图.zip
2020-04-24
Vgg16的notop权重
2019-02-21
bwtraceboundary的OPENCV版,诚心求教!
2016-03-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人