- 博客(17)
- 资源 (24)
- 收藏
- 关注
原创 地址转换函数
IPv4:#include int inet_aton(const char *cp, struct in_addr *inp);//返回值: 1----有效 0----出错in_addr_t inet_addr(const char *cp);//返回值:成功:32位的二进制网络字节序IP地址 失败:INADDR_NONEchar *inet_ntoa(stru
2012-11-19 12:40:25
339
原创 字节排序函数与字节操纵函数
字节排序函数 考虑一个16bit的整数,它由2个字节组成。内存中存储这两个字节有两种方法:一种是将低序字节存储在起始位置,这种称为小端(little-endian)字节序,另一种是将高序字节存储在起始地址,这称为大端(bin-endian)字节序。MSB(最高有效位):16位数的最左一位。LSB(最低有效位):最右一位。查看主机的字节序:#include#include
2012-11-15 19:40:51
1016
原创 套接口地址结构
套接口地址结构 大多数套接口函数都需要一个指向套接口地址结构的指针作为参数。每个协议都定义他自己的套接口地址结构,以“sokcaddr_”开头,并以对应其协议族的唯一后缀结束。IPv4套接口地址以“sockaddr_in”命名,定义在头文件中struct in_addr{in_addr_t s_addr; //32bit
2012-11-15 16:58:27
1605
转载 Smooth 函数 平滑处理函数 OpenCV
OpenCV Smooth 函数各种方法的图像平滑void cvSmooth( const CvArr* src, CvArr* dst, int smoothtype=CV_GAUSSIAN, int param1=3, int param2=0, double param3=0 );src输入图像.dst输出图像.smoothtype平滑方法:CV_BLUR_NO_
2012-04-16 19:22:31
7023
原创 C++函数指针
函数存放在代码的内存区域内,函数名代表了函数的地址,如:int fun(int a);fun就是函数在内存中的地址。 1.定义一个指向函数的指针 以int fun(int a)为例: int(*fp)(int a);//定义了一个指向函数的指针. 注意与int *fp(int a)的区别, int *fp(int a);//声明了一个返回int 型指针的函数.#incl
2012-04-13 14:47:51
475
原创 位移操作
Java中Int类型占4个字节,二进制用补码表示:3的二进制表示: 00000000 00000000 00000000 00000011-3的二进制表示:11111111 11111111 11111111 111111011.左移如:300000000 00000000 00000000 00000110=6;-311111111 11111111 111111
2012-04-12 19:31:21
520
转载 C++中map的使用说明
C++中map容器的说明和使用技巧C++中map容器提供一个键值对容器,map与multimap差别仅仅在于multiple允许一个键对应多个值。 一、map的说明 1 头文件 #include 2 定义 map my_Map; 或者是typedef map MY_MAP;
2012-04-10 15:45:05
4804
原创 多线程同步
1.在使用多线程或者多进程时,有时候需要调节两个或者多个线程(进程)之间的活动,这一个过程称之为同步。当多线程(进程)访问一个共享资源时,这个时候就需要同步。任务会处于两种状态:阻塞或者正在执行。 2.windows的同步对象(1)经典信号量(2)互斥体信号量(3)事件对象(4)可等待计数器 3.使用互斥体同步线程使用CreateMutex()创
2012-04-09 17:11:12
453
原创 C++中的多线程
1.多线程程序并发的执行它自身的各个部分,多线程程序的主要问题是管理线程之间的交互。所有的进程都包含一个执行线程,称之为主线程。主线程在程序开始时创建,然后主线程创建一个或者多个子线程。c++没有包含任何对多线程应用程序的内建支持,它依赖于操作系统提供的特性。c++允许直接使用操作系统提供的多线程特性。 2.windows线程函数 (1)线程的创建和终止
2012-04-09 15:22:11
1870
原创 模拟鼠标移动
#include#include#include//#include using namespace std;int main(int argc,char* argv[]){int cx=GetSystemMetrics(SM_CXSCREEN);//得到屏幕宽度 int cy=GetSystemMetrics(SM_CYSCREEN);//得到屏幕高
2012-04-02 15:45:16
842
转载 SendInPut函数
来自MSDNSendInput Function The SendInput function synthesizes keystrokes, mouse motions, and button clicks UINT SendInput(UINT nInputs, LPINPUT pInputs,
2012-04-02 14:13:49
5367
原创 Learning OpenCV第十一章(1)
十一 摄像机模型与标定一.简介1.发光源发出射线,穿过空间照射在物体上形成光线,物体表面吸收掉大多射线,只剩下一小部分被人眼或者摄像机察觉,被视网膜或者图像采集器吸收。2.摄像机的标定过程给出了摄像机的几何模型以及透镜的畸变模型,这两个模型给出了摄像机的内参数,通过这两个模型可以矫正透镜畸变。3.单应变换(Homography transformation):描述摄像机基本
2012-03-30 15:38:38
1547
原创 Learning OpenCV第三章--一些函数
1.矩阵和图像的基本操作 一些很有用的函数: (1)cvAbs, cvAbsDiff, and cvAbsDiffS /*Absolute value of all elements in an array*/ void cvAbs(const CvArr* src, CvArr* dst);
2012-03-20 21:34:43
606
原创 Learning Opencv第三章(3)IplImage数据类型
1.ImlImage数据结构 typedef struct _IplImage { int nSize; /* sizeof(IplImage) */ int ID; /* version (=0)*/ int nChannels; /*
2012-03-15 15:41:46
912
原创 Learning Opencv第二章(2)
1.矩阵数据的存取 (1)简单的方法: 利用宏CV_MAT_ELEM()传入四个参数,矩阵、数据类型、列号、行号,返回一个指定的元素。 CvMat* mat = cvCreateMat( 5, 5, CV_32FC1 ); float element_3_2 = CV_MAT_ELEM( *ma
2012-03-15 14:08:38
531
原创 Learning Opencv第三章(1)
1.Opencv2.3.1的基本数据类型定义在: ../OpenCV-2.3.1/modules/core/include/opencv2/core/types_c.h中。2.基本数据类型 (1)CvPoint、CvPoint2D32f、CvPoint3D32f定义如下: typedef struct CvPoint
2012-03-14 23:44:40
706
原创 Learning Opencv第二章
1.第一个例子:读取图片并显示:#include "highgui.h" //包含图片视频读取与显示的库#include "cv.h"int main( int argc, char* argv[]){ argv[1]="/home/xxx/desktop/截图.png"; IplImage *img = cvLoadImage( argv[1]
2012-03-14 21:54:10
977
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人