Halcon ---C#调用时绘制区域为空,出现异常
2021/12/24 9:38:35
本文主要是介绍Halcon ---C#调用时绘制区域为空,出现异常,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
相同的算子,在Halcon中使用可以得到正常的区域,但是在Visual Studio软件C#语言使用时,得到的区域为空,在VS中区域为空,代码如下:
HOperatorSet.GenEmptyRegion(out HObject ho_EmptyRegion);
HOperatorSet.GenRectangle1(out ho_ModelROI, Row10, Col10, Row20, Col20);
HOperatorSet.TestEqualRegion(ho_EmptyRegion, ho_ModelROI, out HTuple hv_y);
查看hv_y的值,hv_y=0,表示false,不为空,hv_y=1,表示true,该区域为空
出现区域为空时,原因如下:
定义ParentROI父类 ChildROI子类
在父类中定义抽象方法 在子类中实现 其中涉及绘制ROI,然而在实践中发现,绘制出的区域被裁剪
显示不完全,就像被一个处左上角的矩形取交集一样。
解决方案:
经查halocn set_system方法其中涉及到了 设计了系统的内部宽度高度等参数,从帮助文档中,可以看到默认是128128的区域。也就是说所有超出显示范围外的图像变量都会被裁剪,其效果就相当于两区域取交集。
方案1:
在调用绘制区域之前的代码,重新设置区域的大小,我这边使用的区域为16241240,修改如下:
HOperatorSet.SetSystem(“width”, 1624);
HOperatorSet.SetSystem(“height”,1240);
方案2
在代码加载的时候,直接初始化区域,这个方案不需要考虑区域的大小,建议使用该方案
HOperatorSet.SetSystem(“clip_region”, “false”);
这篇关于Halcon ---C#调用时绘制区域为空,出现异常的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-12-06使用Microsoft.Extensions.AI在.NET中生成嵌入向量
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#