学习OPENCV快速入门30讲的笔记

对于visual studio 2015

没有本质上的区别,只是VS已经定义好的两个编译选项

使用上的区别:
1.Debug:调试版本,编译的结果通常包含调试信息,而且不做任何优化,为开发人员提供强大的应用程序调试能力,速度慢。

2.Release:发布版本,为用户使用的,不保存调试信息,同时,它往往进行了各种优化,速度快
总之 

需要调试程序时,选用Debug选项
需要程序快速运行时,选用Release选项

编译器

简单讲,编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables)

高级计算机语言便于人编写,阅读交流,维护。机器语言是计算机能直接解读、运行的。编译器将汇编或高级计算机语言源程序(Source program)作为输入,翻译成目标语言(Target language)机器代码的等价程序。源代码一般为高级语言 (High-level language), 如Pascal、C、C++、Java、汉语编程等或汇编语言,而目标则是机器语言的目标代码(Object code),有时也称作机器代码(Machine code)。

imread:打开文件     IMREAD_GRAYSCALE表示用灰度图

\n:表示输出换行

imshow:显示文件

Mat: matrix 表示矩阵 

waitKey(0):表示一直显示   如果是1 那就显示1ms就马上下一步 

    namedWindow("输入窗口", WINDOW_FREERATIO);:把大图用小窗口显示完全

学习OPENCV快速入门30讲的笔记_第1张图片

//:用来注释

alt按住可以选择同列的区域

roi提取:提取有兴趣的区域 比如抠图  利用OpenCV中的inRange()函数可实现二值化功能(这点类似threshold()函数)

image.copyTo(imageROI,mask),作用是把mask和image重叠以后把mask中像素值为0(黑色)的点对应的image中的点变为透明(把mask透明 保留image的背景和mask的白色部分1的图)

int为整数 double为小数

电脑左上角为原点  往右下展开

flip:flip函数是矩阵或者图像翻转

M.at(0,1):访问M数组的0,1位 类似一个指针

bin:直方图中每个柱

equalizeHist();   //直方图均衡化的API  只支持单通道 即灰度值

calcHist(); //计算直方图的API

自学直方图均衡化

blur:卷积API

你可能感兴趣的:(c++,opencv,开发语言)