当前位置:网站首页>C#_OpenCV使用相机
C#_OpenCV使用相机
2022-07-29 18:45:00 【不可_收_圾】
参考:C#使用OpenCV
https://blog.csdn.net/sinat_37281674/article/details/119987327
测试代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OpenCvSharp; //为了使用opencv
using Point = OpenCvSharp.Point; //为了确定我们使用的point是opencv的而不是draw的
using DVPCameraType;//相机SDK
namespace OpenCvSharpTest
{
class Program
{
public static IntPtr m_ptr = new IntPtr();
private static DVPCamera.dvpStreamCallback _proc;
private static Mat srcImage;
/*视频流回调函数*/
public static int _dvpStreamCallback(uint handle, dvpStreamEvent _event, IntPtr pContext, ref dvpFrame refFrame, IntPtr pBuffer)
{
//相机帧数据转成OpenCV的Mat图像
srcImage = new Mat(refFrame.iHeight, refFrame.iWidth, MatType.CV_8UC3, pBuffer);//彩色三通道图像使用CV_8UC3格式,黑白单通道使用CV_8UC1格式
Cv2.ImShow("Camera", srcImage);
Cv2.WaitKey(1);
return 0;
}
static void Main(string[] args)
{
dvpStatus status;//相机状态
uint m_handle = 0;//相机句柄
uint count = 0;//相机数量
status = DVPCamera.dvpRefresh(ref count);//刷新相机数量
status = DVPCamera.dvpOpen(0, dvpOpenMode.OPEN_NORMAL, ref m_handle);//打开相机
//注册视频流回调函数
_proc = _dvpStreamCallback;
status = DVPCamera.dvpRegisterStreamCallback(m_handle, _proc, dvpStreamEvent.STREAM_EVENT_PROCESSED, m_ptr);
status = DVPCamera.dvpStart(m_handle);//启动相机
while (true)
{
}
}
}
}
运行:

边栏推荐
猜你喜欢

【盘古Coder】:高性能函数级程序语言生成模型

500强企业研发效能提升课,今晚开课啦!

OpenCV - 图像二值化处理 腐蚀膨胀 边缘检测 轮廓识别

7 lines of code crashed station B for 3 hours, but because of "a tricky 0"

一线大厂软件测试面试题及答案解析,2022最强版...

记录一个相当坑爹的WSL局域网访问问题

Win11网络不稳定怎么办?Win11连接wifi频繁掉线的解决方法

Really touch the fish and lead the teacher: The programmer brother works 10 minutes a day with an annual salary of 570,000. I broke the defense...

腾讯开源摘星计划培养开源贡献者的实践思考

EasyNVR更新版本至(V5.3.0)后页面不显示通道配置该如何解决?
随机推荐
[数学]必备基本知识
500强企业如何提升研发效能?来看看行业专家怎么说
碎片化时间真的适合学习吗?
2.1寸旋钮屏结合6.86寸串口屏助力集成灶智能升级|启明智显
函数的声明与作用域
迅为i.MX8MM开发板Coatrx-M4内核开发给IAR安装8MM补丁
swin-transformer初步理解
redis学习三redis里的list、set、hash、sorted_set、skiplist
支持向量机SVM
Win11任务栏太宽了怎么变窄?Win11任务栏宽度调整方法
KubeMeet 报名 | 「边缘原生」线上技术沙龙完整议程公布!
腾讯开源摘星计划培养开源贡献者的实践思考
pkg_resources.DistributionNotFound: The 'pip==1.4' distribution was not found and is required
PromptBERT: Improving BERT Sentence Embeddings with Prompts
工作9年了!
pfSense high availability (HA) function introduction
第02章 MySQL的数据目录【1.MySQL架构篇】【MySQL高级】
How to read excel test data in Go language, easy to learn
HCIP笔记第十四天
【PyCharm 常用快捷键】