最近想要学习一下Opencv,打算以此来记录一下自己的学习生活。
话不多说,我们直接开冲!!!
//头文件 #include<opencv2/opencv.hpp> #include<iostream> //命名空间 using namespace cv; using namespace std;
讯享网
2、主函数main()
2.1 通过imread()函数,读入电脑里面的指定照片。
注意:opencv中的图片都是保存在Mat类型的变量中,Mat表示矩阵;
IMREAD_GRAYSCALE表示灰度图像(也可以不加)
讯享网Mat src = imread("D:/images/gakki1.jpeg",IMREAD_GRAYSCALE);//IMREAD_GRAYSCALE表示灰度图像
if (src.empty()) {
cout << "不能加载图片!!!" << endl; return -1; }
2.3 创建窗口,并且输出图片
讯享网 //创建窗口,WINDOW_FREERATIO代表可以输出任意大小的图片 namedWindow("输入窗口1", WINDOW_FREERATIO); //imshow(参数1,参数2),参数1表示窗口名称;参数2表示输入的对象 imshow("输入窗口1", src);
这里我用nameWindow()函数创建了一个名为“输入窗口1”的窗口;WINDOW_FREERATIO代表可以输出任意大小的图片,如果不加这个,输出的图片好像不能用鼠标调整大小;
这里我用imshow()函数在“输入窗口“中显示刚刚引入的图片。
2.4 延迟图片显示
//0表示一直阻塞,这样子就会使显示的图片一直显示;1表示停顿一毫秒,然后往下执行;100表示100毫秒 waitKey(0);
这里我用了waitKey()函数将输出的窗口进行停顿,如果参数是0,表示一直阻塞;如果参数是100,表示阻塞100毫秒等等。
2.5 销毁前面创建的窗口
讯享网 //对前面创建的显示窗口全部销毁掉 destroyAllWindows();
3、完整代码
#include<opencv2/opencv.hpp> #include<iostream> //命名空间 using namespace cv; using namespace std; int main(int argc, char** argv) {
//opencv中所有的图片都保存在Mat类的变量中,Mat表示矩阵 //图像完整路径 //Mat src = imread("D:/images/gakki1.jpeg"); Mat src = imread("D:/images/gakki1.jpeg",IMREAD_GRAYSCALE);//IMREAD_GRAYSCALE表示灰度图像 if (src.empty()) {
cout << "不能加载图片!!!" << endl; return -1; } //创建窗口,WINDOW_FREERATIO代表可以输出任意大小的图片 namedWindow("输入窗口1", WINDOW_FREERATIO); //imshow(参数1,参数2),参数1表示窗口名称;参数2表示输入的对象 imshow("输入窗口1", src); //0表示一直阻塞,这样子就会使显示的图片一直显示;1表示停顿一毫秒,然后往下执行;100表示100毫秒 waitKey(0); //对前面创建的显示窗口全部销毁掉 destroyAllWindows(); return 0; }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/66472.html