基于语言分析的视觉算法包开发方法技术

技术编号:30909485 阅读:14 留言:0更新日期:2021-11-22 23:56
本发明专利技术涉及一种基于语言分析的视觉算法包开发方法,包括使用图像算法框架和语言完成图像处理逻辑的编写和仿真测试,生成特有语言源码;根据特有语言的种类,生成的特有语言源码翻译并保存为一种自定义的通用代码格式文件;对源码中使用扩展模块的语句进行有效性校验,提取出其中的算法参数信息并写为算法参数Xml文件生成可编译源码;将可编译源码与源码语言类型匹配的用于编译成dll的源码解决方案模板进行合并,形成一个完整的、可使用编译器编译的源码解决方案生成算法DLL后形成一个算法包。本发明专利技术降低算法开发人员的技能要求和培养难度。提升算法项目开发效率,降低项目维护成本。降低企业人力成本,提升人力招聘效率。提升人力招聘效率。提升人力招聘效率。

【技术实现步骤摘要】
基于语言分析的视觉算法包开发方法


[0001]本专利技术涉及视觉算法
,尤其是一种基于语言分析的视觉算法包开发方法。

技术介绍

[0002]目前,现有技术涉及技术种类过多,对开发人员提出较高要求,需要开发人员精通C++(或C#),精通Windows开发原理,精通视觉算子使用,很少有算法人员能同时满足上述要求。视觉算法开发存在开发时间长,对开发人员知识面、开发能力、调试能力、经验要求高,同时对光学等专业有要求,培养一个达标的开发人员需要较长的时间周期。非标定制项目多,算法源码维护困难视觉行业的非标项目比较较大,在传统开发模式下每个项目都会产生非常多的算法源码,由于开发人员编码能力参差不齐等原因,会导致大量代码在人员更替后就难以维护,因为源码质量、说明文档缺失等问题导致只能重新开发的情况经常出现。源码质量参差不齐导致无法公司无法进行标准化技术积累难以阅读、无人能维护的源码导致标准化工作无法开展。

技术实现思路

[0003]本专利技术要解决的技术问题是:提供一种基于语言分析的视觉算法包开发方法,将第三方图像算法和其特有语言装为符合特定图像算法接口的算法包,解决算法使用一致性问题,降低算法开发难度,提升开发效率。
[0004]本专利技术解决其技术问题所采用的技术方案是:一种基于语言分析的视觉算法包开发方法,包括以下步骤,
[0005]1)使用图像算法框架和语言完成图像处理逻辑的编写和仿真测试,生成语言源码;
[0006]2)在步骤1)的语言源码中,使用为该语言定制的扩展模块完成对算法参数的输入输出声明和使用;
[0007]3)根据语言的种类,用语言翻译模块将步骤2)生成的语言源码翻译并保存为一种自定义的通用代码格式文件;
[0008]4)使用解析模块分析步骤3)生成的通用代码格式文件,对源码中使用扩展模块的语句进行有效性校验,提取出其中的算法参数信息并写为算法参数Xml文件;
[0009]5)对步骤1)的语言源码使用代码转换功能,生成可编译源码;
[0010]6)将步骤5)生成的可编译源码与源码语言类型匹配的用于编译成dll的源码解决方案模板进行合并,形成一个完整的、可使用编译器编译的源码解决方案;
[0011]7)将步骤6)生成的源码解决方案编译生成算法DLL;
[0012]8)将步骤4)生成的算法参数XML文件和步骤7)生成的算法DLL按照约定的目录结构存放,形成一个算法包。
[0013]进一步的说,本专利技术所述的步骤1)中的语言包括halcon或vision pro。
[0014]再进一步的说,本专利技术所述的步骤5)中,可编译源码为C++或C#。
[0015]本专利技术的有益效果是,解决了
技术介绍
中存在的缺陷,降低了算法开发人员的技能要求和培养难度;提升了算法项目开发效率,降低了项目维护成本;降低了企业人力成本,提升了人力招聘效率。
附图说明
[0016]图1是本专利技术的流程示意图。
具体实施方式
[0017]现在结合附图和优选实施例对本专利技术作进一步详细的说明。这些附图均为简化的示意图,仅以示意方式说明本专利技术的基本结构,因此其仅显示与本专利技术有关的构成。
[0018]如图1所示的一种基于语言分析的视觉算法包开发方法,通过制定视觉算法包规范,标准化开发流程和使用的技术栈,提供开发工具提升开发人员的工作效率。
[0019]本专利技术的视觉算法包开发工作包括:图像处理源码的编写,与算法框架接口对接源码的编写,将图像处理源码与算法框架接口对接源码转为同类型源码合并称为一个视觉算法源码包,将视觉算法源码包编译为dll,根据算法中参数的使用情况为算法dll编写符合算法框架规范的配置文件这几个组成部分。
[0020]图像处理源码一般会使用第三方视觉图像算法供应商提供的开发工具开发,其特点是供应商提供比较完备、专业的图像处理算子,专业的开发商还会提供简单易用的专业编程语言和基成了仿真调试功能的IDE,开发人员使用开发工具指定的编程语言和IDE用图像处理算子实现完整的图像处理逻辑,开发人员在开发过程中使用便捷的图像处理算法开发仿真调试功能对图像处理逻辑进行验证和排查错误。
[0021]与算法框架对接一般使用微软的VS系列开发工具,常见用与算法开发的有C++和C#两种开发语言,开发人员使用该编程语言+算法框架提供的标准接口规范编写符合视觉算法包DLL要求的解决方案项目。在该解决方案中,涉及图像处理逻辑的代码部分由上述图像处理源码转换得到(开发商会提供转换工具),开发人员用C++或C#将算法框架提供的标准接口规范和图像处理源码按照接口要求进行对接,最终编译生成视觉算法DLL。
[0022]一个视觉算法包由视觉算法DLL和描述其视觉参数、输入输出数据的XML组成,开发人员需要根据算法框架中的算法XML规范,结合视觉算法DLL中的参数使情况手工编写出该XML集合。
[0023]最后按照算法框架中的视觉算法包规范,将视觉算法DLL和算法XML集合按照特定的文件名、特定的目录结构组织存放,形成一个完整的视觉算法包。
[0024]本专利技术的技术方案为:
[0025]1)、用户用特定的图像算法框架和其特有语言(比如halcon、vision pro等)完成图像处理逻辑的编写和仿真测试,生成特有语言源码;
[0026]2)、在步骤1)的特有语言源码中,用户使用为该语言定制的扩展模块完成对算法参数的输入输出声明和使用;
[0027]3)、根据特有语言的种类,用专用语言翻译模块将步骤2)生成的特有语言源码翻译并保存为一种自定义的通用代码格式文件;
[0028]4)、使用解析模块分析步骤3)生成的通用代码格式文件,对源码中使用扩展模块的语句进行有效性校验,提取出其中的算法参数信息并写为算法参数Xml文件;
[0029]5)、对步骤1)的特有语言源码使用代码转换功能,生成可编译源码(比如C++、C#);
[0030]6)、将步骤5)生成的可编译源码与源码语言类型匹配的用于编译成dll的源码解决方案模板进行合并,形成一个完整的、可使用编译器编译的源码解决方案;
[0031]7)、将步骤6)生成的源码解决方案编译生成算法DLL;
[0032]8)、将步骤4)生成的算法参数XML文件和步骤7)生成的算法DLL按照约定的目录结构存放,形成一个算法包。
[0033]本专利技术针对涉及技术种类过多,对开发人员提出较高要求的问题,借助开发工具的帮助,让开发人员只需要掌握专业的图像处理系统(比如halcon、vision pro)算子使用及其提供的开发语言,就可以快速进行算法包开发。
[0034]本专利技术针对视觉算法包开发开发时间长的问题,同样借助开发工具的帮助,开发人员只需要专注于基于专业图像处理系统(比如halcon、vision pro)提供的开发语言开发图像处理逻辑源码,验证、仿真测试等其他所有工作都由工具辅助完成。
[0035]本专利技术针对非标定制本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于语言分析的视觉算法包开发方法,其特征在于:包括以下步骤,1)使用图像算法框架和语言完成图像处理逻辑的编写和仿真测试,生成语言源码;2)在步骤1)的语言源码中,使用为该语言定制的扩展模块完成对算法参数的输入输出声明和使用;3)根据语言的种类,用语言翻译模块将步骤2)生成的语言源码翻译并保存为一种自定义的通用代码格式文件;4)使用解析模块分析步骤3)生成的通用代码格式文件,对源码中使用扩展模块的语句进行有效性校验,提取出其中的算法参数信息并写为算法参数Xml文件;5)对步骤1)的语言源码使用代码转换功能,生成可编译源码;6)将步骤...

【专利技术属性】
技术研发人员:都卫东方志斌顾艺光蒋建清
申请(专利权)人:征图智能科技江苏有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1