Baumer工业相机使用BGAPI SDK集成VCXG-124M/51M在C++相机初始化资源报错。

简介: Baumer工业相机使用BGAPI SDK集成VCXG-124M/51M在C++相机初始化资源报错。

项目场景:

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


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


特殊检测类项目,使用高速高稳定的Baumer工业相机作为相机主体,使用Baumer BGAPI SDK进行集成采集图片进行检测


相机型号为VCXG-124M/51M相机。


问题描述

C++使用Baumer BGAPI SDK中初始化资源代码:


// DECLARATIONS OF VARIABLES
    BGAPI2::SystemList *systemList = NULL;
    BGAPI2::System * pSystem = NULL;
    BGAPI2::String sSystemID;
    BGAPI2::InterfaceList *interfaceList = NULL;
    BGAPI2::Interface * pInterface = NULL;
    BGAPI2::String sInterfaceID;
    BGAPI2::DeviceList *deviceList = NULL;
    BGAPI2::Device * pDevice = NULL;
    BGAPI2::String sDeviceID;
    BGAPI2::DataStreamList *datastreamList = NULL;
    BGAPI2::DataStream * pDataStream = NULL;
    BGAPI2::String sDataStreamID;
    BGAPI2::BufferList *bufferList = NULL;
    BGAPI2::Buffer * pBuffer = NULL;
    BGAPI2::String sBufferID;
    int returncode = 0;
    std::cout << std::endl;
    std::cout << "###############################################################" << std::endl;
    std::cout << "# PROGRAMMER'S GUIDE Example 011_ImageCaptureMode_Handler.cpp #" << std::endl;
    std::cout << "###############################################################" << std::endl;
    std::cout << std::endl << std::endl;
    std::cout << "SYSTEM LIST" << std::endl;
    std::cout << "###########" << std::endl << std::endl;
    // COUNTING AVAILABLE SYSTEMS (TL producers)
    try {
        systemList = BGAPI2::SystemList::GetInstance();
        systemList->Refresh();
        std::cout << "5.1.2.  Detected systems:  " << systemList->size() << std::endl;
        // SYSTEM DEVICE INFORMATION
        for (BGAPI2::SystemList::iterator sysIterator = systemList->begin();
            sysIterator != systemList->end();
            sysIterator++) {
            std::cout << "  5.2.1.  System Name:     " << sysIterator->GetFileName() << std::endl;
            std::cout << "          System Type:     " << sysIterator->GetTLType() << std::endl;
            std::cout << "          System Version:  " << sysIterator->GetVersion() << std::endl;
            std::cout << "          System PathName: " << sysIterator->GetPathName() << std::endl << std::endl;
        }
    }
    catch (BGAPI2::Exceptions::IException& ex) {
        returncode = (returncode == 0) ? 1 : returncode;
        std::cout << "ExceptionType:    " << ex.GetType() << std::endl;
        std::cout << "ErrorDescription: " << ex.GetErrorDescription() << std::endl;
        std::cout << "in function:      " << ex.GetFunctionName() << std::endl;
    }

提示内存报错,如下所示  


提示错误:0x00007FFDAD724FD9(KernelBase.dll)(GigeDemo.exe中)处有未经处理的异常:0xC000041D:用户回调区 间遇到未经处理的异常


提示错误:0x00007FFDAD724FD9(KernelBase.dll)(GigeDemo.exe中)处有未经处理的异常:
0xC000041D:用户回调区 间遇到未经处理的异常

原因分析:

Baumer工业相机在最开启初始化时,出现报错,一般是环境问题,比如SDK未安装完成,缺少文件等等。


前面的问题反馈出来是未生成合适的BGapi System实例,从而导致后续相机操作无法执行。


解决方案:

该电脑编译器平台环境为X86,实际电脑为X64环境,且对于的dll文件也为64位,因此需要调整编译器设置环境,重新生成即可,需要设置X64重新生成即可正常运行。


注意:


在C++环境使用Baumer BGAPI SDK做开发时,需要注意对应的编译器平台X86或者X64的类型,尤其是环境的 兼容性,出现问题可以使用其它电脑做对照验证测试。


工业相机软件开发注意要点:

在使用工业相机SDK进行软件开发时,有几个方面需要注意。


1. 兼容性 - 确保相机SDK与您的操作系统、开发环境和您所使用的工业相机型号兼容。


2. 2.功能 - 检查摄像机SDK是否支持您的应用所需的功能,如图像采集、视频录制和图像处理。


3. API文档 - 彻底检查API文档,确保其清晰和全面,便于开发和故障排除。


4. 开发环境 - 确保你的软件开发环境被正确配置为能与相机SDK一起工作。


5. 性能 - 在处理大量图像数据时要考虑到相机SDK的性能。


6. 支持和社区资源 - 评估客户支持和社区资源的可用性,如论坛或用户组,以协助解决故障和开发问题。


7. 许可证和成本 - 审查相机SDK的许可证和成本,以确保它符合您的项目预算和要求。

目录
相关文章
|
DataWorks API 数据库
DataWorks操作报错合集之在使用 OceanBase (OB) 作为数据源进行数据集成时遇到报错,该如何排查
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
JavaScript 前端开发 开发工具
【Azure Developer】使用JavaScript通过SDK进行monitor-query的client认证报错问题
AADSTS90002: Tenant 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' not found. Check to make sure you have the correct tenant ID and are signing into the correct cloud. Check with your subscription administrator, this may happen if there are no active subscriptions for the tenant.
161 1
|
数据采集 开发工具 Python
海康威视工业相机SDK+Python+PyQt开发数据采集系统(支持软件触发、编码器触发)
该系统基于海康威视工业相机SDK,使用Python与PyQt开发,支持Gige与USB相机设备的搜索及双相机同时显示。系统提供软件触发与编码器触发模式,并可在数据采集过程中实时保存图像。此外,用户可以调节曝光时间和增益,并进行信息输入,这些信息将被保存至配置文件以便下次自动加载。参数调节与实时预览等功能进一步增强了系统的实用性。
1860 1
|
开发工具 图形学 Android开发
Unity与安卓丨unity报错:SDK Tools version 0.0 < 26.1.1
Unity与安卓丨unity报错:SDK Tools version 0.0 < 26.1.1
|
Serverless 语音技术 开发工具
函数计算操作报错合集之怎么何集成nls tts python sdk
在使用函数计算服务(如阿里云函数计算)时,用户可能会遇到多种错误场景。以下是一些常见的操作报错及其可能的原因和解决方法,包括但不限于:1. 函数部署失败、2. 函数执行超时、3. 资源不足错误、4. 权限与访问错误、5. 依赖问题、6. 网络配置错误、7. 触发器配置错误、8. 日志与监控问题。
274 2
|
机器学习/深度学习 Serverless API
函数计算操作报错合集之调用SDK报错 "InvalidAction.Mismatch",该怎么办
在使用函数计算服务(如阿里云函数计算)时,用户可能会遇到多种错误场景。以下是一些常见的操作报错及其可能的原因和解决方法,包括但不限于:1. 函数部署失败、2. 函数执行超时、3. 资源不足错误、4. 权限与访问错误、5. 依赖问题、6. 网络配置错误、7. 触发器配置错误、8. 日志与监控问题。
280 1
|
开发工具 iOS开发 容器
【Azure Blob】关闭Blob 匿名访问,iOS Objective-C SDK连接Storage Account报错
【Azure Blob】关闭Blob 匿名访问,iOS Objective-C SDK连接Storage Account报错
222 0
|
Java Spring
【Azure Developer】Springboot 集成 中国区的Key Vault 报错 AADSTS90002: Tenant 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' not found
【Azure Developer】Springboot 集成 中国区的Key Vault 报错 AADSTS90002: Tenant 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' not found
454 0
|
分布式计算 大数据 Go
MaxCompute操作报错合集之使用go sdk调用GetTunnelEndpoint出现报错:InvalidAction.NotFoundSpecified api is not found,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
260 0
|
6月前
|
开发工具 Android开发
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
723 11
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡