自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(97)
  • 资源 (13)
  • 收藏
  • 关注

原创 什么是图形学

介绍什么是计算机图形学

2022-11-25 15:47:53 462 1

原创 libMagick++-7.a(Magick___lib_libMagick___7_Q16HDRI_la-Blob.o): relocation R_X86_64_32S against `vtab

libMagick++-7.a(Magick___lib_libMagick___7_Q16HDRI_la-Blob.o): relocation R_X86_64_32S against `vtable for Magick::Blob' can not be used when making a shared object; recompile with -fPIC在进行编译的

2016-10-11 22:19:01 1869

原创 install from unix source with magick

install from unix source with magick1. 在对应的网站上下载ImageMagick.tar.gz文件,网站可参考:www.imagemagick.org2. unpack the distribution with this command:   tar xvzf ImageMagick.tar.gz   3. Next co

2016-10-10 20:12:24 535

原创 读取gif二进制内容用magick++来解析

读取gif二进制内容用magick++来解析详细的实现见如下代码: std::vector buf; //这个存储了当前gif图片的内容信息 char* blobData = new char[buf.size()]; for ( int i = 0; i < buf.size(); i++ ) blobData[i] = buf[i]; size_t blobLen = b

2016-10-10 19:58:52 1896

原创 Caffe make runtest something wrong with flag 'flagfile' in file 'XXXXXXXXX/gflags.cc'

在编译caffe过程中在最后make runtest有时会出现如下错误ERROR: something wrong with flag 'flagfile' in file 'XXXX/gflags-master/src/gflags.cc'. One possibility: file 'XXXX/gflags-master/src/gflags.cc' is being linked b

2016-07-27 09:39:04 4791

转载 Caffe 环境搭建中应注意的问题

和TensorFlow对应的是Theano,Torch; Caffe专精于图像处理,Caffe方便,更快入门上手; 在通用的DL task上,Caffe不如Theano。 CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)开发环境搭建:一、没有GPUlearning@learning-virtual-machine:~$ lspci | grep

2016-07-26 21:06:07 24250

原创 opencv中Mat类型转换 ConvertTo

在使用Opencv中,常常会出现读取一个图片内容后要把图片内容的像素信息转为浮点并把当前的mat作为矩形进行矩阵计算,那么这里就有一个类型转换问你,在新的opencv中mat有一个函数可以用于类型的相互转换ConvertTooclMat::convertTo(oclMat& m, int rtype, double alpha=1, double beta=0)m:转为目标数据类型

2016-04-20 21:23:53 34041

原创 Opencv drawContours函数用于绘制和填充

在opencv中当我们使用一些基于连通域或者基于边沿信息的时候,往往会对contour进行处理除了利用findContours函数寻找连通域之外,也需要对连通域进行填充等操作这里介绍下drawContours函数,自己也是不断摸索和查阅了opencv相关手册drawContours    在图像中绘制外部和内部的轮廓。drawContours(InputOutputArray image,

2016-04-20 21:14:05 17392

原创 关于Opencv图像的转换(YUV420sp)

这里先举一个例子,把Opencv中的图像数据存储到一个void *data数据中struct IMAGE_DATA void *data; //图像数据 int rows; //图像高 int cols; //图像宽 int channels; //图像通道数};bool OpencvMat2data(cv::Mat &o

2016-03-14 20:51:57 6172 1

原创 linux下编写shell获取指定目录下的文件名

#!/bin/sh #============ get the file name ===========# FolderPath="/home/data" for fileName in ${FolderPath}/*; do tempFile=`basename $fileName` echo $tempFile done #==========

2016-03-02 15:07:58 3483

转载 C++ code 读取某给定路径下的当前文件夹名

#include #include #include void getJustCurrentDir( string path, vector& files) { //文件句柄 long hFile = 0; //文件信息 struct _finddata_t fileinfo; string p; if((hFile = _find

2016-03-01 19:25:54 916

原创 关于Magick++ 在readImage过程中异常抛出检测 Magick::readImage return exception

在调用Magick的函数readImage有时候由于图片文件本身的问题,会使得readImage的时候报错,这时候需要检测这个异常的错误,利用C++自身的异常检测问题我们可以采用如下代码来实现:vector image_list;image_list.clear();std::string strGifName //图片文件路径;try{ Magick::readImages(

2016-03-01 19:24:32 1665

原创 ImageMagick++格式转化为Opencv的Mat格式

在图像处理领域opencv是我们常用的,ImageMagick也是使用的图像处理软件之一,在这里面有时候常常有内部结构的相互转换,这里先贴出一个image++中的Magick::Image格式转为Opencv中的Mat格式int magick2IplImage(Magick::Image magickImage,cv::Mat &imgMat){ //get width height i

2016-02-29 19:43:03 1254

原创 关于编程中遇到inf的情况

在进行编程的过程中我们常常会由于没有对分母是否为0进行判断,从而造成结果值为inf或-inf,对这个问题,从根本上杜绝的话就是在做除法的时候对分母进行是否为0的判断,若后续需要对一个数是否为inf或-inf作判断的话,我们可以采用如下方法来做一、利用C++中的numeric_limits来实现在C++的头文件#include 中,有各个类型的最值。如int 对应的最大最小值:std:

2016-02-29 19:36:36 15817

转载 rm删除破折号开头的文件或目录

rm删除(清除)一个或多个文件 -f 选项将强制删除文件,即使这个文件是只读的.并且可以用来避免用户输入(在非交互脚本中使用).经常会遇到文件名开头为特殊符号的文件后目录,如.mk  @等,可以直接rm -rf 删除,或是添加转意字符”\”即可。今天碰到这样一个情况……rm将无法删除以破折号开头的文件.rm -slow_query_130103.txt.gzrm: inva

2016-01-28 12:07:47 1671

转载 ProtoBuf 常用序列化/反序列化API

1、C数组的序列化和反序列化API//C数组的序列化和序列化API bool ParseFromArray(const void* data, int size); bool SerializeToArray(void* data, int size) const; //使用 void set_people() { wp.set_nam

2016-01-27 17:24:29 2009

原创 RGB转YUV并获取各通道的值

在做图像中,常常会有图像格式转换的问题,比如RGB转YUV这时可以利用哦该opencv里面的函数来实现颜色格式的转换以及各通道的提取,上代码://inImage为输入的RGB图像 cv::Mat imageY(inImage.rows,inImage.cols,1); cv::Mat imageU(inImage.rows,inImage.cols,1); cv::Mat ima

2016-01-25 18:28:43 4598

原创 获取文件大小并读取文件内容(应用在protobuf文件解析上)

在实际应用中常常需要获取文件的大小,并根据得到的文件大小分配相应的内存给变量,然后把文件的所有内容放入到分配好的变量里面,不多说了,上代码自己看哈 FILE * pFile; int nsize; pFile = fopen ("file_temp","rb"); if (pFile==NULL) { cout <<"open error"<<endl; return -1

2016-01-19 10:56:27 1840

转载 C++ 智能指针详解

C++ 智能指针详解 一、简介由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete。程序员忘记 delete,流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不罕见。用智能指针便可以有效缓解这类问题,本文主要讲解参见的智能指针的用法。包括:std::auto_ptr、boost::scoped_p

2016-01-18 11:11:54 1028

原创 converting to execution character set: Invalid or incomplete multibyte or wide character

在linux下编译源码的过程中往往会遇到这个错误:converting to execution character set: Invalid or incomplete multibyte or wide character这说明当前*.c或*.cpp文件里面有GBK编码格式,这时需要把当前的c或cpp转为linux所熟悉的utf-8格式,可以考虑采用如下两种方法来实现:

2016-01-13 21:21:51 8303

原创 安装protobuf

这里我们采用的版本是protobuf-2.6.1.tar.gz,也可以根据需要到网站https://github.com/google/protobuf下载最新的protobuf源码编译(1) 把protobuf-2.6.1.tar.gz拷贝到相应的目录下并解压:tar zxvf protobuf-2.6.1.tar.gz (2) 进入当前解压后的protobuf目录 

2016-01-13 15:40:18 829

转载 如何更改linux文件的拥有者及用户组(chown和chgrp)

一、基本知识  在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,当然root用户可以修改任何文件的拥有者及用户组。在Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另一部分是其他用户所拥有的权限。对于文件的权限请参考《Linux的chmod命令》

2016-01-12 19:52:33 709

原创 批处理:如何逐行读取txt中每行的信息并显示

在实际的应用过程中,常常会在windows下批量的运行exe的一些可执行程序这时候可以采用一些批处理来完成如下所示:@echo off & setlocal EnableDelayedExpansionset j=0for /f "delims=""" %%i in (charlist_all_22.txt) do (set /lineStr j+=1set con!j!=%%ica

2016-01-06 20:45:23 14811

转载 linux中报错:undefined reference to

出现这种错误一般是如下情况:1. Linux Develop Notes    * 编译 c++ 程序需要添加 -lstdc++   sample: gcc -lstdc++ -o test test.c,否则会报 "undefinedreference to '__gxx_personality_v0' " 错误2. 用gcc命令编译C程序,用g++命令编译C++程序

2015-12-15 21:02:09 1361

原创 windows下利用线程池完成多任务的分配和运行

在做项目的过程中有时候为了提升效率,用了多线程的方法来对任务进行分割和应用,后来发现,采用线程池的方法能更好的利用线程资源来计算任务,网上有很多关于如何运行线程池的例子,msdn上也给出了对应的例子:https://msdn.microsoft.com/en-us/library/windows/desktop/ms686980(v=vs.85).aspx感兴趣的话大家可以去看看,这里我给出一

2015-12-04 19:00:48 1499

转载 protobuf 中的嵌套消息的使用 主要对set_allocated_和mutable_的使用

protobuf的简单的使用,不过还留下了一个问题,那就是之前主要介绍的都是对简单数据的赋值,简单数据直接采用set_xx()即可,但是如果不是简单变量而是自定义的复合类型变量,就没有简单的set函数调用了,下面看一个简单的例子。在网络游戏中,游戏玩家之间的同步是一个最基本的功能,而同步是通过对坐标的广播进行的,因此我们假设一个简单的模型,当一个玩家的位置发生变化时,将玩家的新位置发给地图

2015-11-30 20:27:04 12294

转载 C++ vector多维数组初始化及清零

vector常用方法assign() 对Vector中的元素赋值void assign( input_iterator start, input_iterator end ); //void assign( size_type num, const TYPE &val );reserve() 设置Vector最小的元素容纳数量 函数为当前vector预留至少共容

2015-11-24 20:40:24 51233

转载 opencv 中的浅拷贝和深拷贝

(1)浅拷贝:  Mat B;  B = image  // 第一种方式  Mat C(image); // 第二种方式这两种方式称为浅copy,是由于它们有不同的矩阵头,但是它们共享内存空间,即指向一个矩阵。当图像矩阵发生变化时,两者相关联,都会变化。(2)深拷贝Mat B,C;  B = image.clone();       // 第

2015-11-24 20:39:14 4895

转载 C++中的全局namespace

我们应该知道传统的C++只有一个全局的namespace,但是由于现在的程序的规模越来越大,程序的分工越来越细,全局作用域变得越来越拥挤,每个人都可能使用相同的名字来实现不同的库,于是程序员在合并程序的时候就会可能出现名字的冲突。namespace引入了复杂性,解决了这个问题。namespace允许像类,对象,函数聚集在一个名字下。本质上讲namespace是对全局作用域的细分。我想大

2015-11-23 09:47:20 2711

转载 OpenCV_连通区域分析(Connected Component Analysis/Labeling)

【摘要】本文主要介绍在CVPR和图像处理领域中较为常用的一种图像区域(Blob)提取的方法——连通性分析法(连通区域标记法)。文中介绍了两种常见的连通性分析的算法:1)Two-pass;2)Seed-Filling种子填充,并给出了两个算法的基于OpenCV的C++实现代码。一、连通区域分析连通区域(Connected Component

2015-11-20 09:57:27 1455

转载 开源点评:Protocol Buffers介绍

内容来自:http://blog.csdn.net/program_think/article/details/4229773今天来介绍一下“Protocol Buffers”(以下简称protobuf)这个玩意儿。本来俺在构思“生产者/消费者模式 ”系列的下一个帖子:关于生产者和消费者之间的数据传输格式。由于里面扯到了protobuf,想想干脆单独开一个帖子算了。  ★proto

2015-11-16 21:14:21 744

转载 windows上安装protobuf

protobuf的全称是Protocol Buffer,它是google 的一种数据交换的格式,可用于用于分布式应用之间的数据通信或者异构环境下的数据交换,    最近因为项目的需求,需要接触Protobuf,在官方提供的压缩包中,提供了Linux下的编译脚本,但是,由于项目在windows下开发,因此,需要在Windows编译和安装Protobuf,结合自己的探索,希望能够帮助到初次接触

2015-11-16 21:08:31 16741 1

转载 ZBar在Windows上的使用

ZBar在Windows上的使用下载ZBar v0.10 http://zbar.sourceforge.net/ 外网无法进入的话,在此下载http://download.csdn.net/detail/sunflower_boy/9175433 1.1 默认安装 注意勾选上Development Headers and Libraries  安装完成后可在ZBar安

2015-11-13 19:41:29 7994 1

原创 opencvc3.0_alpha opencvc3.0_beta opencv3.0_rc版本说明

opencvc3.0发布了,但是在发布的过程汇总有些版本,可能需要了解下:opencv3.0_alpha版:是内部测试版,一般不向外部发布,会有很多Bug.一般只有测试人员使用。opencv3.0_beta:也是测试版,这个阶段的版本会一直加入新的功能。在Alpha版之后推出。opencv3.0_rc: rc(release candidate) 用在软件上就是候选版本

2015-11-10 18:44:07 1464

转载 #pragma分析

在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。 其格式一般为: #Pragma Para 其中Para 为参数,下面来看一

2015-11-02 21:06:01 628

转载 opencv 漫水填充函数 floodFill 说明

在OpenCV中,漫水填充算法由floodFill函数实现,其作用是用我们指定的颜色从种子点开始填充一个连接域。连通性由像素值的接近程度来衡量。OpenCV2.X有两个C++重写版本的floodFill。第一个floodFill函数:int floodFill(InputOutputArray image, Point seedPoint, Scalar newVal, Rect*

2015-11-02 19:44:45 6250

转载 图像的几何不变矩

矩特征主要表征了图像区域的几何特征,又称为几何矩, 由于其具有旋转、平移、尺度等特性的不变特征,所以又称其为不变矩。在图像处理中,几何不变矩可以作为一个重要的特征来表示物体,可以据此特征来对图像进行分类等操作。       1.  HU矩 几何矩是由Hu(Visual pattern recognition by moment invariants)在1962年提出的,图像f(x,y)

2015-10-29 20:48:52 2394

转载 图像的矩

图像的矩一幅图像的矩,是通过一定的公式计算出来的。明白这个公式背后的原理,对于初学者来说,有一定的困难。这里,对图像的矩进行讲解。(1)数学公式在纯数学理论上,关于某一个点的第n阶矩,定义为: 在这个定义中,函数里只有一个独立变量。而,图像是二维的,所以,需要2个独立变量。那么公式变成: 这里,f(x,y)是一幅图像,并且,其值是连续的。但,在实际应用中

2015-10-29 17:34:02 1393

转载 OpenCV滤波之copyMakeBorder和borderInterpolate

在OpenCV滤波算法中,有两个非常重要的基本工具函数,copyMakeBorder和borderInterpolatecopyMakeBorder函数原型void copyMakeBorder( const Mat& src, Mat& dst,int top, int bottom, int left, int right,int borderTyp

2015-10-21 14:30:21 1091

转载 线段相交

算法的步骤如下:1.快速排斥实验。设以线段P1P2为对角线的矩形为R,设以线段Q1Q2为对角线的矩形为T,如果R和T不相交,则两线段不相交。2.跨立实验。如果两线段相交,则两线段必然相互跨立对方。若P1P2跨立Q1Q2,则矢量(P1-Q1)和(P2-Q1)位于矢量(Q2-Q1)的两侧,即( P1 - Q1 ) × ( Q2 - Q1 ) * ( P2 - Q

2015-09-23 11:47:22 596

Stylized Neural Painting

好玩有趣的算法

2022-11-25

C++程序设计经典300例源代码

C++程序设计经典300例源代码 希望对大家学习c++有帮助

2018-10-22

Protobuf-master_VS.zip

Protobuf的VS工程,大家可根据自己需要下载编译,如何编译大家可以看我的博客

2015-11-16

模式识别--VC++技术实现

这里面对模式识别的基本概念,位图的基础知识,分类器设计,模板匹配分类器,基于概率统计的Bayes分类器,几何分类器,神经网络分类器,图像分割与特征提取,聚类分析,模糊聚类分析,遗传算法聚类进行了相应的代码实现,从感性的角度来理解模式识别的过程,对于以后的理性认识有很大的帮助~!

2012-02-03

同态滤波 matlab程序

MATLAB code for beginners that performs Homomorphic filtering, Using Butterworth High Pass Filter for performing filtering.

2011-12-11

移动笔试题

深圳移动的笔试,主要是讲述关于笔试中出现的题目和内容,有智力方面的,也有推理方面的,让大家下载下来看看熟悉一下,呵呵

2011-12-11

关于计算机网络安全试题

关于计算机网络安全的相关笔试题目,内容比较详尽,有答案参考,希望对大家有帮助,有所了解。

2011-05-17

冈萨雷斯matlab-mfile

冈萨雷斯的经典之作数字图像处理,涵盖了里面的全部matlab代码~!

2011-05-17

linux启动流程分析

简单的介绍了关于linux下内核启动过程,能让大家对linux内核启动过程有一个清晰地了解

2010-10-01

APUE2源代码下载

APUE2用于生成个种操作系统下的apue.h的头文件,主要是为《Unix环境高级编程》写程序方便

2010-08-15

linux 常用c函数(中文版)精华

主要是对liunx下所使用的各个函数进行介绍,并有相关的说明很好用

2010-07-23

Bochs-2.4.5

Bochs是一款优秀的仿真软件,主要是对操作系统进行仿真和模拟

2010-06-22

fortran简明教程

这里面主要对fortran语言进行了简单的介绍,同时也对fortran语言的应用举了多个例子希望对学习fortran语言的人有用呵呵

2009-09-17

空空如也

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

TA关注的人

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