自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

转载 OpenCV中Mat属性step,size,step1,elemSize,elemSize1

step1(i):每一维元素的通道数step[i]:每一维元素的大小,单位字节size[i]:每一维元素的个数elemSize():每个元素大小,单位字节elemSize1():每个通道大小,单位字节...

2019-12-03 14:19:08 35

原创 Critical error detected c0000374

VS调试的时候出现的错误,查阅了网上一些资料,整理下面三种情况(归根到底都是内存访问错误,堆破坏)1、delete 两次float* dd=new float[2]; delete[] dd; delete[] dd;2、数组越界3、在DLL中使用std相关函数(如vector)...

2019-11-18 16:47:27 524 1

原创 LoadLibrary函数详细说明

将指定的模块加载到调用进程的地址空间中。指定的模块可能会导致其他模块被加载。对于其他加载选项,请使用 LoadLibraryEx函数。LoadLibrary是一个宏定义:def UNICODE#define LoadLibrary LoadLibraryW#else#define LoadLibrary LoadLibraryA#endif // !UNICODEHMO...

2019-06-26 14:50:48 10129

原创 Tensorflow工程实践: tensorflow1.8 + vs2017 + cmake 编译生成c++ 库包

因为要做工程化,所以最近用了一些时间来研究c++版本的tensorflow 当然官网没有提供现成的库包,只能自己根据原码编译。网上翻了一遍,发现资料很多 但都相对较为零散,这边记录一下自己编译库包(Release和Debug版本)的流程以及自己踩的坑。个人尝试了很多个版本,但相对只有1.8版本通过编译,1.10版本总有rpc相关错误(设置了OFF,任报错),在往上的高版本,cmake生成vs...

2019-05-26 23:46:12 1279 3

原创 ubuntu命令行下载Sublime text 并设置命令行打开文件

下载命令:进入命令行下载我的是mac所以进入命令行使用fn+ctrl+alt+F1, 如果你在图形端,可以直接ctrl+alt+T进入terminal,然后执行以下命令进行下载wget https://download.sublimetext.com/sublime_text_3_build_3126_x64.tar.bz2下载完成进行解压,执行tar -xvvf sublime_te...

2019-04-30 17:16:41 1114

转载 win10_64位下搭建TensorFlow-gpu版本

安装gpu版本首先是英伟达的显卡。需要用到的软件有:  1.python 3.6  2.Tensorflow 1.11  3.CUDA:cuda_8.0_win10.exe  4.cuDNN: cudnn-8.0-windows10-x64-v6.0.zip让我们开始吧~1.首先,下载cuda8.0版本以及cudnn6.0版本(cuda和cudnn的版本一定要对应)。...

2019-03-22 15:19:52 110

原创 修改npm模块安装路径

默认情况下,npm安装路径位置如下:C:\Users\wangyc\AppData\Roamingnpm:下载的具体模块文件npm-cache:npm的缓存文件通过cmd修改安装路径:npm config set prefix "D:\nodejs\node_global"npm config set cache "D:\nodejs\node-cache"直接修改npm...

2018-09-17 11:15:46 468

转载 C#-using用法详解

using 关键字有两个主要用途:  (一).作为指令,用于为命名空间创建别名或导入其他命名空间中定义的类型。  (二).作为语句,用于定义一个范围,在此范围的末尾将释放对象。using指令    ①允许在命名空间中使用类型,这样,您就不必在该命名空间中限定某个类型的使用:             using System.Text;             using PC.Company;  ...

2018-06-20 15:02:14 104

转载 解析IBM RTC在软件开发过程的应用实践

BM RTC 是一个软件协作交付环境,它包含了计划制定及管理,工作项集成管理,代码版本控制管理,以及构建管理等诸多功能,这些功能使得Jazz环境的协作能力非常强大。在RTC中,用户可以通过工作项对工作内容进行信息更新和任务分配,借助工作项和人员之间的联系方便地进行信息的交流和展示,并可以从不同的层面和角度了解整个Team的工作进行情况。  这份文档描述了RTC应用于软件开发活动的通用模式,并介绍了...

2018-06-06 10:10:19 909

原创 使用winrar完成程序打包

1 前言我们用VS或其它编程工具生成了可执行 exe要运行它必须要保证其目录下有一大堆dll库文件,看起来很不爽,用专业的安装程序生成软件又显得繁琐, 下面这个方法教你如何快速把exe文件和dll文件打包成一个可执行文件,就像我们平时看到的单一绿色软件一样,只要双击它就能运行你的程序,简单,方便,而且只需用最常见的色软件一样,只要双击它,就能运行你的程序,简单,方便,而且只需用最常见的 winra...

2018-04-26 09:56:14 1509

原创 Qt:樱花飞舞效果

应女友要求,使用Qt做了一个在电脑桌面樱花飞舞的小程序。这里面用到了Qt动画效果QPropertyAnimation类来控制飞舞效果。使用label加载樱花图案。大概的核心代码如下:Widget::Widget(QWidget *parent) : QWidget(parent), timer(new QTimer(this)), pixmap(new QPixmap(":...

2018-04-25 20:13:09 597

转载 URL中“#” “?” &“号的作用

1.#    10年9月,twitter改版。一个显著变化,就是URL加入了"#!"符号。比如,改版前的用户主页网址为http://twitter.com/username改版后,就变成了http://twitter.com/#!/username  这是主流网站第一次将"#"大规模用于重要URL中。这表明井号(Hash)的作用正在被重新认识。本文根据HttpWatch的文章,整理与井号有关的所有...

2018-04-20 20:20:46 413

原创 使用winpe备份原始操作系统的环境变量到本地

电脑系统奔溃,需要重装系统,这时候想起来想要备份一份环境变量,到时候方便在重装的系统上进行配置。经过查资料,完成这件事需要注册表的帮助,大概如下:一、准备一个winpe      本人使用的老毛桃pe,启动直接开启注册表,这时候注册表显示的变量是pe的变量。显然不是我们需要的,下面步骤将指导如何找到原系统的变量二、保存系统环境变量    系统变量在注册表的位置是:HKEY_LOCAL_MACHIN...

2018-03-14 15:40:06 714

转载 python:urlparse学习

  urlparse模块主要是把url拆分为6部分,并返回元组。并且可以把拆分后的部分再组成一个url。主要有函数有urljoin、urlsplit、urlunsplit、urlparse等。 urlparse.urlparse(urlstring[, scheme[, allow_fragments]])    将urlstring解析成6个部分,它从urlstring中取得URL,并返回元组 ...

2018-03-08 21:25:17 146

原创 python:加水印小应用程序的实现

在学习啦一段时间python之后,尝试着使用Python做一些图像处理方面的内容,这里编写了一个简单的加水印的小程序。主要用到了Python中自带的Tkinter标准GUI库和pillow图像处理库    这两个库的学习本人主要是看相关的文档,最后面中会附有链接。功能很简单,实现的效果图如下:          加水印实现代码如下:#!/usr/bin/env python#

2018-01-15 13:46:27 1301 1

原创 OpenCV 、VTK for python 安装

     最近一直在学习python,之前实验室做图像图形处理的,在c++编程语言下会经常使用OpenCV、VTK这些好用的三方开源库。这些库包都提供了python接口,所以这里记录一下OpenCV 、VTK for python 的安装。安装方法有多种,这里我选择在用Anaconda开发套件来安装这两个库。这应该是最简单、也是最方便管理的方法。     Anaconda是一个用于科学计算的P...

2018-01-04 15:36:54 911

原创 Python: print 不换行打印

在python中使用print方法时,默认是换行打印的,如果我们不想换行打印呢?这样的,在python3.x之前,可以通过在print语句之后加逗号实现:for i in range(1, 5): print i, 输出结果:1 2 3 4在python3.x之后,可以在print()之中加end=""来解决,可以自定义结尾字符for j in r

2017-12-12 12:32:01 320

转载 c++模板编译模型

编译器只有在用到模板时,如调用了函数模板或调用了类模板的对象的时候,编译器才产生特定类型的模板实例。编译时,模板与普通函数、类的区别:普通函数,只需函数声明,声明与定义分离;类类型,类定义可用,但成员函数只需声明,成员函数声明与定义分离;模板,要进行实例化,必须包含函数模板或类模板成员函数的定义。标准 C++ 编译模板代码的两种模型:包含编译、分别编译

2017-10-12 08:57:13 197

转载 模板类成员函数的定义和声明为什么要放在一个文件中

通常情况下,你会在.h文件中声明函数和类,而将它们的定义放置在一个单独的.cpp文件中。但是在使用模板时,这种习惯性做法将变得不再有用,因为当实例化一个模板时,编译器必须看到模板确切的定义,而不仅仅是它的声明。因此,最好的办法就是将模板的声明和定义都放置在同一个.h文件中。这就是为什么所有的STL头文件都包含模板定义的原因。”[1]"标准要求编译器在实例化模板时必须在上下文中可以查看到其定

2017-09-11 15:38:43 412

转载 空域高斯滤波与频域高斯滤波

卷积定理函数空间域的卷积的傅里叶变换是函数傅里叶变换的乘积。对应地,频率域的卷积与空间域的乘积存在对应关系。即:由卷积定理可知所有频域的滤波理论上都可以转化为空域的卷积操作。给定频率域滤波器,可对其进行傅里叶逆变换得到对应的空域滤波器;滤波在频域更为直观,但空域适合使用更小的滤波模板以提高滤波速度。因为相同尺寸下,频域滤波器效率高于空域滤波器,故

2017-07-18 16:24:21 2097

原创 离散傅里叶变换

傅立叶原理表明:任何连续测量的时序或信号,都可以表示为不同频率的正弦波信号的无限叠加。而根据该原理创立的傅立叶变换算法利用直接测量到的原始信号,以累加方式来计算该信号中不同正弦波信号的频率、振幅和相位。      冈萨雷斯版里面的解释非常形象:一个恰当的比喻是将傅里叶变换比作一个玻璃棱镜。棱镜是可以将光分解为不同颜色的物理仪器,每个成分的颜色由波长(或频率)来决定。傅里叶变换可以看

2017-07-13 23:01:03 707

转载 python:代码缩进

这两天python-cn邮件列表有一条thread发展的特别长,题目是《python的代码缩进真是坑爹》(地址),楼主在一台电脑上用KOMODO写的代码到另一台电脑上就不能运行了,调试后才发现是代码缩进的问题,为此楼主表示“真是火大”!而之后的回复,可想而知,批判楼主、教育楼主、鄙视楼主等的人绝不是少数(毕竟是python邮件列表,都是python开发者、爱好者嘛)。要求严格的代码缩进是p

2017-07-10 15:08:45 354

原创 Qt:QDockWidget和QScrollArea背景色设置为透明

QDockWidget和QScrollArea下面只能通过setWidget添加中心部件,不可以使用布局,如何要向其内部添加多个小部件,需要使用一个QWidget内容部件widgetContent,在widgetContent通过布局来组织所有小部件。当要设置背景颜色透明度时候直接对QScrollArea部件设置是不起作用的,需要设置其内部的widgetContent部件 如下图:

2017-07-04 13:28:06 3190

原创 VRML基础语法

一、VRML是什么 VRML是虚拟现实造型语言 (VirtualReality Modeling Language) 的简称。二、VRML文件的组成部分和文件头 VRML文本的文件名后缀是 .wrl,这是一种ASCII文本文件。VRML文件可以包括四个主要成分: VRML文件头 原型 造型和脚本 路由 每个文件都有一个文 件头,VRML1.0的文

2017-06-29 10:23:09 4714

原创 Doxygen:安装与使用

本篇博客记录一些从网上收缴来的资源。包括配置过安装程,以及Doxygen文档注释的一些写法。最后详细讲解一个将生成的静态网页托管到github上的过程。      一、 配置安装过程见以下文章::                         用doxygen+graphviz自动化生成代码文档      二、常见的Doxygen命令:          文档

2017-06-17 22:26:06 607

原创 Qt:Qt导出Excel表格

借鉴参考文献中的内容,并将其封装成一个ExcelExporter类,除了实现一些基本的写数据的功能,还增加了设置单元格样式、合并单元格的功能。在Qt中使用QAxObject类访问Com组件对象,需要在pro文件中添加下面的内容:QT +=axcontainer核心代码:  /*! *新建一个excel表格 */bool ExcelExporter::newExcel(

2017-06-17 10:51:55 993

原创 QtIFW:制作程序安装包

程序发布方式一般有两种:(1)静态编译发布。这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中。其优势是简单单一,所有的依赖库都集中在一起,其缺点也很明显,可执行程序体量较大。(2)制作安装包发布。这种方式的原理也简单,就是将可执行程序和其依赖的库文件一起打包压缩,制作成安装包发布。用来制作安装包的工具有很多,本文讲解有Qt官方提供的一个程序安装框架:Qt installer

2017-06-13 22:32:45 5564 1

原创 VTK: 相机参数控制

用户是通过相机来观察三位场景中的物体,精准控制相机来实现用户从不同角度、不同位置来观察三位物体。我们可以通过GetActiveCamera()函数来获取当前渲染器(vtkRenderer)中的默认相机。也可以通过SetActiveCamera()函数来设置一个新相机到渲染器中。 函数签名如下: // Description: // Specify the camera to use f

2017-06-08 20:14:59 812 1

原创 Qt:自定义窗口之窗口缩放

当我们隐藏了系统窗口后,无法完成对窗口的缩放,这里缩放方法通过重写一些鼠标事件来实现。具体代码如下:    头文件:#define PADDING 2class MainFrame : public QWidget{ Q_OBJECTpublic: MainFrame(QWidget *parent = 0); ~MainFrame();protecte

2017-06-08 12:54:40 1938

原创 VTK: vtkTubeFilter生成管道

vtkTubeFilter可以用来生成包围一条折线的管道。下面是一个vtkTubeFilter的使用例子。围绕一条线创建一个圆柱形管道。         #include #include #include #include #include #include #include #include #include #include #include #include

2017-06-07 16:38:32 1820 2

原创 VTK: 拾取方式的三种实现

拾取操作是可视化应用程序中常见的一种功能。拾取主要是用于选择数据和Actor或者获取底层的数据值。在显示位置(以像素为坐标值)中拾取时,就会调用vtkAbstractPicker的Pick()方法。依赖于所用的拾取类不同,拾取时返回的信息也不同,最简单的是返回一个x-y-z的全局坐标值,或者是单元(cell)的ID值,点的ID值,单元参数坐标(CellParametric Coordinate

2017-05-30 16:15:25 1682

转载 const的用法,特别是用在函数前面与后面的区别!

在普通的非 const成员函数中,this的类型是一个指向类类型的 const指针。可以改变this所指向的值,但不能改变 this所保存的地址。在 const成员函数中,this的类型是一个指向 const类类型对象的 const指针。既不能改变 this所指向的对象,也不能改变 this所保存的地址。 关键字:Const,Const函数,Const变量,函数后面的Const看到con

2017-05-24 10:19:03 262

原创 Qt:自定义标题栏(QMainWindow)

简述       通过qss自定义外观后,发现标题栏的外观未发生变化,与整体的风格不融洽。因为程序的最外层边框加载的是系统本地的窗口。为了使风格统一,我们可以自定义一个标题栏来显示窗体的图标、标题,以及控制窗体最小化、最大化、关闭的按钮,并控制其风格与主界面一致。       网上有很多Qt自定义标题栏的代码。这里分享一个我觉得较好的自定义标题栏。与其他代码不同,其把对主窗口的相关

2017-05-22 14:45:56 9701 2

原创 Qt:基于Qt样式表的一个界面皮肤设计

简述            使用Qt样式表可以非常方便的对界面外观进行设计,相关qss教程可以参考 Qt帮助文档里的Qt Style Sheets Examples。英文不好可以看一下参考文献一的讲解内容。本人在自己的程序里设计了一个黑色的皮肤。效果如下:             相关代码;        QWidget#frmLogin,QWidget#frmPopup,QWid

2017-05-19 17:20:29 5619 1

原创 VTK:多线条表示和渲染

在VTK中表示线条的数据集是vtkPolyLine. 将其添加到vtkPolyMapper,然后在添加到vtkActor中进行渲染就可以看到一个线条。但如果要表示多个线条,则一个vtkPolyLine是无法满足需求的。此时有两个思路来处理:   1)创建多个vtkPolyLine来表示线条。渲染过程,可以选择用多个vtkActor来分别渲染每一个vtkPolyLine。   2)使用vtk

2017-05-02 21:52:17 1392 1

原创 SGE:作业调度系统安装和使用简要说明

主要有三部分:安装:服务器端搭建,一般服务端只需要搭一次配置:服务端和节点,后续主要是新增节点才需配置使用:一般使用者可以忽略前两个,直接看使用说明安装 一些参考网站http://linoxide.com/ubuntu-how-to/setup-open-grid-engine-cluster-ubuntuhttp://www.yinqisen.cn/blog-

2017-04-25 15:12:14 6462

原创 VTK:测量类widget总结

本文主要简单介绍几个具体的和测量相关的widget: vtkAngleWidget(角度测量) 、vtkDistanceWidget(距离测量) 、vtkSplineWidget(样条部件)。 最后一个vtkSplineWidget是拟合样条的显示部件,本人把其当作曲线长度测量工具。由于其本身不能显示长度信息,所以对其进行了扩展,使其能够实时显示长度信息。

2017-04-17 20:54:08 2435

转载 c++:函数返回引用类型和非引用类型

函数的返回主要分为以下几种情况:1、主函数main的返回值:允许主函数main没有返回值就可结束;可将主函数main返回的值视为状态指示器,返回0表示程序运行成功,其他大部分返回值则表示失败。2、返回非引用类型:函数的返回值用于初始化在调用函数时创建的临时对象(temporary object),如果返回类型不是引用,在调用函数的地方会将函数返回值复制给临时对象。在

2017-04-11 11:24:32 664

原创 ffmpeg:一个简单的格式转换器

参考ffmpegAPI提供的例子实现了一个简单的封装格式转换器,在实际转换时候,需要考虑对h2264的两种封装格式分别是h264和avc1。AVC1 描述:H.264 bitstream without start codes.一般通过ffmpeg转码生成的视频,是不带起始码0×00000001的。H264 描述:H.264 bitstream with start codes.一般对

2017-04-09 00:29:06 806

原创 opencv:视频去黑暗(增强)

之前一篇博客写过一个关于图像去黑暗的算法(点击打开 图像去黑暗 ),它是一个去雾算法的延伸。最近学习了一些视频的基本知识,想把这个继续延伸到视频邻域。思路基本一样,先对视频解码为帧,然后在对每一帧图像进行去黑暗,最后在编码输出到文件夹。    1、使用opencv对视频编解码      正版视频编解码处理是使用ffmpeg处理完成,由于对ffmpeg掌握不熟悉,在对opencv进一步了解之

2017-04-04 21:05:31 1386 1

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