C#使用OpenCvSharp4庫(kù)讀取電腦攝像頭數(shù)據(jù)并實(shí)時(shí)顯示
一、OpenCvSharp4庫(kù)
OpenCvSharp4庫(kù)是一個(gè)基于.Net封裝的OpenCV庫(kù),Github源代碼地址為:https://github.com/shimat/opencvsharp,里面有關(guān)于Windows下安裝OpenCvSharp4庫(kù)
的描述,如下圖所示:
二、C#使用OpenCvSharp4庫(kù)讀取電腦攝像頭數(shù)據(jù)并實(shí)時(shí)顯示
1、使用VS2022創(chuàng)建一個(gè)C# .Net控制臺(tái)程序,項(xiàng)目命名為OpenCVExample
2、安裝OpenCvSharp4庫(kù)
安裝OpenCvSharp4和OpenCvSharp4.runtime.win兩個(gè)NuGet包,或者直接安裝OpenCvSharp4.Windows
3、C#使用代碼-使用OpenCvSharp4庫(kù)讀取電腦攝像頭數(shù)據(jù)并實(shí)時(shí)顯示
相關(guān)示例代碼如下:
using OpenCvSharp; using System; namespace OpenCVExample { public class Program { /// <summary> /// 從攝像頭實(shí)時(shí)讀取每幀圖像,并實(shí)時(shí)顯示 /// </summary> public static void ReadFrameFromWebCam() { VideoCapture cap = new VideoCapture(0); cap.Set(3, 640); // 設(shè)置寬度為640像素 cap.Set(4, 480); // 設(shè)置高度為480像素 cap.Set(10, 70); // 設(shè)置亮度為70 if (!cap.IsOpened()) // 如果攝像頭打開失敗 { Console.WriteLine("VidepCapture open failed"); return; } while (true) { // 如果cap初始化成功 Mat frame = new Mat(); if (cap.Read(frame)) // 抓取和解碼,返回下一幀 { Cv2.ImShow("video Result", frame); // 顯示當(dāng)前幀的圖像數(shù)據(jù) if (Cv2.WaitKey(1) == (int)('q')) // 用戶輸入q鍵退出 { break; } } } } static void Main(string[] args) { ReadFrameFromWebCam(); } } }
4、程序運(yùn)行結(jié)果
運(yùn)行步驟4中的C#代碼,運(yùn)行結(jié)果如下圖所示:
小結(jié)
到此這篇關(guān)于C#使用OpenCvSharp4庫(kù)讀取電腦攝像頭數(shù)據(jù)并實(shí)時(shí)顯示的文章就介紹到這了,更多相關(guān)C# OpenCvSharp4讀取數(shù)據(jù)并顯示內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#使用Dictionary<string, string>拆分字符串與記錄log方法
這篇文章介紹了Dictionary<string, string>拆分字符串與記錄log的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04c# winform時(shí)鐘的實(shí)現(xiàn)代碼
這篇文章主要介紹了c# winform時(shí)鐘的實(shí)現(xiàn)代碼,有需要的朋友可以參考一下2014-01-01C#Url操作類封裝、仿Node.Js中的Url模塊實(shí)例
這篇文章主要介紹了C#Url操作類封裝、仿Node.Js中的Url模塊,實(shí)例分析了C#Url操作類封裝的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。2016-10-10