Opencv采用Mat类作为数据结构进行存储,包括载入imread,显示imshow,输出到文件imwrite,
1.opencv的命名空间有两种定义方式:(命名空间的使用)
1.using namespace cv;
2.cv:: 在使用opencv的每一个类和函数都加入cv:: 所以比较繁琐。通常用第一种
2.Mat类简析,Mat类用于保存图像以及其他矩阵数据的数据结构,默认情况下其尺寸大小为0,也可以指定初始尺寸。
3.图像的载入和显示,imread(),imshow();
imread(参数一,参数二),参数一代表的是载入图片的路径名,参数二代表的载入标识,自带的默认值是1,这个参数有一个宏定义,如果是0的话强制输出灰度图像,有时候可以省去CV_BGR2GRAY,cvt_Color();这个函数。其他的值都可以标识rgb图像,imshow(参数1,参数2),参数1代表的是窗口标识的名称,参数2代表的是需要显示的图像。
4.InputArray类型其实就是Mat类型用于定义数据类型
5.创建窗口:nameWindow()函数用于创建一个窗口,若要简单的进行图片的显示可以不用创建窗口,而是直接用函数imshow()来直接显示但是要在显示窗口之前用到窗口名时,我们会在窗口中利用滑动条,要指定滑动条依附在某个窗口上,就需要nameWindow函数先创建出窗口,显示的规定窗口名称。调用格式是namedWindow(参数1,参数2);参数1是窗口的名称,就是显示窗口的名字,参数二代表窗口的大小调节问题有三个参数可选,1.WINDOW_NORMAL这个值可以用于用户自己改变窗口的大小,2.WINDOW_AUTOSIZE这个值是窗口大小会自动调整根据图像的大小自适应,3.WINDOW_OPENGL,默认的值是自适应大小,namedWindow函数作用通过指定的名字创建一个可以作为图像和进度条的容器窗口,我们也可以调用destroyWindow()或者destroyallWindow()来关闭窗口
6.输出图像到文件:imwrite()函数,
其有三个参数1.文件名,
2.通常填写一个Mat类型的图像数据,3.有默认值vecter(),针对不同格式的图像默认值也不一样对于JPEG格式的图像是95,对于png格式的图像是
3.对于ppm格式的图像是1。
加油啊,成功的路上并不孤独!!!