Baumer工业相机堡盟工业相机如何通过BGAPI SDK设置相机的图像剪切(ROI)功能(C#)

简介: Baumer工业相机堡盟工业相机如何通过BGAPI SDK设置相机的图像剪切(ROI)功能(C#)

Baumer工业相机


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


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


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


Baumer工业相机堡盟相机中ROI功能是一种可以直接设置在图像芯片中进行区域设置感兴趣的区域的功能,然后在相机内部对图像进行部分扫描的剪切然后再传输到处理器中,可以在一定程度上提供工业相机的的采集帧率。


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


Baumer工业相机的图像剪切(ROI)功能的技术背景


Baumer工业相机中的ROI(感兴趣区域)功能允许用户选择图像中他们想重点分析或处理的特定部分。这可以提高图像处理系统的效率,因为它可以排除多余的或不必要的数据。


ROI功能的工作原理是在较大的图像框架内选择一个矩形区域。然后相机只对这个较小的区域应用所有后续的图像处理算法。这可以提高图像分析的速度和准确性,因为它减少了需要处理的数据量。


总的来说,Baumer工业相机的ROI功能可以减少处理时间,提高图像分析的准确性,使其成为各种工业应用中的有用工具。


CameraExplorer如何使用图像剪切(ROI)功能


Baumer工业相机 的相机软件Camera Explorer可以可视化便捷地进行使用图像剪切(ROI)功能


首先,双击进入相机界面


然后选择相机页面中左上角标题菜单栏中的Widgets,并选择其中的Image Format。


然后在软件右侧出现相机功能相关信息,如下所示:


通过设置图上的Width和Height可以使用设置相机的图像剪切(ROI)功能,如下图所示:


通过设置当前图像Height为199,则此时相机的图像执行了图像剪切(ROI)功能,如上图所示:


在BGAPI SDK里通过函数使用图像剪切(ROI)功能


在相机连接后使用图像剪切(ROI)功能,C#调用代码如下所示:

//设置工业相机图像剪切ROI功能
private void buttonRoiSet_Click(object sender, EventArgs e)
{
    try
    {
        double ROIWidth = (double)numericUpDown5.Value;
        double ROIHeight = (double)numericUpDown7.Value;
        if (pDevice != null)
        {
            double widthin = (double)pDevice.RemoteNodeList["Width"].Value;//获取相机ROI中当前图像Width尺寸
            double heightin = (double)pDevice.RemoteNodeList["Height"].Value;//获取相机ROI中当前图像Height尺寸
            if (ROIWidth != widthin | ROIHeight != heightin)
            {
                pDevice.RemoteNodeList["AcquisitionStop"].Execute(); //相机停止采集
                BGAPI2.DataStreamList dsList = pDevice.DataStreams;  //获取相机数据流
                int count1 = dsList.Count;                           //获取相机数据流数量
                foreach (KeyValuePair<string, DataStream> ds_pair in dsList)
                {
                    BGAPI2.DataStream CurDataStream = ds_pair.Value;
                    CurDataStream.StopAcquisition();                  //停止相机的每个数据流的采集
                }
                //Width最小值64,单次增加为32,不满足这种设置逻辑则会报错
                if (pDevice.RemoteNodeList["Width"].IsWriteable == true)  //确认相机ROI功能的Width参数是否可写入
                {                          
                    if (ROIWidth != widthin)                              //确认Width是否需要修改(与已存Width是否一致)
                        pDevice.RemoteNodeList["Width"].Value = ROIWidth; //修改Width尺寸
                }
                //Height最小值1,单次增加为1,不满足这种设置逻辑则会报错
                if (pDevice.RemoteNodeList["Height"].IsWriteable == true)  //确认相机ROI功能的Height参数是否可写入
                {
                    if (ROIHeight != heightin)                             //确认Height是否需要修改(与已存Height是否一致)
                        pDevice.RemoteNodeList["Height"].Value = ROIHeight;//修改Height尺寸
                }
                foreach (KeyValuePair<string, DataStream> ds_pair in dsList)
                {
                    BGAPI2.DataStream CurDataStream = ds_pair.Value;
                    CurDataStream.StartAcquisition();                       //重新开启相机的每个数据流的采集
                }
                OnNotifyShowRecieveMsg("Cam" + camSelector + "ROI修改成功:Width:" + ROIWidth + " Height:" + ROIHeight);
            }
            else
            {
                OnNotifyShowRecieveMsg("Cam" + camSelector + "ROI参数无变化:Width " + ROIWidth + " Height:" + ROIHeight);
            }
        }
    }
    catch (Exception ex1)
    {
        OnNotifyShowRecieveMsg(ex1.Message);
    }
}


Baumer工业相机通过BGAPI SDK使用图像剪切(ROI)功能的优势


Baumer工业相机的ROI(感兴趣区域)功能具有显著的优势,包括


  1. 提高精度:通过突出图像中的特定感兴趣区域,ROI功能可以使测量和分析更加精确和准确。


  1. 减少了处理时间。通过将处理能力集中在图像的特定区域,ROI功能减少了需要处理的数据量,从而使分析和处理时间更快。


  1. 提高图像质量。ROI功能可用于裁剪掉图像中不需要的区域,从而获得更高的分辨率和更好的图像质量。


  1. 增加灵活性。ROI功能允许用户实时定制感兴趣的区域,能够更有效地监测和分析感兴趣的特定区域。


  1. 提高动态范围。ROI功能还可用于提高图像的动态范围,因为它使用户能够调整图像内特定区域的曝光设置。


总的来说,工业相机的ROI功能可以在广泛的工业应用中显著提高成像和分析的准确性、速度和效率。


Baumer工业相机通过BGAPI SDK使用图像剪切(ROI)功能的行业应用


Baumer工业相机的ROI(感兴趣区域)功能可以有各种场景应用。下面是几个例子。


  1. 质量控制和检查。ROI功能可用于聚焦于产品或样品中的某一感兴趣的区域,并捕获高质量的图像进行分析。


  1. 机器视觉。在自动化制造过程中,ROI功能可以帮助识别生产线上的特定零件或部件,以便进行检查和分析。


  1. 监视和安全。投资回报率功能可用于放大监控视频画面中的特定区域,确保高清晰度地捕捉到任何可疑的活动。


  1. 科学研究。在生物技术或材料科学等领域,ROI功能可以帮助研究人员捕捉样品、细胞或材料的详细图像进行分析。


总的来说,ROI功能使工业相机能够捕捉和ROI的特定区域,使其成为各行业的宝贵工具。


目录
相关文章
|
3月前
|
监控 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取每张图像的微秒时间和FrameID功能(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取每张图像的微秒时间和FrameID功能(C#)
48 0
|
3月前
|
数据采集 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用ForceIP强制修改网口IP功能(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用ForceIP强制修改网口IP功能(C#)
29 0
|
3月前
|
存储 传感器 监控
工业相机如何实现实时和本地Raw格式图像和Bitmap格式图像的保存和相互转换(C#代码,UI界面版)
工业相机如何实现实时和本地Raw格式图像和Bitmap格式图像的保存和相互转换(C#代码,UI界面版)
32 0
|
7天前
|
JavaScript Java Maven
云效产品使用常见问题之android sdk 构建出aar后,上传到私有maven仓库失败如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
3月前
|
安全 开发工具 Android开发
几个Flutter常见诊断错误与解决Android toolchain - develop for Android devices X Unable to locate Android SDK
几个Flutter常见诊断错误与解决Android toolchain - develop for Android devices X Unable to locate Android SDK
300 0
|
6月前
|
API 开发工具 Android开发
解决 Android App 上架 Google play后 ,签名变更,第三方sdk无法登录
解决 Android App 上架 Google play后 ,签名变更,第三方sdk无法登录
148 0
|
Java 语音技术 开发工具
Android 讯飞离线语音听写/离线语音识别SDK
Android 讯飞离线语音听写/离线语音识别SDK
392 0
Android 讯飞离线语音听写/离线语音识别SDK
|
3月前
|
开发工具 Android开发
Android获取SDK的版本信息
Android获取SDK的版本信息
39 0
|
4月前
|
编解码 Java 开发工具
Android端接入视频生产 Java SDK
Android端接入视频生产 Java SDK
40 1
|
8月前
|
Java 开发工具 Android开发
逻辑清晰,详解社交源码Android开发SDK
前篇我们讲解了有关如何在IOS平台开发集成SDK,那么今天来给大家简单讲解下如何在社交源码Android客户端上开发集成 SDK。
逻辑清晰,详解社交源码Android开发SDK