日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OpenCV基础篇之读取显示图片

發布時間:2025/3/19 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenCV基础篇之读取显示图片 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

程序及分析

/* * FileName : read.cpp * Author : xiahouzuoxin @163.com * Version : v1.0 * Date : Tue 13 May 2014 07:34:25 PM CST * Brief : * * Copyright (C) MICL,USTB */ #include <cv.h> #include <highgui.h>using namespace cv; using namespace std;int main(int argc, char **argv) {Mat img;img = imread(argv[1], 1);if (argc != 2 || !img.data) {cout<<"No image data.\n"<<endl;return -1;}namedWindow("Display Image", CV_WINDOW_AUTOSIZE);imshow("Display Image", img);waitKey(0);return 0; }
  • 包括和,cv.h中包括了OpenCV的核心功能,包括Mat等數據結構,highgui.h主要包括用于圖片顯示的接口。

  • Mat是OpenCV中特有的矩陣類,Mat.data是數據指針,通過推斷數據指針是否為NULL能夠確定是否讀入圖片數據。

  • namedWindow有兩個參數,其函數原型例如以下:

    CV_EXPORTS_W void namedWindow(const String& winname, int flags=WINDOW_AUTOSIZE);

    第一個參數winname是窗體名,是窗體對象的唯一標識。就和人的名字一樣,因此,不能同一時候有兩個同樣名字的窗體!flags設置窗體屬性,缺省參數值為WINDOW_AUTOSIZE=CV_WINDOW_AUTOSIZE=1。

  • 和matlab中的一樣。有木有。第一個參數表示我要在哪個窗體顯示,第二參數表示我要顯示那幅圖像,用腳趾頭想一想。是不是有這兩個參數就能知道在哪顯示什么了?

  • 另一個waitKey(int delay=0)表示圖片顯示窗體保留時間,單位為ms。當delay=0時,按下鍵盤上隨意按鍵才會關閉圖像顯示的窗體

  • 用于編譯上述程序的Makefile例如以下:

    TARG=read SRC=read.cpp LIB=-L/usr/local/lib/ INC=-I/usr/local/include/opencv/ CFLAGS=-g$(TARG):$(SRC)g++ -o $@ ${CFLAGS} $(LIB) $(INC) -lopencv_core -lopencv_highgui $^.PHONY:cleanclean:-rm $(TARG) -f

    我將OpenCV安裝到默認文件夾/usr/local下,因此在使用g++編譯時要包括鏈接庫(-L/usr/local/lib/)和頭文件(-I/usr/local/include/opencv/)

    注:在OpenCV基礎篇中都使用該格式的Makefile文件,因此后面的例程都能夠拷貝后直接使用,僅僅須要改動TARG和SRC參數就可以!

  • 效果

    轉載于:https://www.cnblogs.com/yutingliuyl/p/6907523.html

    總結

    以上是生活随笔為你收集整理的OpenCV基础篇之读取显示图片的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。