厚昌营销网站建设,常州app网站,5分钟宣传片多少钱,怎么用ps做网站效果图第十五篇 机器视觉案例 之 齿轮齿数检测 文章目录 第十五篇 机器视觉案例 之 齿轮齿数检测1.案例要求2.实现思路2.1 统计齿轮齿数使用模板匹配工具CogPMAlignTool#xff0c;并从模板匹配工具的结果集中得到每一个齿的中心点。2.2 测量距离需要知道两个坐标点#xff0c;一个…第十五篇 机器视觉案例 之 齿轮齿数检测 文章目录 第十五篇 机器视觉案例 之 齿轮齿数检测1.案例要求2.实现思路2.1 统计齿轮齿数使用模板匹配工具CogPMAlignTool并从模板匹配工具的结果集中得到每一个齿的中心点。2.2 测量距离需要知道两个坐标点一个是每一个齿的坐标一个是齿轮中心坐标齿的坐标已经获得中心坐标需要一个找圆工具CogFindCircleTool通过找拟合圆得到圆心找圆工具需要一个圆心的大致坐标位置因此再使用一个模板匹配工具最后使用点点距离测量工具测得距离2.3 距离的输出要求按照每行五个输出需要对输出的坐标进行处理代码如下 3.使用控件3.1 模板匹配工具 —— CogPMAlignTool3.2 找圆工具 —— CogFindCircleTool3.3 点点距离工具 —— CogDistancePointPointTool 4.代码逻辑5.实现效果6.知识点总结6.1 找圆工具的参数 1.案例要求
检测齿轮齿数测量每一个齿中心到齿轮中心的距离并将结果按照每行五个的格式输出
2.实现思路
2.1 统计齿轮齿数使用模板匹配工具CogPMAlignTool并从模板匹配工具的结果集中得到每一个齿的中心点。
2.2 测量距离需要知道两个坐标点一个是每一个齿的坐标一个是齿轮中心坐标齿的坐标已经获得中心坐标需要一个找圆工具CogFindCircleTool通过找拟合圆得到圆心找圆工具需要一个圆心的大致坐标位置因此再使用一个模板匹配工具最后使用点点距离测量工具测得距离
2.3 距离的输出要求按照每行五个输出需要对输出的坐标进行处理代码如下
double xi%5*100100; double yi/5*50100;
3.使用控件
3.1 模板匹配工具 —— CogPMAlignTool
模板匹配工具一用来获得圆心大致位置给找圆工具 模板匹配工具二用来找到每一个齿需要调整旋转角度与查找概数
3.2 找圆工具 —— CogFindCircleTool
添加终端给坐标调整参数 旋转角度为360°卡尺数量数量越多找的圆越精确合适的数量即可过大的数量会导致工具卡顿搜索方向向内或向外这里是向外 3.3 点点距离工具 —— CogDistancePointPointTool
在代码中循环给工具赋值
4.代码逻辑 CogPMAlignTool pma mToolBlock.Tools[CogPMAlignTool2]as CogPMAlignTool;CogDistancePointPointTool dis mToolBlock.Tools[CogDistancePointPointTool1]as CogDistancePointPointTool;CogFindCircleTool fct mToolBlock.Tools[CogFindCircleTool1]as CogFindCircleTool;int count pma.Results.Count;labels new CogGraphicLabel[count];Label.SetXYText(200,50,一共有count.ToString()个);Label.Color CogColorConstants.Magenta;Label.Font new Font(楷体,20);for(int i 0;i count;i){CogGraphicLabel labelnew CogGraphicLabel();double x1 pma.Results[i].GetPose().TranslationX;double y1 pma.Results[i].GetPose().TranslationY;double X fct.Results.GetCircle().CenterX;double Y fct.Results.GetCircle().CenterY;dis.StartX x1;dis.StartY y1;dis.EndX X;dis.EndY Y;dis.Run();double distance dis.Distance;double xi%5*100100;double yi/5*50100;label.SetXYText(x, y, 距离distance.ToString(F0));label.Color CogColorConstants.Orange;labels[i] label;}5.实现效果 6.知识点总结
6.1 找圆工具的参数
卡尺数量指参与找圆的圆周上半径方向的找区分点的数量。这些点用于拟合圆数量越多拟合的圆可能越准确但计算量也会相应增加。搜索长度卡尺搜索区域的长度即沿圆周方向搜索的范围。这个参数决定了搜索的精细程度。投影长度卡尺搜索区域的宽度即径向搜索的范围。它影响搜索的敏感度和准确性。搜索方向搜索可以从内向外或由外向内进行哪个方向区分度明显就选哪个方向。预期圆弧参数用户可以根据需要设置预期圆弧的中心点、半径、起始角度及角度范围等以帮助工具更准确地找到圆。忽略点数在拟合过程中可以忽略掉参与拟合点中误差过大的点。通常可以选取总点数的5%作为忽略点以提高拟合的准确性。