自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 C# 中chart 柱状图用法代码

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Win

2016-03-02 17:29:58 4564

原创 C语言循环创造文件

#includeint main(){char nameout[20];FILE *fout;int i,n=100;for (i=1;i<=n;i++){sprintf(nameout,"C:\\%d.txt",i);fout=fopen(nameout,"w");fprintf(fout,"%d",i);fclose(fout);}return 0;}

2014-09-05 17:44:37 1092

翻译 能检测出鼻子,眼睛,嘴巴的opencv程序

/*本程序函数讲解: //detectMultiScale函数中smallImg表示的是要检测的输入图像为smallImg,faces表示检测到的人脸目标序列,1.1表示 //每次图像尺寸减小的比例为1.1,2表示每一个目标至少要被检测到3次才算是真的目标(因为周围的像素和不同的窗口大 //小都可以检测到人脸),CV_HAAR_SCALE_IMAGE表示不是缩放分类器来检测,而是缩放图像,S

2013-12-09 17:49:35 2993 1

原创 Art&Science 摄像/照相/

头的焦距除了最直观的影响拍摄画面的视野宽度,还影响着近大远小的透视程度。上述的两要素都表现为反比关系,焦距越小视野越广阔、焦距越小透视愈被夸大。必须要补充说明的是,任何焦距的镜头在过于靠近被摄物时都会表现出变形,即前景夸大明显。

2013-10-27 17:50:15 382

原创 MATLAB计算后如何用envi读取图像?

MATLAB可以将图像转为为uint8类型,保存成tif格式,,然后用envi读取图像 BLU=uint8(blue)RED=uint8(red)GREEN=uint8(g)RGB=cat(3,RED,GREEN,BLU) %将三个波段组合成一新矩阵imwrite(RGB,'4.tif')% 保存成tif的图片

2013-07-25 17:58:10 1312 1

原创 MATLAB中图像的显示问题(imshow)

imshow(A),A要为double或uint8类型。,A为double型,则必须在[0,1]之间才能显示,若A为uint8型,则要在[0,255]才可以显示。可以参考若A为int16类型,首先A=double(A).min=min(min(A))max=max(max(A))B=[A-min]/(max-min) %转换为[0,1]之间imshow(B).也可以转换

2013-07-25 17:51:27 5317

原创 zynq嵌入式opencv移植

1.首先安装交叉编译工具链,安装完成后,交叉编译的命令是arm-xilinx-linux-gnueabi-gcc,将交叉编译命令导入路径内2.makefile的写法:input=red_detc.cppcompiler=arm-xilinx-linux-gnueabi-gcc#compiler=gccoption=-lstdc++nyk:    ${compiler

2013-06-15 21:37:11 1930

原创 随机数

rand()是从srand (seed)中指定的seed开始,返回一个[0,RAND_MAX(0x7fff)]间的随机整数,不设srand,默认seed为1,所以每次都相同。函数rand()是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。如果你在第一次调用rand()之前没有调用srand(),那么系统会为你自动调用srand()。而使用同种子相同的数调用 sran

2013-06-09 01:06:10 346

原创 WORD给图表排序号,给公式加号,参考文献

WORD给图表排序号:插入题注,新建标签,如图1-,这时后面会自动跟上1,2,3的给公式加号:首先加载MATTYPE到WORD里,然后再点left-numbered的插入方式设立一个新的样式,其中制表位第一个为17.15字符,居中,第二个为35字符,具有,打完公式和标号后,在公式前后各按一次TAB就可以了

2013-05-28 21:57:58 1219

原创 MFC构造内存DC显示图像

CDC dcMem; //用于缓冲作图的内存DC CBitmap bmp; //内存中承载临时图象的位图 dcMem.CreateCompatibleDC(dc); //依附窗口DC创建兼容内存DC,注意dc为程序的窗口dc ,不能使用内存dc如dcMem bmp.CreateCompatibleBitmap

2013-05-10 18:30:55 1430

转载 static作用域

C程序一直由下列部分组成:      1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令;      2)初始化数据段(数据段)——在程序中所有赋了初值的全局变量,存放在这里。      3)非初始化数据段(bss段)——在程序中没有初始化的全局变量;内核将此段初始化为0。       4)栈——增长方向:自顶向下增长;自动变量以

2013-05-09 00:06:01 1650

原创 全局变量与局部变量同名的后果!

int a;void main(){ int a=5; fft();}void fft(){printf("%d",a)}则a为0.在局部函数中定义了一个同名的变量,此时在MAIN中就会屏蔽掉全局变量,不会给全局的a赋值5.

2013-05-09 00:05:35 3568

转载 C语言中extern的用法

在C语言中,修饰符extern用在变量或者函数的声明前,用来说明“此变量/函数是在别处定义的,要在此处引用”。1. extern修饰变量的声明。举例来说,如果文件a.c需要引用b.c中变量int v,就可以在a.c中声明extern int v,然后就可以引用变量v。这里需要注意的是,被引用的变量v的链接属性必须是外链接(external)的,也就是说a.c要引用到v,不只是取决于在a.c

2013-05-07 23:01:06 470

原创 C语言编程中读取文件中的数据

int row,col;float c[100]={0}; FILE *fp;fp=fopen("a.txt","r");fscanf(fp, "%d", &row);fscanf(fp, "%d", &col);for(i=0;i<col*row;i++){fscanf(fp, "%f", &c[i]);}数据是每个中间隔一个空格,例如:3 30.5452 0.

2013-05-05 22:38:26 940

原创 C编程对程序计时

#include void main(){ time_t start_time; time_t end_time; time(&start_time); printf("start"); float b=100; float *a=&b; for(int j=0;j<100;j++) { float **Grad_n; Grad_n =new float*[256];

2013-04-30 00:42:20 649

原创 多个C与H文件编程

有多个C文件时,可以在一个H文件中进行函数声明,在相应名字的C文件中进行实现。#include:就是把XXXX.h中的内容原封不动的搬过来

2013-04-26 22:53:43 744

转载 图像FFTshift

对于一维函数:未平移前,FT的一个周期是沿原点对称分布的。讨论DFT,假设频率范围为[0,1,……,M-1,M],则DFT的频谱分布在原点0的两侧,左:[M/2,M/2-1,……,0],右侧[0,……,M/2-1,M/2]同样,将上述道理用于理解二维函数(比如图像数据):FT的中心位于频率矩形的中点——假设u,v为频率自变量,则在u方向的FT和沿v方向的FT是沿原点对称分布的,而原始图像的

2013-04-17 18:15:50 1526 1

原创 图像的二维傅里叶变换

1.二维傅里叶变换程序计算公式:(m--宽度方向,n--高度方向)2.图像傅里叶变换后的要点:1.变换之后的图像在原点平移之前四角是低频,最亮,平移之后中间部分是低频,最亮,亮度大说明低频的能量大(幅角比较大)。2.行N/2和列N/2将频域分成四块。对实部和幅度来说,右上角和左下角成镜像关系,左上角和右下角也是镜像关系;对虚部和相位来说,右上角和左下角成共轭关系,左上角和右下角也是

2013-04-15 17:12:56 3572

原创 MFC的调试代码

MFC的调试代码char p[10];itoa(i,p,10);//将i整数转换为字符串类型AfxMessageBox(CString(p),NULL,MB_OK);//调试信息将float类型输出CString mm;mm.Format ("%f",Grad2_n);AfxMessageBox(mm,NULL,MB_OK);

2013-04-09 18:26:20 452

原创 地址加1到底加多少?

指针做偏移操作的时候是根据指针的类型来做出移位判断,比如这个例子里面指针是整形,所以每次偏移的时候是按照整形的长度(4字节,32位)偏移,如果指针是char类型,则每次加1是加1个字节。指针自增每次增加的增加量=sizof(你所用的数据类型)比如char型指针 自增的话地址加1int型 一般都是4字节,所以自增会加4.

2013-04-08 16:07:06 3775

原创 二维数组的地址问题

如定义 int a[2][2]={1,2,3,4}则 a ,a[0]均为1的地址,两者是一样的,即矩阵的首地址,与a[0][0]的地址一样,a[1]为第二行的首地址。这个与new的不太一样。new的话, a为a[0]的地址,两个不会一样的。

2013-04-08 15:33:10 538

原创 MATLAB中gradient求数值梯度的命令

gradient()是求数值梯度函数的命令。[Fx,Fy]=gradient(x),其中Fx为其水平方向上的梯度,Fy为其垂直方向上的梯度,Fx的第一列元素为原矩阵第二列与第一列元素之差,Fx的第二列元素为原矩阵第三列与第一列元素之差除以2,以此类推:Fx(i,j)=(F(i,j+1)-F(i,j-1))/2。最后一列则为最后两列之差。同理,可以得到Fy。

2013-04-07 23:25:44 2384

原创 四舍五入取整,强制类型转换

floor:地板,向负无穷大取整,floor(2.5)=2.floor(-2.5)=-3;ceil:天花板 ,像正无穷大取整,ceil(2.5)=3强制类型转换,float b=-3.6    b=int(b);//b=-3,舍弃掉后面的小数超出范围的话要注意:如float c=257;c=unsigned char (c)//c=1,超出范围的话,将C作为超出范围的1如果

2013-04-07 18:49:45 1495

原创 二位数组中的指针初始化时的地址

unsigned char **Image_Array;Image_Array=(unsigned char**)malloc(sizeof(unsigned char *)*10);//分配指向uchar变量的指针,任何指针都只占4个字节if(Image_Array==NULL){return(-2);}for(int m=0;m<10;m++){Image_Array[m]=

2013-04-06 00:05:38 478

原创 new和malloc的区别

1、new 是c++中的操作符,new成功了返回分配空间的首地址,否则返回NULL,malloc是c 中的一个函数2、new 不止是分配内存,而且会调用类的构造函数,同理delete会调用类的析构函数,而malloc则只分配内存,不会进行初始化类成员的工作,同样free也不会调用析构函数3、内存泄漏对于malloc或者new都可以检查出来的,区别在于new可以指明是那个文件的那一行

2013-03-29 22:20:15 459

原创 二重指针分配矩阵内存并初始化

首先要明白的是:int **a ;  a为(指向int类型的指针)的指针METHOD 1:先分配内存malloc1.如果后面初始化赋值了,后面就不用了2.如果后面没有赋值,需要memset了如果说我临时需要一块内存,这块内存用来存储n个int的变量。我就需要使用malloc为pMax分配一块内存。可以这样做:pMax = malloc(sizeof(int) * n);

2013-03-29 17:27:21 1844

原创 PSNR图像信噪比

计算PSNRPSNR是“Peak Signal to Noise Ratio”的缩写,峰值信噪比。psnr一般是用于最大值信号和背景噪音之间的一个工程项目。                    PSNR计算公式如下:                       8bits表示法中,peak的最大值为255;MSE

2013-03-16 19:52:55 1118

原创 MATLAB中的卷积运算

Imfilter:线性空间滤波conv2:二位卷积conv2(a,b,same):将b作为模版在a上平移,最后的矩阵大小与a相同例如:a =     1     2     3     4     5     6     7     8     9b =     1     1     1     1     1     1     1

2013-03-13 12:06:34 1553

原创 人脸识别最终版

本程序首先利用从摄像头检测到的人脸图片,先进行直方图均衡化并缩放到92*112的图片大小,然后根据train.txt的采集到的人脸模版进行匹配识别(最好是在统一光照下,采集不同角度的人脸图片各一张)注意:影响的极大因素在于光照,模版若与采集的图像光照不一样,识别率很低。经测试,模板若与检测的图像在同一光照下的话,侧脸,仰脸,正脸均可识别,且识别率较高//#include #inclu

2013-02-23 23:40:29 2858 4

原创 opencv中image detection中截取人脸图片为大小统一的照片作为识别的模版

#include "cv.h"#include "highgui.h"#include #include #include #include #include #include #include #include #include #ifdef _EiC#define WIN32#endif static CvMemStorage* storage = 0;st

2013-02-20 23:47:14 2240 3

原创 opencv最简单的显示程序

#include "cv.h"#include "highgui.h"int main(){ IplImage *test=0; cvNamedWindow("result",1); test=cvLoadImage("h:\\1.jpg",CV_LOAD_IMAGE_GRAYSCALE); cvShowImage("result",test); cvWaitKey(0); c

2013-02-20 18:21:37 539

原创 Image detection

#include "cv.h"#include "highgui.h"#include #include #include #include #include #include #include #include #include #ifdef _EiC#define WIN32#endif static CvMemStorage* storage = 0;st

2013-02-20 18:10:08 368

转载 cvCalcEigenDecomposite——opencv内置PCA算法的第二个函数小记。

PCA(Eigenface)方法是人脸识别的主流方法之一。cvEigenDecomposite()函数作用是将人脸图像通过Eigenface变换矩阵,投射到子空间中。子空间中的人脸向量,是一个1×nEigens(nEigens由自己取得)的行向量,极大地降低了数据维度,便于下一步的聚类、识别。结合具体例子,尽量清楚地跟大家讨论这个函数的用途。  函数说明如下:Eig

2013-02-20 17:20:56 482

转载 cvloadImage无法加载图片返回空指针的问题

cvLoadImage(filename,flag)函数,如果filename直接输入"*.bmp",有可能出现找不到图片的问题。虽然该图片在工程目录下,但仍然找不到。可能原因是路径太长。若filename输入"filepath//.bmp"时,需要注意:filepath中所有的/都需要转义,用//代替。注意:CvLoadImage中filename的图片格式要选用BMP,不要用jpg压缩

2013-02-11 16:09:53 1215

原创 opencv中利用图像相减识别物体运动

利用从摄像头输出的图像,对运动物体可以进行识别并报警#include "stdio.h"#include "time.h"#include "Dos.h"#include #include #include //#include "mmsystem.h"#include "windows.h"#pragma comment(lib, "winmm.lib")

2013-02-08 18:58:32 1342

转载 HSV颜色模型

HSV颜色模型HSV(Hue, Saturation, Value)是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间, 也称六角锥体模型(Hexcone Model)。这个模型中颜色的参数分别是:色调(H),饱和度(S),亮度(V)。  HSV颜色空间模型[1]色调H:用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算

2013-02-07 14:43:06 882

原创 结构体数组指针加1到底加多少字节?

#includevoid main(){struct student{int num;char name[20];};struct student sss[10];struct student *p=sss;(*p).num=102;printf("%d\n",p);p=sss+1;printf("%d\n",p);//增加了24个字节p=p

2013-01-16 21:01:34 4042

空空如也

空空如也

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

TA关注的人

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