c++获取图像的长宽 opencv_【第一篇:C++与opencv】图片的读取和显示 | 学步园
這里介紹C++版本的opencv,和C語言版本有些不同,先看代碼^_^
【編譯環境:opencv2.4.4和VS2008】
#include "stdafx.h"
#include "opencv2/opencv.hpp"
using namespace cv;
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
Mat src;
//加載圖片
src= imread("F://Opencv_picture//44.jpg", CV_LOAD_IMAGE_COLOR);
//檢測是否加載成功
if(!src.data) //or == if(src.empty())
{
cout<
return -1;
}
// 創建窗口
namedWindow("Display", CV_WINDOW_AUTOSIZE);
//顯示圖像
imshow("Display", src);
//暫停,等待按鍵結束
waitKey(0 );
return 0;
}
**************************************************************
函數講解:
(1)C++版本用Mat代替C語言版本的IplImage和CvMat
(2)讀取圖像不同:
C: IplImage* cvLoadImage(const char* filename, int iscolor=CV_LOAD_IMAGE_COLOR )
C++: Mat imread(const string& filename, int flags=1 )
(3)顯示圖像不同:
C: void cvShowImage(const char* name, const CvArr* image)
C++: void imshow(const string& winname, InputArray mat)
(4)等待按鍵函數
C++: int waitKey(int delay=0)
C: int cvWaitKey(int delay=0 )
(5)窗口命名
C++: void namedWindow(const string& winname, int flags=WINDOW_AUTOSIZE )
C: int cvNamedWindow(const char* name, int flags=CV_WINDOW_AUTOSIZE )
關于namedWindow()第二個參數的使用
CV_WINDOW_AUTOSIZE ?【可用1替代或省略不寫】: ? 顯示原圖,且顯示后不能改變窗口大小
CV_WINDOW_NORMAL ? ? 【可用0替代】: ? ?顯示圖像后可以改變窗口的大小
總結
以上是生活随笔為你收集整理的c++获取图像的长宽 opencv_【第一篇:C++与opencv】图片的读取和显示 | 学步园的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux从源码编译软件,linux软件
- 下一篇: Linux设置swap分区为128g,s