openCV------理解----图像增强

OpenCV图像增强算法实现(直方图均衡化、拉普拉斯、Log、Gamma)

https://blog.csdn.net/dcrmg/article/details/53677739

ACE图像增强算法Opencv实现

https://blog.csdn.net/m_buddy/article/details/53365473

Retinex图像增强算法(SSR, MSR, MSRCR)详解及其OpenCV源码

https://blog.csdn.net/ajianyingxiaoqinghan/article/details/71435098

 

Opencv2.4.10+VS2010+win10安装配置

https://blog.csdn.net/ck0902ldq/article/details/52670998

假设OpenCV已经默认安装在C:/Program Files/OpenCV/ 文件夹下。

步骤:

1 文件更名。转到C:/Program Files/OpenCV/bin/ 目录下,可以看到有几个文件名中包含097的.dll文件,复制这些文件,把名字中的097更改为096。(例如cv097.dll更改为了cv096.dll,同样地重命名cvaux, cvcam, cxcore,和 highgui。)(可以在命令提示符下使用如下命令完成此项工作: copy *097.dll *096.dll);

2 设置系统变量PATH。在系统变量PATH中添加 C:/Program Files/OpenCV/bin directory 和C:/Program Files/OpenCV/otherlibs/highgui 两个路径。添加方法不再详述,只提醒别忘了英文的分号进行分割。

3 设置Dev-C++。打开Dev-C++的菜单[工具]->[编译选项],在“编译器”选项页,打勾“在连接器命令行加入如下命令”,并在其下的文本框内输入 -lhighgui -lcv -lcxcore -lcvaux –lcvcam 这告诉连接器把你的程序和OpenCV库相连接;然后切换到“目录”选项页,在“库”子选项卡页添加目录C:/Program Files/OpenCV/lib;再切换到“C包含目录”子选项卡页,添加如下五个目录:C:/Program Files/OpenCV/cxcore/include
C:/Program Files/OpenCV/cv/include
C:/Program Files/OpenCV/otherlibs/highgui
C:/Program Files/OpenCV/cvaux/include
C:/Program Files/OpenCV/otherlibs/cvcam/include
换到“C++包含文件”子选项卡页添加同样的五个目录。

OK,大功告成,你可以编译以下OpenCV自带的例程试验一下了。


OpenCV包中的opencv/sources/modul

core--核心功能
imgproc--图像处理
highgui--高层GUI和多媒体i/o
video--视频分析
calib.3d--相机标定和3D建模
features--2D特征架构
object--物体检测
ml--机器学习
flann--多维空间聚类和搜索
gpu--GPU机器加速视觉
photo--计算摄影
stitching--图像拼接
ocl--OpenGL计算机加速视觉
viz--3D视觉
core--核心功能
imgproc--图像处理
highgui--高层GUI和多媒体i/o
video--视频分析
calib.3d--相机标定和3D建模
features--2D特征架构
object--物体检测
ml--机器学习
flann--多维空间聚类和搜索
gpu--GPU机器加速视觉
photo--计算摄影
stitching--图像拼接
ocl--OpenGL计算机加速视觉
viz--3D视觉

1 函数重载的含义

2 符号重载的含义

3 内联函数的含义 #define CV_INLINE inline

4 函数的形参是可以有初始值(初始值)的,如:

int max(int a, int b = 0)
{
    ......
}
int b=0指的是默认参数,调用时传入或不传入b都行,如果不传入b的话,那么b的值就是0。
另外注意:实参与形参的结合是从左至右顺序进行的。因此指定默认值的参数必须放在形参表列中的最右端,否则出错。例如:
void f1(float a,int b=0,int c,char d=′a′);     //不正确
void f2(float a,int c,int b=0, char d=′a′);     //正确
更多关于函数形参默认值的说明,可以参看链接http://www.jb51.net/article/37624.htm
 
  
5 函数中定义的指针也是局部变量哦,而非全局变量

6 如果main函数中定义了变量a,那么你在main函数中调用的函数fun()是不能用变量a的!你只有把a放在全局的位置才行!

7 float scale = 255.f/(size.width*size.height); 

详解其中的255.f   255.是255.0000的缩写 f是告诉编译器我这个常数是单精度浮点型而非double类型,默认的是double类型!

对象也分为全局对象和局部对象

9 浮点数除法怎么做?很简单,你用浮点数作为被除数和除数就可以了

10 科学计数法怎么表示浮点数?很简单,和MATLAB相同  double matlab_eps= 1.4901e-008;




你可能感兴趣的:(c++/c,编程思想)