1、VS下调用算子分类算子 ApplyDlClassifier时,提示“Halcon error#7718:For this operation the cuDNN library needs to be available(see installation guide)”,但是Hdevelop环境下运行没有任何问题

此时应该是启用了GPU,会调用Cudnn第三方库,该报错应该是Cudnn版本的问题。确认下电脑是否安装多个Cudnn版本

最简单的解决办法:将Halcon18安装目录下的第三方库(D:\Program Files\MVTec\HALCON-18.05-Progress\bin\x64-win64\thirdparty)拷贝到当前程序的运行路径下,就可以解决这个问题。

2、VS下设置分类在CPU下执行,即调用算子:SetDlClassifierParam(hDLHandler, "runtime", "cpu"),提示“CPU based inference is not supported on this platform”,但是Hdevelop环境下运行没有任何问题

因为从Halcon18.11开始,是支持CPU上进行深度学习分类或检测的,那么首先要确认下电脑Halcon安装版本是否误装成17版本的?

解决办法:我出现这种错误是版本没有问题,但是因为电脑安装版本众多,所以为了怕出问题,用助手工具更新了下环境变量。但是将halcon的dll文件放到运行目录下还是存在这个问题(删除运行目录下文件,则不会出现该问题)

最终定位为运行目录下放的dll不完整导致的,依赖的dll库有:halcon.dll halconcpp.dll hcpudnn.dll。关键的是最后一个!

另:测试了下同样的数据,CPU和GPU分类的时间,GPU一张图为5-6ms,CPU一张图为15-16ms!

3、Halcon18.11版本,默认不支持中文路径(Hdevelop环境下没问题,VS下会报异常),可通过调用下面算子来进行设置支持中文解析

HalconCpp::SetHcppInterfaceStringEncodingIsUtf8(false);

Logo

昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链

更多推荐