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

出站链接对网站有什么影响无人售货机

出站链接对网站有什么影响,无人售货机,制作网站管理系统,wordpress 导航模板一、效果图 二、图像二值化的作用 二值化是图像处理中常用的一种方法,其作用是将灰度图像转换为二值图像,即将图像中的像素点根据其灰度值分成两类:黑色和白色。这种处理方法可以帮助我们更清晰地识别图像中的目标,简化图像的复杂…

一、效果图

在这里插入图片描述

二、图像二值化的作用

二值化是图像处理中常用的一种方法,其作用是将灰度图像转换为二值图像,即将图像中的像素点根据其灰度值分成两类:黑色和白色。这种处理方法可以帮助我们更清晰地识别图像中的目标,简化图像的复杂度,提高图像的处理速度和准确性。

三、实现思路

1、获取框选的图片,进行截图

<div><canvasref="grayCanvas":width="canvasProp.width":height="canvasProp.height"></canvas><canvasref="binaryCanvas":width="canvasProp.width":height="canvasProp.height"></canvas></div><!-- 隐藏的 canvas --><canvasref="hiddenCanvas":width="canvasProp.width":height="canvasProp.height"style="display: none;"></canvas>// 根据框选的数据,对原图进行截图getCanvasImageData() {const viewportTransform = this.fabricCanvas.viewportTransform;const zoom = this.fabricCanvas.getZoom();let selectedCoords = null;this.fabricCanvas.getObjects().forEach(rect => {const coords = [];const points = rect.get("aCoords");Object.keys(points).forEach(key => {let point = points[key];const actualX = (point.x - viewportTransform[4]) / zoom;const actualY = (point.y - viewportTransform[5]) / zoom;coords.push([Math.round(actualX), Math.round(actualY)]);});// 假设只有一个矩形对象,我们只需获取一个对象的坐标selectedCoords = coords;});if (selectedCoords) {// 获取矩形区域的最小和最大坐标const minX = Math.min(...selectedCoords.map(coord => coord[0]));const minY = Math.min(...selectedCoords.map(coord => coord[1]));const maxX = Math.max(...selectedCoords.map(coord => coord[0]));const maxY = Math.max(...selectedCoords.map(coord => coord[1]));const width = maxX - minX;const height = maxY - minY;// 从隐藏的 canvas 中获取选中区域的图像数据const ctx = this.$refs.hiddenCanvas.getContext("2d");return ctx.getImageData(minX, minY, width, height);}return null;},

页面中要有3个canvas,grayCanvas 画灰度图片,binaryCanvas画二值化图片,hiddenCanvas 画原始的图片便于截图

2、对图片进行灰度处理
转化为灰度图片,放在灰度画布中

  convertToGrayScale(imageData) {const data = imageData.data;for (let i = 0; i < data.length; i += 4) {const avg = 0.3 * data[i] + 0.59 * data[i + 1] + 0.11 * data[i + 2];data[i] = avg;data[i + 1] = avg;data[i + 2] = avg;}return imageData;},applyGrayScale() {const imageData = this.getCanvasImageData();const grayImageData = this.convertToGrayScale(imageData);const grayCtx = this.$refs.grayCanvas.getContext("2d");grayCtx.putImageData(grayImageData, 0, 0);this.applyThreshold();},

3、拖动滑块,根据阈值对图片进行二值化处理

    applyThreshold() {const grayCtx = this.$refs.grayCanvas.getContext("2d");const grayImageData = grayCtx.getImageData(0,0,this.canvasProp.width,this.canvasProp.height);const data = grayImageData.data;for (let i = 0; i < data.length; i += 4) {const avg = data[i];const value = avg > this.threshold ? 255 : 0;data[i] = value;data[i + 1] = value;data[i + 2] = value;}const binaryCtx = this.$refs.binaryCanvas.getContext("2d");binaryCtx.putImageData(grayImageData, 0, 0);},

4、添加滑块移动的监听

   this.fabricCanvas.on("object:modified", this.applyGrayScale);this.fabricCanvas.on("object:added", this.applyGrayScale);this.fabricCanvas.on("object:removed", this.applyGrayScale);
http://www.yayakq.cn/news/606010/

相关文章:

  • 山西网站开发有限公司中国建设银行网站江苏分行
  • 建设主题网站一般要经历的顺序邯郸建设网站
  • 医疗网站seo怎么做wordpress的文章如何备份
  • 北京正规做网站公司游戏是怎么开发出来的
  • 网页设计网站开发教程淘宝seo排名优化的方法
  • 百度网站回档怎么能恢复企业邮箱域名怎么设置
  • 黄冈网站推广都有哪些渠道12333社保查询网
  • 自助建立网站wordpress模板页
  • 网站footer设计wordpress简易主题
  • 网站建设备案信息做教师知识网站有哪些
  • 免费数据网站用什么软件做商务网站
  • 网络app开发网站建设价格重庆网站排名外包
  • 淳安县建设网站网站备案 怎么建站
  • 怎么提高网站的知名度wordpress文档下载
  • 山东广播电视台自助建站优化
  • 做的新网站能用多久电商网站 投诉
  • 哪个网站可以学做衣服福田公司网站建设
  • 湘潭网站建设 很好磐石网络网站域名在哪里
  • 360免费建站 服务期北京公司摇号
  • 泰州企业建站系统学校网站建设发展概况分析
  • 看上去高端的网站mr. tailor wordpress
  • 建设网站必须要钱吗搭建平台的目的和意义是什么
  • 做外贸网站做成哪种形式好网站关键字多少合适
  • 旅游电子商务 网站建设四川省送变电建设有限责任公司网站
  • 企业网站建设合同百度快照是干嘛的
  • 网站推广成本怎么用apache做网站
  • 郑州做网站优化运营商网站建设与管理课后作业答案
  • 做网站前台用什么问题六安网站排名优化电话
  • 做钢结构网站有哪些免费制作一个自己的网站
  • 对网站建设提建议数字营销1+x网站