Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C#)

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C#)

  • Baumer工业相机
  • Baumer工业相机NEOAPISDK中UserSet的技术背景
  • 代码案例分享
    • 第一步:保存相机当前参数设置UserSet_Save
    • 第二步:载入已经保存的相机参数UserSet_Load
  • 工业相机SDK中的UserSet功能的优点
  • 工业相机SDK中的UserSet功能的行业应用

Baumer工业相机

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

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

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

Baumer工业相机通过使用NEOAPI SDK进行开发时,可以通过UserSet用户设置功能允许用户为特定应用定制和保存相机设置。。

Baumer工业相机NEOAPISDK中UserSet的技术背景

工业相机旨在为机器视觉、检查、机器人和自动化等工业应用捕捉高质量图像和视频。它们配备了各种先进的特性和功能,包括用户设置功能。

UserSet用户设置功能允许用户为特定应用定制和保存相机设置。这意味着用户可以对相机进行一次设置,然后在需要时轻松调用这些设置,而不必每次都手动调整相机。这有助于确保一致和准确的结果,减少设置时间和精力,并提高工作效率。

UserSet用户设置的功能可能因具体的相机型号和制造商而不同。然而,一些可通过用户设置定制的常见功能包括曝光时间、增益、白平衡、对比度、清晰度、色彩校正和触发模式。

为了利用用户设置功能,用户通常通过相机上的一个物理按钮或通过电脑上的一个软件应用程序进入相机的软件界面。在那里,他们可以将摄像机的设置调整到他们想要的值,并将设置保存到用户集。然后可以根据需要快速、方便地访问保存的用户组。

这里主要描述如何在C#的平台下实现通过NEOAPI SDK实现UserSet功能的核心代码

代码案例分享

本文介绍使用BGAPI SDK对Baumer的工业相机进行开发时,使用通过NEOAPISDK中的UserSet功能来获取保存和载入相机诸多参数的功能。

有关于Baumer工业相机堡盟工业相机如何通过CameraExplorer软件进行设置UserSet的介绍,之前已经有相关的技术博客可以参考:

Baumer工业相机堡盟相机使用CameraExplorer软件进行相机参数保存与 UserSet参数设置

关于 UserSet 的描述:

Baumer 相机可以使用四个 UserSet项,其中 UserSet0为默认选项,包含出厂设置的一系列参数;

User Set 1-3 可以用来存储用户定义修改的相机参数;

User Set 0 作为“Default”值,为只读选项,不可将修改的相机参数保存到该“Default”选项下;

User Set 1-3 可以用来读取,存储相机参数;

如下为核心代码实现步骤:

第一步:保存相机当前参数设置UserSet_Save

C#环境下核心代码如下所示:

SystemList 
Open a System 
Get the InterfaceList and fill it Open an Interface 
Get the DeviceList and fill it 
Open a Deviceif (camera.IsConnected)
{camera.f.ExposureTime.Value = 10000;	//曝光设置函数 camera.f.Gain.Value = 1;				//增益设置函数  UserSetSelector CurUserSet = camera.f.UserSetSelector.Value; //获取当前相机的UserSetcamera.f.UserSetSelector.Set(UserSetSelector.UserSet1);//选择相机UserSet1设置 	camera.f.UserSetSave.Execute();				 		   //执行UserSet1载入 
}

第二步:载入已经保存的相机参数UserSet_Load

下面为在在C#环境开启相机连接相机后通过载入UserSet的参数获取相机参数的核心代码,

如下所示:

SystemList 
Open a System 
Get the InterfaceList and fill it Open an Interface 
Get the DeviceList and fill it 
Open a Deviceif (camera.IsConnected)
{camera.f.ExposureTime.Value = 10000;	//曝光设置函数 camera.f.Gain.Value = 1;				//增益设置函数  camera.f.UserSetSelector.Set(UserSetSelector.UserSet1);//选择相机UserSet1设置 camera.f.UserSetSelector.Set(UserSetSelector.UserSet2);//选择相机UserSet2设置 camera.f.UserSetSelector.Set(UserSetSelector.UserSet3);//选择相机UserSet3设置 camera.f.UserSetLoad.Execute();				 		   //执行UserSet3载入 }

工业相机SDK中的UserSet功能的优点

  1. 自定义摄像机设置: UserSet功能允许用户定义并保存自定义摄像机设置,如图像分辨率、曝光时间或色彩平衡。这在工业自动化应用中特别有用,因为不同的任务需要特定的相机配置。

  2. 设置之间的快速切换: 有了用户设定,在不同的摄像机设置之间的切换是快速而简单的。与每次需要手动调整摄像机设置相比,这可以节省时间并减少出错的风险。

  3. 增加一致性: 通过保存自定义的相机设置,用户可以确保相机设置随着时间的推移而保持一致,甚至在多台相机之间也是如此。这可以为分析和决策带来更加一致和准确的图像数据。

  4. 简化集成: UserSet功能还可以简化与其他软件系统的集成。例如,如果一个机器视觉系统需要与多个相机通信,拥有预定义的UserSet可以更容易确保所有相机的图像数据一致。

总的来说,工业相机SDK中的UserSet功能为简化相机设置和提高工业自动化应用的一致性和效率提供了若干好处。

工业相机SDK中的UserSet功能的行业应用

工业相机SDK中的UserSet功能允许用户保存和调用自定义设置,使其成为可能需要特定相机配置的工业应用的强大工具。

例如,在制造过程中,不同的产品可能需要特定的摄像机设置以确保一致的质量控制。用户设置 "功能允许操作人员在这些预设之间快速切换,减少设置时间并将出错的风险降到最低。

在机器视觉领域,UserSet功能还可用于存储不同应用的不同图像处理设置。这使得生产线上的不同检测任务之间能够快速而轻松地转换。

总的来说,用户设置功能提供了一种方便和有效的方式,为特定的工业应用定制相机设置,简化流程并提高生产力。

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

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

相关文章

go 语言程序设计第1章--入门

1.1 hello, world helloworld.go package mainimport "fmt"func main() {fmt.Println("Hello, World") }执行 go run helloworld.go 运行程序。 构建和执行. go build helloworld.go ./helloworld1.2 命令行参数 变量 os.Args 是一个字符串 slice. …

1527. 患某种疾病的患者

1527. 患某种疾病的患者 患者信息表: Patients --------------------- | Column Name | Type | --------------------- | patient_id | int | | patient_name | varchar | | conditions | varchar | --------------------- 在 SQL 中,patient_id &…

高并发系统常见问题及解决方案(Java)

在 Java Web 应用中,高并发环境会带来一系列的挑战,这些挑战可能会影响应用的性能、稳定性和可用性。下面是一些常见的问题以及相应的解决方案: 1. 线程资源竞争 问题: 当多个线程尝试同时访问同一资源时,可能会导致竞争条件,进而影响数据的完整性。 解决方案: 使用同步…

小米路由器2(R2D) 安装 MIXBOX

1. 先刷开发版 ROM http://www1.miwifi.com/miwifi_download.html 进入上述网页,找到 R2D 点击下载 开发版 ROM 教程 看 下载按钮上边的 “刷机教程” 刷机教程 2. 开启SSH工具 登录自己的小米账号后,里面会显示出 自己的 root密码; 默认…

『JavaScript』JavaScript事件类型详解:全面解析各类用户交互行为

📣读完这篇文章里你能收获到 理解事件驱动编程的基本概念和工作原理掌握JavaScript中常见的事件类型及其应用场合学习如何使用DOM API添加和移除事件监听器探讨事件冒泡、事件捕获和事件委托等高级事件处理技术 文章目录 一、事件处理程序1. HTML事件处理HTML事件处…

Springboot拦截器及统一异常处理

文章目录 一、Java中异常相关概念1、异常类2、异常处理方法3、注意事项4、自定义异常 二、配置全局异常处理1、统一返回体定义2、定义异常处理实现类3、全局异常处理类 三、Springboot拦截器1、定义拦截器2、注册拦截器 四、验证效果 一、Java中异常相关概念 1、异常类 Throw…

Armpro脱壳软件搭建教程附源代码

PHP8.0版本,数据库8.0版本 1.配置注册机文件,打开将arm.zip/res目录下,mt管理器搜索将其全部修改为你自己的域名或者是服务器IP 2.然后建立数据库 数据库账号arm 数据库用户名arm 数据库密码EsZfXY4tD3h2NNA4 3.导入数据库 4.配置Redi…

Vue.js项目部署至Linux服务器的详细步骤

引言 在现代Web开发中,Vue.js作为一款流行的前端框架,为开发者提供了灵活且高效的工具。然而,在将Vue.js项目成功部署到Linux服务器上,可能需要一些额外的步骤和注意事项。本文将深入介绍在Linux服务器上部署Vue.js项目的详细步骤…

[每周一更]-(第44期):GIT版本控制之忽略文件

基础概念 在 Git 中,可以通过 .gitignore 文件来指定不需要纳入版本控制的文件或文件夹,这些被忽略的文件或文件夹不会被提交到仓库中。 在项目根目录下创建一个名为 .gitignore 的文件,并在其中列出需要忽略的文件或文件夹。一些常见的示例…

【经验模态分解】5.结合EMD与最小二乘法的信号趋势项的提取方法

利用 EMD 将信号分解为一系列 固有模态函数IMF,根据 振动信号过零点特性 对属于趋势项的 IMF 分量进行判别,并对判别为趋势项的 IMF 分量进一步利用 最小二乘法 进行趋势项拟合,将拟合结果求和作为最终趋势项。数值模拟试验和实测数据处理结果…

SASS循环

<template><div><button class"btn type-1">默认按钮</button><button class"type-2">主要按钮</button><button class"type-3">成功按钮</button><button class"type-4">信息…

EMQTT消息订阅的几种方式

1、普通订阅 生产者 topic&#xff1a; demo 订阅者topic&#xff1a;demo 一个生产者&#xff0c;多个订阅者&#xff0c;每个消息都会被每个订阅者消费 2、分组订阅 &#xff08;1&#xff09;queue模式&#xff1a;特殊的分组&#xff0c;也就是一个分组&#xff0c;里面是…

安卓逆向笔记之AndroidManifest.xml篇

AndroidManifest.xml篇 AndroidManifest.xml是Android应用程序中最重要的文件之一&#xff0c;它包含了应用程序的基本信息&#xff0c;如应用程序的名称、图标、版本号、权限、组件&#xff08;Activity、Service、BroadcastReceiver、Content Provider&#xff09;等等。在应…

企业数据可视化-亿发数据化管理平台提供商,实现一站式数字化运营

近些年来&#xff0c;国内企业数据化管理升级进程持续加速&#xff0c;以物联网建设、人工智能、大数据和5G网络等新技术的发展&#xff0c;推动了数字经济的蓬勃发展&#xff0c;成为维持经济持续稳定增长的重要引擎。如今许多国内中小型企业纷纷摒弃传统管理模式&#xff0c;…

[卷积神经网络]FCOS--仅使用卷积的Anchor Free目标检测

项目源码&#xff1a; FCOShttps://github.com/tianzhi0549/FCOS/ 一、概述 作为一种Anchor Free的目标检测网络&#xff0c;FCOS并不依赖锚框&#xff0c;这点类似于YOLOx和CenterNet&#xff0c;但CenterNet的思路是寻找目标的中心点&#xff0c;而FCOS则是寻找每个像素点&…

css中sprite(css精灵)是什么,有什么优缺点

概念 将多个小图片拼接到一个图片中 。通过 background-position 和元素尺寸调节需要显示的背景图案。 优点 减少 HTTP 请求数&#xff0c;极大地提高页面加载速度 增加图片信息重复度&#xff0c;提高压缩比&#xff0c;减少图片大小 更换⻛格方便&#xff0c; 只需在一张或…

六、Redis 分布式系统

六、Redis 分布式系统 六、Redis 分布式系统6.1 数据分区算法6.1.1 顺序分区6.1.2 哈希分区 6.2 系统搭建与运行6.2.1 系统搭建6.2.2 系统启动与关闭 6.3 集群操作6.3.1 连接集群6.3.2 写入数据6.3.3 集群查询6.3.4 故障转移6.3.5 集群扩容6.3.6 集群收缩 6.4 分布式系统的限制…

go 语言程序设计第4章--复合数据类型

go 语言程序设计第4章–复合数据类型 书籍源代码链接 四种复合数据类型&#xff0c;分别是数组、slice、map 和结构体。 数组和结构体都是聚和类型&#xff0c;他们的值由内存中的一组变量构成。数组和结构体的长度都是固定的。slice 和 map 都是动态数据结构&#xff0c;他们…

mysql保姆安装教程

一.下载install文件 1.进入Mysql官网&#xff0c;点击下载 2.选择MySQL Installer for Windows 3.推荐选择第二个安装包 4.不登陆&#xff0c;开始下载 5.等待下载完成 二.安装前的配置 通过电脑“设置”&#xff0c;检查电脑是否包含中文名&#xff0c;如果包含请重命名 …

C语言 for 循环的所有应用

当使用for循环时&#xff0c;它提供了一种在特定条件下重复执行代码块的方法。以下是一些详细的示例&#xff1a; 基本用法&#xff1a; // 打印数字1到5 for (int i 1; i < 5; i) {printf("%d ", i); } // 输出结果&#xff1a;1 2 3 4 5遍历数组&#xff1a;…