矩视智能 视觉软件 开发和运行常见问题(免license)

模型开发(www.nb-ai.com

准备工作与标注

Q:云平台是否支持黑白相机拍摄的灰度图?

云平台既支持RGB三通道彩色图,也支持单通道的灰度图。一般地,彩色图会反映更多信息,使用效果更好。

Q:我的工控机是集成显卡,还能使用公司产品进行软件开发吗?

可以。如果您的工控机不是英伟达的独立显卡,您可以使用CPU进行软件开发。

参见 如何使用CPU进行软件开发

Q:本地创建新项目时,应该注意哪些问题?

请注意:在创建新项目时,项目名称和项目存放的路径均不要出现中文!

训练与测试

Q:在云平台训练后测试图片效果很好,但在线下测试图片效果不好,为什么?

线上训练模型的图片分辨率应与线下测试的图片分辨率相近。如您在线下测试图片时未能达到预期效果,请检查两者分辨率是否一致。

Q:训练的过程是怎样的,大概时间有多长?

当用户点击”训练“按钮后,系统会将数据(图片,以及标注数据)封装为训练任务提交至服务器集群,服务器集群会安排训练任务。如果同时处理的任务较多时,新的训练任务会进入排队状态。

训练开始后,深度学习网络参数将不断更新。这个过程大概十几到二十分钟左右,但是也取决于训练图片的数量,以及训练的轮次(系统会根据需求进行调节)。

训练完成后,该深度学习网络将具备对该类样本检测的能力,可以用于后续的在线测试、导出模型等。

SDK下载与部署

概要性问题

Q:SDK可以支持本地检测吗?还是一定要联网呀?

SDK支持本地检测,无需联网。您只需要下载云平台训练好的模型文件和SDK工具包即可进行线下本地检测。

Q:如何检查电脑环境配置是否支持?

环境配置参见 使用SDK(C++) - Neurobot

也可以运行本公司的exe文件检查您的环境配置,详见: https://github.com/neurobot-ai/neurobot_sdk_demo/tree/main/detectEnvironmentAndPredict

开发运行问题

以下高亮问题,为客户遇到较多的问题,请先重点查看。

Q: 执行程序在加载模型(load_model函数)处报错?

常见错误提示如下所示。

loading-ag-328

出现此类问题,请检查如下各类是否设置正常:

(1)模型类型是否正确

当选择CPU模型时,即device_name="CPU",确保load_model函数加载的模型文件确为CPU模型。CPU模型文件夹内文件如下所示:

当选择GPU模型类型时,即device_name="cuda",确保load_model函数加载的模型文件确为GPU模型。GPU模型文件夹内文件如下所示:

(2)模型引用路径,是模型文件夹的路径

模型压缩包解压缩后,得到模型文件夹。在示例代码中,model_path加载模型的路径,需要赋值为模型文件夹的路径,而不是某个文件的路径。

Q:使用cpu模型运行时报异常错误

这个问题是不少使用CPU模型时遇到的问题。

可能是系统自带的老版本同名文件与SDK包中的onnxruntime.dll文件同名导致冲突。系统加载dll文件时会加载系统自带的老版本从而导致异常。

解决方法:

将SDK包bin目录中的onnxruntime.dll文件,拷贝进项目生成的exe所在文件夹,即“..\x64-release”中。双击生成的exe文件,检测是否运行正常。

某些情况下,双击生成的exe文件运行正常,但是在VisualStudio里运行依然报错。请尝试将SDK包中的onnxruntime.dll文件复制覆盖到C:\Windows\system32路径下,覆盖原老版本文件(需要系统权限)。

alt text

alt text

Q:为什么我在代码示例文件中修改完模型路径和图片路径后,运行程序提示路径错误?

在代码中的路径分隔符请使用双反斜杠“\\”,不要使用单反斜杠“\”。 比如您存放图片的文件路径为“C:\Users\81098\Desktop\test_pic”, 如果这样放在代码,会报错!

请使用双反斜杠:“C:\\Users\\81098\\Desktop\\test_pic”

Q: 怎么在项目中,找到“解决方案资源管理器”?

点击“视图”,点击“解决方案资源管理器”

Q:程序编译运行时,提示找不到某些组件。环境变量配置无效。

配置环境变量无效,其中一个常见原因是可能会出现与原来配置的环境变量发生冲突,导致调用 SDK 时会出现异常报错。请尝试:

需要在 path 里删除发生冲突的环境变量;

WIN11系统需将添加的环境变量上移至最上方。

Q:怎么使用cpu调用SDK进行开发?

使用cpu调用SDK步骤和使用英伟达显卡调用步骤相同,仅需修改代码中的device_name变量即可,将“cuda”修改为“cpu”。也可参见使用SDK(C++) - Neurobot

Q:运行SDK进行检测,报错56“无写授权文件的权限”怎么办?

当SDK运行时,程序会检测授权文件license.txt。当程序没有该文件的写入权限时,会报该错误。

查看权限的方法:

  1. 找到你要检查权限的文件或文件夹,右键单击它,并选择“属性”。

  2. 首先在“属性”的“常规”选项卡,查看属性“只读”是否处于勾选状态。如果是,请取消“只读”,再次重试SDK是否运行正常。

如果上述操作无效,再继续后面的尝试。

  1. 在“属性”窗口中,切换到“安全”选项卡。这个选项卡上会显示当前用户和组对该文件的访问权限。

  2. 点击“编辑”按钮以查看或更改权限设置。如果需要更改权限,请确保你有足够的管理员权限来执行此操作。

  3. 在“编辑”窗口中,你可以添加或删除用户、组或特定权限,例如读取、写入、执行等。你还可以更改现有的权限设置。

  4. 点击“确定”按钮保存更改。请注意,当你更改权限设置时,可能会影响到其他用户或应用程序对该文件的访问。 需要注意的是,在进行任何权限更改之前,请务必了解所有相关的风险和后果,并且按照最佳实践和安全策略来执行操作。不正确的权限设置可能导致安全漏洞或数据损坏,因此请谨慎处理。如果你不确定如何设置某个文件或文件夹的权限,请咨询系统管理员或技术支持人员的意见。

如更改后依然报错:

  1. 文件可能正在被别的软件使用中
  2. 磁盘空间不足
  3. 编辑器权限错误 ......

Q:配置环境时出现环境变量太大的情况(如图)

低代码下载与部署

Q:低代码流程中深度学习算子为什么选不了我的模型版本?

少部分老客户可能在已有的低代码项目里看到,深度学习算子的“模型版本”不是一个有效的版本号(如下图所示);或者是在“选择模型版本”中,找不到某些版本。

这是由于近期低代码平台做的一个升级。

为了给用户提供更优的模型算法,我们升级了模型,推出了以“标准版”、“高精版”为代表的新框架模型,以及对应的SDK包。新框架模型推理速度更快、运行更稳定、识别效果更好、可覆盖的场景更多,所以我们强烈推荐用户使用新框架模型,以替换之前的“普通模型”、“快速模型”。实际上,新用户默认使用的就是新框架模型,用户无需做额外的操作。

为了让新框架模型惠及低代码用户,我们近期升级了低代码平台。但是由于框架的不兼容性与复杂性,我们不得不在新版本的低代码中取消对老模型的支持,包括“普通模型”、“快速模型”。

因此,极少数仍在通过低代码部署老模型的用户,可能会受到影响。对此,我们非常抱歉,但是也有解决方案。

Solution:

请参考如下步骤,在低代码中部署普通模型、快速模型。

1、下载组件

在低代码开发平台,仍然正常配置开发您的低代码项目,包括流程开发、界面开发。在流程开发中,如果在深度学习算子的版本选择时,暂时无法选择您所需的版本(因为这些版本是老模型),可以先选择相应的新模型版本(新老模型的切换,请联系技术支持),完成低代码的开发。之后在低代码下载页下载组件。

2、下载模型

请在2D开发—>AI模型开发中,找到对应的模型,下载所需要的版本(包括普通模型和快速模型版本)。

3、下载V3.0版本的低代码部署包

对于英伟达30系列显卡,下载地址为:2D_lowCodeDeployPack_30GPU_V3.0

对于英伟达10/20系列显卡,下载地址为:2D_lowCodeDeployPack_10-20GPU_V3.0

4、导入部署包

将分别下载的组件、模型,复制到部署包的对应路径下,并进行配置。详细的配置说明见导入配置文件


Q:低代码部署包运行异常,如何查找异常的相关信息?

当低代码运行异常、开始排查问题原因时,查看低代码运行的错误码是常用的方法。

低代码部署包内的Logs文件夹下,nonCodeLog.txt文件即为日志文件。低代码运行中的日志信息报错在该文件内。双击用文本编辑器打开,即可查看。

默认情况下,日志文件仅保存错误级别的日志。


Q:低代码部署包如何调节所连的相机

低代码部署包本身没有相机参数调整的功能。

在低代码部署包配置相机连接之前,务必使用相机厂商的控制软件,如海康相机的MVS,配置好相机的各项参数,如IP地址、曝光参数、ISO参数等,确保在控制软件中能获取良好的图像。

完成之后,断开控制软件与相机的连接,再在低代码部署包的“图片源配置”中配置连接相机。


Q:常见错误码之——错误码50

查看日志文件(方法见前文),或者是查看低代码的控制台信息,发现报错错误码50。这是由于低代码程序运行需要License授权(低代码程序本身需要license,如果流程中包括深度学习模型,还需要额外的license授权),而程序查询不到授权文件。 请将获取到的授权文件License.txt放置在低代码部署包的根目录、即与nonCode.exe同级的路径下。 

关于如何获取License.txt,请参考: 如何获取License

Q:常见错误码之——错误码56

查看日志文件,发现报错误码56,这是由于低代码程序没有对License.txt文件进行编辑的权限。请参考如何处理错误码56

Q: WIN10系统避免电脑自动删除文件

在桌面设置中进入【隐私和安全性】中的Windows安全中心

在Windows安全中心找到“病毒和威胁防护”,点击后进入页面,找到选项“病毒和病毒防护设置”下的“管理设置”。

进入管理设置页面后,下拉浏览找到“排除项”,打开“添加或删除排除项”。

进入排除项页面后,点击“添加排除项”,可以选择文件或文件夹对指定位置的文件(夹)进行保护,也可以选择文件类型对某一类型的所有文件进行保护。

运行环境

概要

SDK,或者是低代码部署包的运行环境,对于模型推理的稳定性、高效性至关重要。本文总结了一些与运行环境相关的问题及解决方案。

Q:模型在本地运行时推理时间长、时间波动大?

使用GPU进行模型推理时,GPU的设置对于推理效率有很大影响。可以尝试如下设置:

  1. 锁死最大时钟频率

以管理员身份打开命令行工具:搜索cmd,在找到的结果中点击鼠标右键,选择“以管理员身份运行”。

在终端查看部署电脑的最大时钟频率:nvidia-smi -q -d SUPPORTED_CLOCKS

设置显示的最大时钟频率:nvidia-smi -lgc 6001

  1. 管理3D设置中的低延时模式为超高

  1. 设置电源管理模式为最高性能优先

  2. 重启电脑

Q:与上下游设备连接,网络吞度速度较慢

当连接上下游设备,尤其是连接相机后,发现网络占有率高接近100%。这种情况也会造成整体的检测节拍收到影响。请参考如下的优化解决方法:

将网口的缓存区开到最大,接受缓存从256调整为2048,传输缓存从515调整为2048。

Q: 低代码程序被系统报有风险并隔离删除?

Windows系统的安全中心,有可能会误报低代码程序(如nonCode.exe)有风险,并进行隔离删除,导致低代码系统无法正常工作。

以下以Windows10系统为例,介绍如何将低代码程序加入“排除项”,以避免被安全中心误删。

在桌面设置中进入【隐私和安全性】中的Windows安全中心

在Windows安全中心找到“病毒和威胁防护”,点击后进入页面,找到选项“病毒和病毒防护设置”下的“管理设置”。

进入管理设置页面后,下拉浏览找到“排除项”,打开“添加或删除排除项”。

进入排除项页面后,点击“添加排除项”,可以选择文件或文件夹对指定位置的文件(夹)进行保护,也可以选择文件类型对某一类型的所有文件进行保护。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值