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

上海网络网站建设曼联对利物浦新闻

上海网络网站建设,曼联对利物浦新闻,论坛网站建设,手机网站建设方法【机械视觉】C#VisionPro联合编程———【五、硬币检测小项目实现(C#VisionPro联合编程和csv文件格式操作)】 项目介绍 总共有十二张检测的图片,当点击检测按钮时检测当前展示的图片并且将检测效果展示在表格中,当点击上一页或下一页时换检测图片&…

【机械视觉】C#+VisionPro联合编程———【五、硬币检测小项目实现(C#+VisionPro联合编程和csv文件格式操作)】

项目介绍

总共有十二张检测的图片,当点击检测按钮时检测当前展示的图片并且将检测效果展示在表格中,当点击上一页或下一页时换检测图片,点击保存本地时通过csv文件格式将表格数据保存,当下一次运行时将数据读取出来并且展示在表格中。

此项目通过异步进行优化,在加载时改变了以往卡顿的情况,加载变得流畅。

此项目检测时的逻辑代码是在visionPro中完成的。

所用的控件:

  • cogRecordDisplay
  • dataGridView
  • button
  • label

实现项目

第一步、创建toolblock工具,并且在其中训练检测工具。(并且保存)

三个匹配工具分别匹配一元一角五角,然后将匹配数量赋值给结果分析工具,通过结果分析工具计算出总和。

其中用到了结果分析工具(CogResultsAnalysisTool1),一下是构造:

第二步、创建winform项目,并且搭建界面:

第三步、编写代码:(以下是源码)

public partial class Form1 : Form
{public Form1(){InitializeComponent();}CogToolBlock tb = new CogToolBlock(); int numPage = 1; // 图片页数string fileName = "./硬币/"; // 路径/// <summary>/// 加载/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void Form1_Load(object sender, EventArgs e){Task.Run(() =>{tb = (CogToolBlock)CogSerializer.LoadObjectFromFile("./硬币检测.vpp");});this.Invoke(new Action(() => {ConvertImage();this.labelPageMaxNum.Text = "最大页数为: 12";string[][] strings = csvSave("./data.csv");if (strings!=null){for (int i = 1; i < strings.Length; i++){this.dataGridView1.Rows.Add(strings[i]);}}}));}/// <summary>/// 检测/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void buttonDetection_Click(object sender, EventArgs e){tb.Inputs["OutputImage"].Value = this.cogRecordDisplay1.Image;tb.Run();this.cogRecordDisplay1.Record = tb.CreateLastRunRecord().SubRecords[0];CogPMAlignTool pma1 = tb.Tools[1] as CogPMAlignTool;CogPMAlignTool pma2 = tb.Tools[2] as CogPMAlignTool;CogPMAlignTool pma3 = tb.Tools[3] as CogPMAlignTool;this.dataGridView1.Rows.Add(new string[] { DateTime.Now.ToString(), "凹凸曼", pma1.Results.Count.ToString(),pma2.Results.Count.ToString(),pma3.Results.Count.ToString(), tb.Outputs["YuanCount"].Value.ToString() });}/// <summary>/// 上一页/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void buttonTopPage_Click(object sender, EventArgs e){if (numPage>1){numPage -= 1;ConvertImage();}else{System.Windows.Forms.MessageBox.Show("当前为第一页");}}/// <summary>/// 下一页/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void buttonBottomPage_Click(object sender, EventArgs e){if (numPage < 12){numPage += 1;ConvertImage();}else{System.Windows.Forms.MessageBox.Show("当前为最后一页");}}/// <summary>/// 换图片/// </summary>private void ConvertImage(){Bitmap bitmap = new Bitmap(fileName + numPage + ".bmp");this.cogRecordDisplay1.Image = new CogImage24PlanarColor(bitmap);this.cogRecordDisplay1.Fit();this.labelPageShow.Text = $"第{numPage}页";}/// <summary>/// 保存本地/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void buttonSave_Click(object sender, EventArgs e){if(this.dataGridView1.Rows.Count < 1){System.Windows.Forms.MessageBox.Show("没有数据");return;}using (FileStream fs = new FileStream("./data.csv", FileMode.Create))using (StreamWriter sw = new StreamWriter(fs, Encoding.UTF8)){sw.WriteLine("测量时间,管理员,一元个数,一角个数,五角个数,总和");for (int i = 0;i<this.dataGridView1.Rows.Count;i++){StringBuilder sb = new StringBuilder();for (int j = 0; j < this.dataGridView1.Columns.Count; j++){if(j== this.dataGridView1.Columns.Count-1) sb.Append(this.dataGridView1.Rows[i].Cells[j].Value);else sb.Append(this.dataGridView1.Rows[i].Cells[j].Value+",");}sw.WriteLine(sb.ToString());}System.Windows.Forms.MessageBox.Show("保存成功");            }}private string[][] csvSave(string filename){try{using (StreamReader sr = new StreamReader(filename, Encoding.UTF8)){string strVal = sr.ReadToEnd().Trim();string[] vals = strVal.Split('\n');string[][] lines = new string[vals.Length][];for (int i = 0; i < vals.Length; i++){lines[i] = vals[i].Split(',');}return lines;}}catch (Exception ex){System.Windows.Forms.MessageBox.Show(ex.Message);}return null;}}

http://www.dtcms.com/wzjs/315052.html

相关文章:

  • 宁波建网站哪家好用点二手交易平台
  • 做网站的公司什么动力泰安做网站公司
  • 国外购物网站推荐怎么开自己的网站
  • 网站设计要注意什么优秀网页设计赏析
  • 手机网站建设培训淘宝指数在哪里查询
  • 江浙沪做网站的公司江门seo外包公司
  • 商城网站互动性网络推广平台软件
  • 咖啡网站建设市场分析nba排名榜
  • flash 网站 模板2023年最新新闻摘抄
  • Myeclipse怎么做网站电脑突然多了windows优化大师
  • wordpress万能网站为什么要seo
  • cms企业网站模板网络营销课程个人总结范文
  • 购物网站 app某网站seo诊断分析和优化方案
  • 学生做兼职去哪个网站明天上海封控16个区
  • wordpress顶部广告免费seo视频教程
  • 东莞怎么制作网站seo优化信
  • 品牌网站什么意思深圳今天重大事件新闻
  • 了解当前各类网站建设价格免费手机网页制作
  • 手机搭建电脑做的网站云优化
  • 商业平台网站开发搜索引擎优化的基本原理
  • 注册网站需要什么程序佛山网站建设
  • 制作网站页面怎么做百度有哪些app产品
  • 郑州网站建设知名公司排名肇庆seo外包公司
  • 黔江城乡建设委员会的网站网页设计与制作软件有哪些
  • 17网站一起做网店靠谱吗石家庄百度快速排名优化
  • 科技木是什么材料seo编辑招聘
  • 网站建站报价单seo优化在线诊断
  • 做医疗设备的网站网络软文投放
  • 张掖艺能网站建设seo整站优化技术培训
  • 网站建设太仓亚马逊跨境电商