Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取相机当前实时帧率(C++)

news2024/11/27 18:35:10

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取相机当前实时帧率(C++)

  • Baumer工业相机
  • Baumer工业相机的帧率的技术背景
  • Baumer工业相机的帧率获取方式
    • CameraExplorer如何查看相机帧率信息
    • 在NEOAPI SDK里通过函数获取相机帧率(C++)
  • Baumer工业相机通过NEOAPI SDK获取帧率的优势
  • Baumer工业相机通过NEOAPISDK获取帧率的行业应用

Baumer工业相机

Baumer工业相机堡盟相机是一种高性能、高质量的工业相机,可用于各种应用场景,如物体检测、计数和识别、运动分析和图像处理。

Baumer的万兆网相机拥有出色的图像处理性能,可以实时传输高分辨率图像。此外,该相机还具有快速数据传输、低功耗、易于集成以及高度可扩展性等特点。

Baumer工业相机NEOAPI SDK是用于Baumer工业相机的一款最新的软件开发工具包(SDK)。它为开发人员提供了一系列API和工具,用于与Baumer工业相机进行通信和控制,控制方式极为便捷类似Halcon的相机助手类控制方式。​

Baumer工业相机的Camera Explorer软件功能强大,内容丰富,通过该软件可以有效的获取相机相关的全部信息,在对于相机检测项目的开发中,有时需要获取相机中图像Buffer信息和相关的数据流信息,而Camera Explorer软件可以有效的显示相关的信息。

Baumer工业相机的帧率的技术背景

工业相机的帧率是指相机每秒捕获的单个帧或图像的数量。

帧率越高,意味着摄像机每秒能够捕获更多的图像,从而使视频更流畅、更细腻。

工业相机的帧率取决于各种技术因素,如图像传感器技术、相机的处理速度,以及用于传输数据的连接方法。

图像传感器技术: 摄像机的帧率是由图像传感器读出图像像素数据的速度决定的。与CCD传感器相比,CMOS传感器提供更快的帧率,因为它们可以无损地读出像素。

处理速度:工业相机的帧率会受到相机处理能力的影响。较高的处理速度能使数据读出和传输更快,从而获得更高的帧率。

连接方法: 工业相机的帧率还取决于用于传输数据的连接方法。USB 3.0和千兆以太网提供更快的数据传输率,通常用于工业相机以实现更高的帧率。

总之,工业相机帧率的技术背景由图像传感器技术、处理速度和用于传输数据的连接方法决定。

Baumer工业相机的帧率获取方式

Baumer工业相机帧率的计算方式如下所示:

  1. 确定相机的输出格式和分辨率,例如 1920*1080。

  2. 然后查找相机的技术规格表,了解它的最大帧速率。最大帧速率是指相机能够捕获的每秒图像帧数的最大值。例如,相机的最大帧速率为 60 帧每秒。

  3. 接下来,通过检查相机检测到考虑的接口,从相机中获取图像帧并计算每秒钟传输的帧数。

以通过USB3.0接口连接的标准分辨率相机为例,可以使用以下公式计算帧率:

实时帧数 = 最大帧速率 * 传输带宽利用率

传输带宽利用率 = (像素位深度 * 帧高 * 帧宽 * 实际传输速率) / 8

例如,如果选择了 8 位的像素位深度,相机输出的图像帧大小为 1920x1080 像素,并且实际传输速率为 300 MB/s,则传输带宽利用率为:

(8 * 1080 * 1920 * 300) / 8 = 150.7 MB/s

如果相机的最大帧速率为 60 帧每秒,则实时帧率为:

实时帧数 = 60 * 150.7 / 300 = 30 帧每秒

因此,这个相机在这种配置下的实时帧率为 30 帧每秒。

前面有技术博客可以使用C#语言获取通过NEOAPI SDK获取相机当前实时帧率:

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取相机当前实时帧率(C#)

CameraExplorer如何查看相机帧率信息

Baumer工业相机 的相机软件Camera Explorer可以可视化便捷地进行查看相机图像的相关信息

首先,双击进入相机界面
在这里插入图片描述
然后选择相机页面中左上角标题菜单栏中的Widgets,并选择其中的Image/Buffer Info。

在这里插入图片描述
然后在软件右侧出现相机图像通讯相关信息,如下所示:

在这里插入图片描述
图像参数中Throughout可以查看相机当前的帧率。如下图所示:

在这里插入图片描述

在NEOAPI SDK里通过函数获取相机帧率(C++)

在相机连接后构建线程显示帧率,C++调用代码如下所示:

#pragma region 线程显示帧率和网口数据通量(做参考)
AfxBeginThread(ShowFrame_hThread1, (void*)this);			
#pragma endregion 

UINT CGigeDemoDlg::ShowFrame_hThread1(LPVOID pParam)
{
	CGigeDemoDlg *dlg = (CGigeDemoDlg *)pParam;
	dlg->SetShowFrame();
	return 0;
}

void CGigeDemoDlg::SetShowFrame()
{
	try
	{
		bool m_bRun0 = true;
		while (m_bRun0)
		{
			if (camera.IsConnected())
			{
				int Cur_FrameID = Image.GetImageID();
				
			
				if (camera.GetRuntimeInfoList()["TLType"].GetString() == "GEV")
				{

					
					CString CurFameratestr;
					float m_CurFrameRateDouble = camera.GetRuntimeInfoList()["Throughput"].GetDouble();
					CurFameratestr.Format(_T("%.2f"), m_CurFrameRateDouble);
					GetDlgItem(IDC_STCURFRAME)->SetWindowText(CurFameratestr + _T(" fps"));

					float m_CurStreamBitrateDouble = camera.GetRuntimeInfoList()["Bitrate"].GetDouble();
					m_CurStreamBitrate.Format(_T("%.2f"), m_CurStreamBitrateDouble);
					GetDlgItem(IDC_STCURBITRATE)->SetWindowText(m_CurStreamBitrate + _T(" MBit/s"));
					
				}
				Sleep(66);
			}
			

		}

	}
	catch (int e)
	{
		MessageBox(_T("Camera SetShowimage Error"));

	}
}

测试显示帧率结果如下所示:

在这里插入图片描述

Baumer工业相机通过NEOAPI SDK获取帧率的优势

Baumer工业相机通过NEOAPISDK获取帧率的优势主要包括:

高效性能:使用NEOAPISDK可以有效地控制和管理Baumer工业相机的帧率,对于需要高帧率的应用环境,比如高速检测或者实时监控非常有帮助。

兼容性强:NEOAPISDK提供了用户友好的接口,兼容各种编程语言,使得开发者可以便捷地集成这个SDK到他们的系统或应用中。

精确控制:通过NEOAPISDK,开发者可以精确地控制每一帧的获取和处理,这对于需要精确控制的应用环境,如精密制造或科学研究非常重要。

稳定可靠:Baumer工业相机配合NEOAPISDK可以长时间稳定运行,支持连续抓取和处理大量的图像数据,对于需要长时间运行的工业应用尤其重要

Baumer工业相机通过NEOAPISDK获取帧率的行业应用

Baumer工业相机通过NEOAPISDK获取帧率,其应用广泛涵盖了多个行业,这些包括但不限于:

制造业:在自动化生产线中,这种相机可以进行高帧率的视觉检测,检测产品质量问题或生产线的故障。

机器视觉:在自动化设备的构建中,比如机器人,这种相机可以进行高速的图像采集和处理,帮助机器进行准确的识别和操作。

交通监控:在交通监控中,如车牌识别,行人检测等,高帧率相机可以提供流畅且清晰的图像,保证识别的准确性。

医疗设备:在高级医疗设备中,如手术机器人,这种相机可以快速捕捉手术现场的详细图像,帮助医生进行精确的操作。

所以,无论是对于显微镜观察、流水线检查、外科手术辅助,还是交通监控,利用NEOAPISDK进行帧率控制的Baumer工业相机都能提供极高的性能表现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1342345.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大创项目推荐 深度学习乳腺癌分类

文章目录 1 前言2 前言3 数据集3.1 良性样本3.2 病变样本 4 开发环境5 代码实现5.1 实现流程5.2 部分代码实现5.2.1 导入库5.2.2 图像加载5.2.3 标记5.2.4 分组5.2.5 构建模型训练 6 分析指标6.1 精度,召回率和F1度量6.2 混淆矩阵 7 结果和结论8 最后 1 前言 &…

什么是高并发系统?

1.1 什么是高并发? 高并发(High Concurrency),通常是指通过设计保证系统能够同时处理很多请求。即在同一个时间点,有很多的请求同时访问同一个接口。高并发意味着大流量,需要运用技术手段去抵抗这种大流量…

行业智能终端定制

专注行业智能终端研发15年,有专业的技术和丰富的研发经验。产品定制范围:条码扫描手持机、RFID手持机、身份证手持机、行业平板、GPS/北斗高精度定位手持机/平板电脑、北斗短报文手持机。 能提供外观设计、结构设计、主板(PCBA)开…

JNPF开发平台--初体验

这一两年低代码的概念很流行,我也在网上了解体验了一番。 目前低代码主要分为两种,第一种是与云平台绑定的低代码,在云平台上开发,直接发布到云平台;第二种是低代码框架,低代码项目,这种比较流行…

mybatisX自动生成sql语句,尝试测试方法报错

今天我使用mybatisx自定义mapper方法生成sql语句后,在测试时报错 错误是MyBatis 无法找到映射的语句(Statement)引起的 我是这样操作的,在mapper接口自定义了一个方法 然后alt加enter,自动生成sql 结果 mapper.xml文件…

旅行旅游研学线路景点门票特产周边小程序开源版开发

旅行旅游研学线路景点门票特产周边小程序开源版开发 以下是旅行旅游研学线路景点门票特产周边小程序开源版开发的功能列表: 首页: 展示热门线路和推荐景点信息提供搜索功能,用户可以通过关键词搜索线路、景点、特产等显示当前位置和附近的景…

【Java干货教程】JSON,JSONObject,JSONArray类详解

一、定义 JSON:就是一种轻量级的数据交换格式,被广泛应用于WEB应用程序开发。JSON的简洁和清晰的层次结构,易于阅读和编写;同时也易于机器解析和生成,有效的提升网络传输效率;支持多种语言,很多…

主动红外探测器,预计到2026年将达到16 亿美元

主动红外探测器,也称为运动传感器,是一种通过发射红外辐射并检测反射来检测移动物体存在的电子设备。它们广泛用于安全系统、自动门、照明控制和其他需要运动检测的应用。近年来,由于对安全系统的需求不断增加以及智能家居和建筑的发展&#…

docker 安装可视化工具 Protainer 以及 汉化

一、创建保存数据的卷 安装网址:Install Portainer BE with Docker on Linux - Portainer Documentation docker pull portainer/portainer二、根据portainer镜像创建容器 docker run -d -p 8000:8000 -p 9000:9000\ --name portainer --restartalways \ -v /var/r…

万相台(万相台无界版-消费者运营/货品运营/活动运营)基础知识点总结

1.万相台是全站内推广渠道,相对直通车(万相台无界版-关键词推广)、引力魔方(万相台无界版-精准人群推广)可操控性弱,主要靠平台智能投放; 2.万相台经典特点:cpc可高可低&#xff0c…

jquery文件上传(CVE-2018-9207)

漏洞描述&#xff1a; jQuery是一个快速、简洁的JavaScript框架&#xff0c;是继Prototype之后又一个优秀的JavaScript代码库&#xff08;框架&#xff09;于2006年1月由John Resig发布。 jQuery Upload File < 4.0.2 中的任意文件上传 根目录下/jquery-upload-file。 复现…

骨传导耳机的原理是什么?一文读懂骨传导耳机优缺点都有哪些!

一、骨传导耳机传声原理是什么 骨传导耳机以人体骨骼为传声介质&#xff0c;可以将声音转化为不同频率的震动&#xff0c;在不经过外耳道和鼓膜的情况下&#xff0c;通过震动使声音经过内耳道&#xff0c;直接传入大脑听觉神经&#xff0c;与传统耳机相比&#xff0c;可以节省许…

惟客数据昆仑-开发云成功开源了!让研发更简单高效

​近期&#xff0c;WakeData惟客数据产品——昆仑-开发云成功开源。 今年4月&#xff0c;惟客数据完成了新一轮产品能力升级&#xff0c;与战略伙伴联合研发具有私有化部署能力的行业大模型 WakeMind 。 昆仑-开发云在可视化领域建模的基础上也引入了 WakeMind 的能力&#x…

力扣:968. 监控二叉树(贪心,二叉树)

题目&#xff1a; 给定一个二叉树&#xff0c;我们在树的节点上安装摄像头。 节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。 计算监控树的所有节点所需的最小摄像头数量。 示例 1&#xff1a; 输入&#xff1a;[0,0,null,0,0] 输出&#xff1a;1 解释&…

大数据实践之路 读后感

欢迎关注公众号&#xff1a;数据运营入表资产化服务&#xff0c;获取更多算法源码材料 2023数据资源入表白皮书&#xff0c;推荐系统源码下载-CSDN博客 浅析研发支出费用化和资本化的区别-CSDN博客 商业银行数据资产估值白皮书&#xff0c;推荐系统源码下载-CSDN博客 用友B…

【软件工程大题】McCabe方法_计算环形复杂度的方法

计算环形复杂度的三种方法 方法一 流图中线性无关的区域数等于环形复杂度. 关于线性无关区域 每一个由若干线条组成的密闭空间就是一个线性无关区域,图形的外界也算一个区域,如果没封闭上一个空间,那么它就算和外界算为一个整体 方法二 流图边数-结点数2 方法三 流图中判…

再获认可,YashanDB入选工信部电子一所“2023年数字化转型自主创新解决方案优选案例”

近日&#xff0c;由国家工业信息安全发展研究中心&#xff08;工业和信息化部电子第一研究所&#xff09;主办的“数智赋能 创新领航”2023年数字化转型自主创新解决方案优选案例正式公布。深圳计算科学研究院&#xff08;简称&#xff1a;深算院&#xff09;自主研发的崖山数据…

BFC 2023年度星光之夜即将开启,打造梦幻跨年盛典

跨年钟声即将敲响&#xff0c;星光繁花璀璨绽放。2023年12月31日&#xff0c;BFC外滩金融中心&#xff08;下称BFC&#xff09;年度星光之夜拉开帷幕&#xff0c;在热酒派对和星光音乐会的热烈节日氛围中&#xff0c;幸运气球将在全场传递节日祝福&#xff0c;更有惊喜好礼抽奖…

业务分析走向业务架构(元旦读物)

新的一年马上开始了&#xff0c;2024有什么规划呢&#xff0c;不妨假期里思索一番&#xff0c;立下个flag&#xff0c;以待明年回眸一笑。2024年关于企业数字化平台构建&#xff0c;小目标&#xff1a;掌握业务分析&#xff0c;流程分析&#xff0c;项目分析 三大基础内容&…

【JVM篇】Java是如何实现平台无关的?

Java是如何实现平台无关的? ✔️什么是平台无关性✔️平台无关性的实现✔️Java虚拟机✔️字节码✔️Java语言规范 ✔️扩展知识仓✔️平台无关性的好处✔️ 有哪些语言实现了平台无关?✔️Java中基本数据类型的大小都是确定的吗? ✔️什么是平台无关性 平台无关性就是一种语…