设置首页收藏本站
开启左侧

halcon 改变了函数的参数报这个错,请问是什么原因?

[复制链接]
youyiyang 发表于 2021-10-11 11:52:46 | 显示全部楼层 |阅读模式
2.jpg 1.jpg

halcon 改变了函数的参数报这个错,请问是什么原因?
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2021-10-11 12:47:38 | 显示全部楼层
Find_Nail_2(Image::AAA:) 你这个函数只有两个参数呢?你下图Line12里面是5个参数。
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| youyiyang 发表于 2021-10-11 20:33:05 | 显示全部楼层
请问怎么修改参数及其数量?
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2021-10-11 21:22:52 | 显示全部楼层
youyiyang 发表于 2021-10-11 20:33
请问怎么修改参数及其数量?

任何外部函数上面右键“显示函数”(alt+return),进入函数后右上角“编辑当前函数的接口和文档”。 微信截图_20211011212234.png
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| youyiyang 发表于 2021-10-12 16:58:51 | 显示全部楼层
public void Recognize(HImage image)
                {
                        _halcon.Find_Nail_2(image, UpLeftY, UpLeftX, DownRightY, DownRightX, out HTuple row, out HTuple col);


                        var len = row.Length;
                        Nail_x = new int[len];
                        Nail_y = new int[len];

                        for (int i = 0; i < len; i++)
                        {
                                Nail_x[i] = (int)((double)col[i]);
                                Nail_y[i] = (int)((double)row[i]);
                        }
                }
C#的程序是这样的,那么halcon上面应该怎么改写呢?
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| youyiyang 发表于 2021-10-12 17:03:18 | 显示全部楼层
在C#的程序里,
HOperatorSet.ShapeTrans(ho_SelectedRegions, out ho_RegionTrans, "inner_circle");
原来是"outer_circle",我手动改成inner_circle后,整个工程不能识别了,请问这是什么原因?
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2021-10-12 17:38:03 | 显示全部楼层
youyiyang 发表于 2021-10-12 16:58
public void Recognize(HImage image)
                {
                        _halcon.Find_Nail_2(image, UpLeftY, UpLeftX, DownRightY,  ...

Halcon参数签名:
Find_Nail_2(image :: UpLeftY, UpLeftX, DownRightY, DownRightX : row, col)
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2021-10-12 17:40:54 | 显示全部楼层
youyiyang 发表于 2021-10-12 17:03
在C#的程序里,
HOperatorSet.ShapeTrans(ho_SelectedRegions, out ho_RegionTrans, "inner_circle");
原来 ...

HOperatorSet.ShapeTrans(ho_SelectedRegions, out ho_RegionTrans, "inner_circle");
上面代码正常,只改参数是不会出错的,检查下你的双引号或其他符号是否正常吧!
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| youyiyang 发表于 2021-10-14 11:18:20 | 显示全部楼层
111.jpg

edges_image (ImageReduced, ImaAmp, ImaDir, 'canny', 1, 'nms', 10, 20)
threshold (ImaAmp, Region1, 1, 255)
connection (Region1, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, ['outer_radius','anisometry','area'], 'and', [10,1,50], [30,3.9,300])
shape_trans (SelectedRegions, RegionTrans, 'outer_circle')
dilation_circle (RegionTrans, RegionDilation,5.5)
union1 (RegionDilation, RegionUnion)
reduce_domain (Image, RegionUnion, ImageReduced2)
请问程序哪里可以调整灰度值,可让右上角红色框内的两个很淡的圆形钉子识别出来

奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2021-10-14 11:31:37 | 显示全部楼层
youyiyang 发表于 2021-10-14 11:18
edges_image (ImageReduced, ImaAmp, ImaDir, 'canny', 1, 'nms', 10, 20)
threshold (ImaAmp, Region1,  ...
请单独开贴提问,不要在别人楼下提问,这种方式非常不好,这次警告一次!

检查下灰度值是否包含。
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表