当前位置: 首页 > news >正文

施工企业 调研报告泉州优化公司

施工企业 调研报告,泉州优化公司,龙华优化公司,东莞加盟网站建设废话不多说上源码 觉得帖子有用给点个赞哈 先来个效果图 下边的是源码#xff0c;自己新建一个文件粘贴进去#xff0c;包含到您现在的项目 中。这串源码后边是使用方法。 using System; using System.Collections.Generic; using System.Linq; using System.Text; usin…废话不多说上源码 觉得帖子有用给点个赞哈 先来个效果图 下边的是源码自己新建一个文件粘贴进去包含到您现在的项目 中。这串源码后边是使用方法。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using HalconDotNet;public class CircleMeasure{/// summary/// 检测形态信息/// /summarypublic Metrology_INFO m_MetrologyInfo;//圆形测量参数对象public Circle_INFO m_CircleInfo;//圆形测量基准圆形参数对象public Circle_INFO m_OutCircleInfo;//圆形测量完成参数对象#region 卡尺圆形测量参数信息/// summary/// 圆信息/// /summarypublic struct Circle_INFO{public double Row_center, Column_center, Radius, StartPhi, EndPhi;public string PointOrder;}/// summary/// 测量信息/// /summarypublic struct Metrology_INFO{public double Length1, Length2, Threshold, MeasureDis;public HTuple ParamName, ParamValue;public int PointsOrder;}#endregion/// 圆形测量参数对象/// /// /summary/// param name_length1/长/2/// param name_length2/宽/2/// param name_threshold/阈值/// param name_measureDis/间隔/// param name_paraName/参数名/// param name_paraValue/参数值/// param name_pointsOrder/点顺序public void MetrologyINFOSet(double _length1, double _length2, double _threshold, double _measureDis, HTuple _paraName, HTuple _paraValue, int _pointsOrder){m_MetrologyInfo.Length1 _length1; // 长/2m_MetrologyInfo.Length2 _length2; // 宽/2m_MetrologyInfo.Threshold _threshold; // 阈值m_MetrologyInfo.MeasureDis _measureDis; //间隔m_MetrologyInfo.ParamName _paraName; //参数名m_MetrologyInfo.ParamValue _paraValue; //参数值m_MetrologyInfo.PointsOrder _pointsOrder; //点顺序 0位默认1 顺时针2 逆时针}/// 圆形测量基准圆形参数对象参数设置/// /// /summary/// 中心Y坐标m_Row_center/中心Y坐标/// 中心X坐标m_Column_center/中心X坐标/// 半径m_Radius/半径/// param namem_StartPhi/开始角度/// param namem_EndPhi/结束角度/// param namem_PointOrder/点顺序public void CircleINFOSet(double m_Row_center, double m_Column_center, double m_Radius, double m_StartPhi, double m_EndPhi, string m_PointOrder){m_CircleInfo.Row_center m_Row_center;m_CircleInfo.Column_center m_Column_center;m_CircleInfo.Radius m_Radius;m_CircleInfo.StartPhi m_StartPhi;m_CircleInfo.EndPhi m_EndPhi;m_CircleInfo.PointOrder m_PointOrder;//点顺序 0位默认1 顺时针2 逆时针}/// summary/// 检测圆/// /summary/// param nameinImage输入图像/param/// param nameinCircle输入圆/param/// param nameinMetrology输入形态学/param/// param nameoutCircle输出圆/param/// param nameoutR输出行坐标/param/// param nameoutC输出列坐标/param/// param nameoutMeasureXLD输出检测轮廓/parampublic void MeasureCircle(HImage inImage, Circle_INFO inCircle, Metrology_INFO inMetrology, out Circle_INFO outCircle, out HTuple outR, out HTuple outC, out HXLDCont outMeasureXLD){HMetrologyModel hMetrologyModel new HMetrologyModel();try{outCircle new Circle_INFO();HTuple CircleResult new HTuple();HTuple CircleInfo new HTuple();CircleInfo.Append(new HTuple(new double[] { inCircle.Row_center, inCircle.Column_center, inCircle.Radius }));hMetrologyModel.AddMetrologyObjectGeneric(new HTuple(circle), CircleInfo, new HTuple(inMetrology.Length1),new HTuple(inMetrology.Length2), new HTuple(1), new HTuple(inMetrology.Threshold), inMetrology.ParamName, inMetrology.ParamValue);hMetrologyModel.ApplyMetrologyModel(inImage);outMeasureXLD hMetrologyModel.GetMetrologyObjectMeasures(all, all, out outR, out outC);CircleResult hMetrologyModel.GetMetrologyObjectResult(new HTuple(all), new HTuple(all), new HTuple(result_type), new HTuple(all_param));if (CircleResult.TupleLength() 3){outCircle.Row_center CircleResult[0].D;outCircle.Column_center CircleResult[1].D;outCircle.Radius CircleResult[2].D;}hMetrologyModel.Dispose();}catch (Exception ex){outCircle new Circle_INFO();outR new HTuple();outC new HTuple();outMeasureXLD new HXLDCont();hMetrologyModel.Dispose();//异常写入日志文件// MessageBox.Show(ex.Message);}}/// summary/// 根据位置变换圆/// /summary/// param namehomMat变换关系/param/// param namecircle圆/parampublic static void AffineCircle(HHomMat2D homMat, ref Circle_INFO circle){double row, col, phi;homMat.AffineTransPixel(circle.Row_center, circle.Column_center, out row, out col);phi ((HTuple)homMat[0]).TupleAcos().D;circle.Row_center row;circle.Column_center col;circle.StartPhi phi;circle.EndPhi phi;}}接下来介绍使用方法 //new个CircleMeasure的对象出来 public CircleMeasure mCircleMeasure new CircleMeasure(); //卡尺圆形测量数据初始化try {mCircleMeasure.CircleINFOSet(0, 0, 50, 0, 2 * 3.14, positive);mCircleMeasure.MetrologyINFOSet(20,20,30,5,measure_distance,1,0); }catch { }开始进行测量//定义各个需要的变量HTuple outR null, outC null;HTuple hv_Row null, hv_Column null, hv_Radius null;HTuple hv_Row11 null, hv_Column11 null, hv_Row12 null, hv_Column12 null, hv_Angle1 null, hv_Angle2 null;HXLDCont m_MeasureXLD new HXLDCont();//LeftUpCamImageDisplay是halcon显示图像窗口控件名称LeftUpCamImageDisplay.HalconWindow.SetColor(red);LeftUpCamImageDisplay.HalconWindow.SetDraw(margin);//[DrawCircleMod介绍](https://blog.csdn.net/cashmood/article/details/99756580)HOperatorSet.DrawCircleMod(LeftUpCamImageDisplay.HalconWindow,1296 ,972 ,140 ,out hv_Row, out hv_Column, out hv_Radius);//设置测量参数mCircleMeasure.CircleINFOSet(hv_Row, hv_Column, hv_Radius, hv_Angle1, hv_Angle2, positive);mCircleMeasure.MetrologyINFOSet(hv_Radius / 5, hv_Radius / 50, 30, 5, new HTuple((measure_distance)),(new HTuple(10)), 0);mCircleMeasure.MeasureCircle(LeftUpCamCurrentImg, mCircleMeasure.m_CircleInfo, mCircleMeasure.m_MetrologyInfo, out mCircleMeasure.m_OutCircleInfo, out outR, out outC, out m_MeasureXLD);//显示测量结果LeftUpCamImageDisplay.HalconWindow.DispObj(LeftUpCamCurrentImg);LeftUpCamImageDisplay.HalconWindow.SetColor(blue);LeftUpCamImageDisplay.HalconWindow.SetDraw(margin);m_MeasureXLD.DispObj(LeftUpCamImageDisplay.HalconWindow);LeftUpCamImageDisplay.HalconWindow.SetTposition(50, 10);LeftUpCamImageDisplay.HalconWindow.WriteString( CenterRow: mCircleMeasure.m_OutCircleInfo.Row_center.ToString() CenterCol: mCircleMeasure.m_OutCircleInfo.Column_center.ToString() Radius:: mCircleMeasure.m_OutCircleInfo.Radius.ToString());m_MeasureXLD.Dispose();
http://www.yutouwan.com/news/486062/

相关文章:

  • reactjs wordpress哈尔滨seo优化排名推广
  • 免费做外贸的网站app下载安装注册
  • 苏州网站的优化免费域名模板建站
  • 有趣的个人网站python基础教程入门
  • 求个网站能用的wordpress vr
  • 美业网站建设重庆一般建一个网站需要多少钱
  • 网站制作培训班织梦网站首页怎么修改
  • 西二旗网站建设天长网站制作
  • 鞋网站模版企业官网推广
  • 网上做兼职网站正规搜索引擎排名谷歌
  • 静态网站怎么建设wordpress进入文字版
  • cms适合做什么网站网站建设 后端前端
  • 卖钢材做哪个宣传网站如果提高网站
  • 营销型网站首页模板网页设计师培训排行榜
  • 四川省广安建设局网站久久网站建设
  • 手机网站制作 尺寸成都建设路小学网站
  • 同域名网站改版需要把之前网站里的文章都拷贝过来吗?创建小型网站的步骤
  • 宁波网站建设h5工业互联网平台有哪些
  • 成都快速做网站公司品牌宣传方案
  • 沂源网站开发利用淘宝视频服务做视频网站
  • vue 实现网站开发如何建网站赚取佣金
  • 泉州网站建设公司招聘销售合肥软件建设
  • 建立什么本地网站赚钱嵌入式软件开发培训机构
  • wordpress添加背景音乐南京seo网站优化
  • wordpress 产品网站网站关键词排名全掉了
  • 用vs做网站界面网站站内推广怎么做
  • 水印在线制作网站华能集团网站建设方案项目分析
  • 商城网站如何做建网站需要什么服务器
  • 装饰公司看的设计网站旅游电子商务网站建设规划
  • 建设网站的建议中国互联网设计公司