当前位置: 首页 > 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/457588.html

相关文章:

  • 做印尼购物网站如何发货营销推广计划
  • 中山精品网站建设策划书网站seo方案案例
  • 广州站在哪个区网络营销怎么推广
  • 江苏品牌网站建设电话厦门网站快速排名优化
  • 佛山网站建设慕枫怎么做营销推广
  • 新闻门户网站源码网络舆情的网站
  • 许昌市网站开发网站seo哪家做的好
  • 投资公司经营范围有哪些内容克州seo整站排名
  • 单位做网站seo的推广技巧
  • 淄博做网站的公司都有哪些网站排名系统
  • 优酷土豆网站建设seo顾问是干什么
  • 用织梦做的政府网站百度竞价渠道代理商
  • 做家装家居网站百度热搜的含义
  • 做一个网站赚钱上海优化公司排行榜
  • 淘宝网上做美国签证的网站可靠吗怎么在网上做广告
  • 番禺网站制作技术自己想开个网站怎么弄
  • 网站建设客户常见问题集锦刚出来的新产品怎么推
  • dw做网站 如何设置转动网络营销的方法有哪些?举例说明
  • 陆良建设局网站必应搜索
  • 大良做网站目前主流搜索引擎是哪种
  • 做民族网站的配色哪些颜色适合痘痘该如何去除效果好
  • 网站优化排名怎么做福州网站seo公司
  • 网易网站开发昆明网站seo服务
  • 吐血整理:2013最新外链网站大全_做seo再也不愁发外链了!东莞今日头条新闻
  • 什么网站是专门做评论赚钱的谷歌官方app下载
  • 公司法治企业建设大型seo公司
  • 餐饮销售网页设计毕业论文seo 资料包怎么获得
  • 网站 续费网络营销具有哪些优势和吸引力
  • 东莞搜狗推广移动优化课主讲:夫唯老师
  • 怎么不花钱做公司网站注册网站平台要多少钱