国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示

這篇具有很好參考價值的文章主要介紹了VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示

最近閑著跟著油管博主murtazahassan,學習了一下LEARN OPENCV C++ in 4 HOURS | Including 3x Projects | Computer Vision,對應(yīng)的Github源代碼地址為:Learn-OpenCV-cpp-in-4-Hours

關(guān)于OpenCV

OpenCV是一個開源的計算機視覺庫,其官網(wǎng)地址為:https://opencv.org/,對應(yīng)Github源碼地址為:https://github.com/opencv/opencv,目前來說OpenCV對C++、Python的支持比較友好,同時還支持Java、Javascript、C#等語言。
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻

OpenCV官網(wǎng)文檔地址:https://docs.opencv.org/4.x/d9/df8/tutorial_root.html
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻

OpenCV官方給的示例C++程序:

// Change path/to/image to a real path of an image, then build this demo with OpenCV package and run it
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
using namespace cv;
int main()
{
    std::string image_path = "path/to/image";
    Mat img = imread(image_path, IMREAD_COLOR);

    imshow("Display window", img);
    int k = waitKey(0); // Wait for a keystroke in the window
    return 0;
}

關(guān)于Windows下Visual Studio 2022中配置OpenCV庫的使用我就不贅余了,方便的話可以直接看Setup OpenCV in Visual Studio 2022 for C/C++ Development或OpenCV C++ and Microsoft Visual Studio: A Complete Tutorial on Installation and Usage for Beginners這個視頻教程。當然也可以參考油管博主murtazahassan對應(yīng)的Github倉庫Learn-OpenCV-cpp-in-4-Hours里面的Installing OpenCV on Windows for C++,如下圖所示:

VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻
關(guān)于在Mac下使用XCode運行OpenCV的可以參考Installing OpenCV on Mac for C++
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻

Visual Studio中使用OpenCV讀取圖像

首先使用VS2017新建一個控制臺項目OpencvDemo01,并在項目根目錄放置一些資源文件,資源文件下載地址為:https://github.com/murtazahassan/Learn-OpenCV-cpp-in-4-Hours/tree/main/Resources
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻

如下圖所示:
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻
在Visual Studio中使用C++ OpenCV庫讀取圖像并顯示很簡單,示例代碼如下:

#include <opencv2/opencv.hpp>
#include <string>
#include <iostream>

using namespace cv;
using namespace std;

int main()
{
	std::string imgPath = "Resources/test.png";

	cv::Mat img;
	img = cv::imread(imgPath);
	cv::imshow("Show Image", img);

	cv::waitKey(0);

	cv::destroyAllWindows();
	
	return 0;
}

運行結(jié)果如下圖所示:
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻

使用OpenCV讀取本地視頻

示例代碼如下:

#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

int main()
{
	std::string videoPath = "Resources/test_video.mp4";
	cv::VideoCapture videoCap(videoPath);

	cv::Mat frame;

	if (videoCap.isOpened()) {
		while (videoCap.read(frame)) {
			cv::imshow("Video Frame", frame);

			char chKey = cv::waitKey(10);
			if (chKey == 27) {
				break;
			}
		}
	}

	videoCap.release();

	cv::destroyAllWindows();


	return 0;
}

運行結(jié)果如下圖所示:
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻

OpenCV讀取攝像頭數(shù)據(jù)

OpenCV讀取本地攝像頭數(shù)據(jù)也很簡單,示例代碼如下:

#include <opencv2/opencv.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/imgproc.hpp>
#include <iostream>

using namespace std;
using namespace cv;

// 攝像頭中讀取每一幀圖像,然后輸出到屏幕,按ESC鍵退出

int main()
{
	cv::VideoCapture cap(0);

	cv::Mat frame;

	if (cap.isOpened()) {	// 如果VideoCapture初始化成功
		while (cap.read(frame)) {
			cv::imshow("WebCam Image", frame);

			char chKey = cv::waitKey(10);
			if (chKey == 27) {	// 27 對應(yīng)ESC鍵的ASCII碼
				// 如果按下了ESC鍵,則退出循環(huán)
				break;
			}
		}
	}

	cap.release();
	cv::destroyAllWindows();

	return 0;
}

運行結(jié)果如下圖所示:
VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示,Visual C++和MFC,編程語言學習,c++,opencv,音視頻文章來源地址http://www.zghlxwxcb.cn/news/detail-799267.html

參考資料

  • LEARN OPENCV C++ in 4 HOURS | Including 3x Projects | Computer Vision
  • murtazahassan/Learn-OpenCV-cpp-in-4-Hours
  • OpenCV官網(wǎng)
  • OpenCV-Get Started
  • OpenCV Github倉庫源代碼
  • OpenCV tutorial

到了這里,關(guān)于VC++中使用OpenCV讀取圖像、讀取本地視頻、讀取攝像頭并實時顯示的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • C#使用OpenCv(OpenCVSharp)使用攝像頭視頻顯示和錄制及圖片保存、本地視頻顯示

    本篇實例講解基于OpenCvSharp實現(xiàn)了攝像頭視頻顯示、錄制及截圖、視頻保存,本地視頻的顯示功能。 目錄 創(chuàng)建winform項目添加控件 NuGet安裝opencvsharp ?代碼 ?運行效果 實例實現(xiàn)過程

    2024年02月15日
    瀏覽(28)
  • opencv從視頻文件讀取視頻內(nèi)容,從攝像頭讀取保存視頻內(nèi)容

    opencv從視頻文件讀取視頻內(nèi)容,從攝像頭讀取保存視頻內(nèi)容

    (1)argparse模塊使編寫用戶友好的命令行接口變得容易。 (2)程序定義了它需要的參數(shù),而argparse將找出如何從sys.argv中解析這些參數(shù)。 (3)argparse模塊還會自動生成幫助和使用消息,并在用戶給程序提供無效參數(shù)時發(fā)出錯誤信息。 import argparse # 導入庫 parser = argparse.Argume

    2024年02月22日
    瀏覽(28)
  • OpenCV 實現(xiàn)讀取攝像頭、視頻讀取保存 (C++)

    重點語句:VideoCapture、imshow 原理:使用VideoCapture語句讀取攝像頭,再利用while一次次將VideoCapture所讀取的數(shù)據(jù)利用imshow語句一幀幀地讀取出來 重點語句:VideoWriter 原理:在攝像頭讀取完圖之后,利用VideoWriter語句將圖像保存為固定格式 通過加入一個循環(huán)語句,按空格將圖片按

    2024年02月11日
    瀏覽(24)
  • OpenCv:采集攝像頭視頻、讀取視頻幀與視頻錄制

    目錄 一、涉及OpenCv函數(shù) 二、什么是幀、幀的大小代表什么 三、攝像頭獲取視頻數(shù)據(jù) 四、錄制視頻并保存 從設(shè)備,可以是攝像頭可以是本地視頻, 獲取視頻的函數(shù) cv.VideoCapture()。 本函數(shù)作用在于創(chuàng)建一個VideoCapture或者VideoWriter對象,真正的讀取和寫入是通過創(chuàng)建的對象進行

    2024年02月16日
    瀏覽(31)
  • JavaCV音視頻開發(fā)寶典:使用JavaCV讀取??灯脚_或??稻W(wǎng)絡(luò)攝像頭sdk回調(diào)視頻TS碼流并解析預覽圖像

    JavaCV音視頻開發(fā)寶典:使用JavaCV讀取??灯脚_或海康網(wǎng)絡(luò)攝像頭sdk回調(diào)視頻TS碼流并解析預覽圖像

    《JavaCV音視頻開發(fā)寶典》專欄目錄導航 《JavaCV音視頻開發(fā)寶典》專欄介紹和目錄 ? 兩年前博主寫了如何利用JavaCV解析各種h264裸流,《JavaCV音視頻開發(fā)寶典:使用javacv讀取GB28181、??荡笕A平臺和網(wǎng)絡(luò)攝像頭sdk回調(diào)視頻碼流并解析預覽圖像》,但是隨著時間變化,各個廠商s

    2024年02月14日
    瀏覽(24)
  • opencv基本操作二(讀取視頻流與保存視頻、讀取攝像頭并保存視頻)

    opencv常用 讀視頻函數(shù) cv2.VideoCapture 、 cv2.VideoCapture.get 等,可以參考這里 opencv常用 寫視頻函數(shù) cv2.VideoWriter 等可以參考這里 ,其中視頻格式可以參考這里 videoCapture.read() 是按幀讀取視頻, ret,frame 是獲 .read() 方法的兩個返回值。其中 ret 是布爾值,如果讀取幀是正確的則返回

    2023年04月08日
    瀏覽(379)
  • JavaCV音視頻開發(fā)寶典:使用JavaCV讀取??灯脚_或??稻W(wǎng)絡(luò)攝像頭sdk回調(diào)錄像回放視頻PS碼流并解析預覽圖像

    JavaCV音視頻開發(fā)寶典:使用JavaCV讀取??灯脚_或海康網(wǎng)絡(luò)攝像頭sdk回調(diào)錄像回放視頻PS碼流并解析預覽圖像

    《JavaCV音視頻開發(fā)寶典》專欄目錄導航 《JavaCV音視頻開發(fā)寶典》專欄介紹和目錄 ? 上一章中《JavaCV音視頻開發(fā)寶典:使用JavaCV讀取??灯脚_或??稻W(wǎng)絡(luò)攝像頭sdk回調(diào)視頻TS流并解析預覽圖像》已經(jīng)詳細介紹了針對??礢DK實時視頻流回調(diào)的TS流解析實現(xiàn),并且也提到了PS流和

    2024年02月16日
    瀏覽(24)
  • opencv基礎(chǔ): 視頻,攝像頭讀取與保存的常用方法

    opencv基礎(chǔ): 視頻,攝像頭讀取與保存的常用方法

    當然還可以從視頻中抓取截圖,所以現(xiàn)在聊一下常用的抓取視頻截圖的的方法。 上面有三種構(gòu)造方法, 第一種是無法構(gòu)造方法。 第二種參數(shù)device是一個數(shù)字。 一般筆記本如此寫cv2.VideoCapture(0); 因為默認是0 ,如果有多個攝像頭,就需要看設(shè)置的攝像頭代表的數(shù)字了。 第二種

    2024年02月09日
    瀏覽(28)
  • OpenCV 視頻處理(關(guān)于攝像頭和視頻文件的讀取、顯示、保存等等)

    OpenCV 視頻處理(關(guān)于攝像頭和視頻文件的讀取、顯示、保存等等)

    OpenCV不僅能夠處理圖像,還能夠處理視頻 視頻是由大量的圖像構(gòu)成的 ,這些圖像是以固定的時間間隔從視頻中獲取的。這樣,就能夠使用圖像處理的方法對這些圖像進行處理,進而達到處理視頻的目的。要想處理視頻,需要先對視頻進行讀取、顯示、保存等相關(guān)操作。為此

    2024年03月14日
    瀏覽(23)
  • opencv入門到精通——圖片,視頻,攝像頭的讀取與保存

    opencv入門到精通——圖片,視頻,攝像頭的讀取與保存

    OpenCV是一個流行的開源計算機視覺庫,由英特爾公司發(fā)起發(fā)展。它提供了超過2500個優(yōu)化算法和許多工具包,可用于灰度、彩色、深度、基于特征和運動跟蹤等的圖像處理和計算機視覺應(yīng)用。OpenCV主要使用C++語言編寫,同時也支持Python、Java、C等語言。由于其開源和廣泛使用的

    2024年02月08日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包