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

政府网站内容改版建设建议建网站需要多少钱和什么条件

政府网站内容改版建设建议,建网站需要多少钱和什么条件,域名网站搭建,制作个网站计算机视觉废钢堆提取问题 背景介绍 在钢铁炼制中,废钢是非常重要的原料,不同等级废钢对于钢成品影响很大,因此需要对废钢进行正确分类。某废钢料场中,卸料区域布置了多个摄像头,用于拍摄卸料场中废钢堆,…

计算机视觉废钢堆提取问题

背景介绍

在钢铁炼制中,废钢是非常重要的原料,不同等级废钢对于钢成品影响很大,因此需要对废钢进行正确分类。某废钢料场中,卸料区域布置了多个摄像头,用于拍摄卸料场中废钢堆,如下几个图所示。后续处理中需要先将废钢蟭有效提取出来,减少背景的影响。效果如下所示。
图 1     未处理图像1
图 1 未处理图像1
在这里插入图片描述
图 2 处理后图像1

2. 程序设计思路及主要方法

本次实验基于OpenCV的 GrabCut图像分割算法。GrabCut是一种交互式分割方法,该方法使用图论的max-flow/min-cut算法从图像的背景中提取前景。在算法开始之前,用户首先需要提供一些提示,大致在输入图像中指定前景区域,尽可能减少交互(例如,在前景区域周围绘制一个矩形);然后使用该法对图像进行迭代分割,得到可能的最佳结果。在某些情况下,分割可能不是理想的(例如,算法可能将一些前景区域标记为背景,反之亦然)。
用于图论Grabcut算法实现。参数img为待分割输入图像,要求必须是8位3通道;mask为输入/输出掩码图像;rect分割目标的ROI限定区域范围,该窗口内的像素被处理;bgdModel为背景模型的临时储存数组;fgdModel为前景模型的临时储存数组。
利用OpenCV进行图割算法实时显示,首先需要定义分割矩形区域,利用Grabcut完成前景与背景图像分离,利用图像匹配得到分割结果,具体实验结果展示如下。

实验结果展示

在这里插入图片描述

图 4 未处理图像2
在这里插入图片描述

图 5 已处理图像2
在这里插入图片描述
图 8 未处理图像4
在这里插入图片描述
图 9 已处理图像4

代码如下:

 import numpy as np    //导入依赖库
import cv2#鼠标事件的回调函数
def on_mouse(event,x,y,flag,param):        global rectglobal leftButtonDowmglobal leftButtonUp#鼠标左键按下if event == cv2.EVENT_LBUTTONDOWN:rect[0] = xrect[2] = xrect[1] = yrect[3] = yleftButtonDowm = TrueleftButtonUp = False#移动鼠标事件if event == cv2.EVENT_MOUSEMOVE:if leftButtonDowm and  not leftButtonUp:rect[2] = xrect[3] = y        #鼠标左键松开if event == cv2.EVENT_LBUTTONUP:if leftButtonDowm and  not leftButtonUp:x_min = min(rect[0],rect[2])y_min = min(rect[1],rect[3])x_max = max(rect[0],rect[2])y_max = max(rect[1],rect[3])rect[0] = x_minrect[1] = y_minrect[2] = x_maxrect[3] = y_maxleftButtonDowm = False      leftButtonUp = True//加载图像,指定输入图像的路径
img = cv2.imread(r'E:\Users\SongpingWang\Desktop\the_angry_birds_movie.jpg')
mask = np.zeros(img.shape[:2],np.uint8)    //创建掩码蒙版//创建临时数组
bgdModel = np.zeros((1,65),np.float64)    #背景模型
fgdModel = np.zeros((1,65),np.float64)    #前景模型
rect = [0,0,0,0]                          #设定需要分割的图像范围leftButtonDowm = False                    #鼠标左键按下
leftButtonUp = True                       #鼠标左键松开cv2.namedWindow('img')                    #指定窗口名来创建窗口
cv2.setMouseCallback('img',on_mouse)      #设置鼠标事件回调函数 来获取鼠标输入
cv2.imshow('img',img)                     #显示图片while cv2.waitKey(2) == -1:#左键按下,画矩阵if leftButtonDowm and not leftButtonUp:  img_copy = img.copy()cv2.rectangle(img_copy,(rect[0],rect[1]),(rect[2],rect[3]),(0,255,0),2)  cv2.imshow('img',img_copy)#左键松开,矩形画好 elif not leftButtonDowm and leftButtonUp and rect[2] - rect[0] != 0 and rect[3] - rect[1] != 0:rect[2] = rect[2]-rect[0]rect[3] = rect[3]-rect[1]rect_copy = tuple(rect.copy())   rect = [0,0,0,0]#物体分割cv2.grabCut(img,mask,rect_copy,bgdModel,fgdModel,5,cv2.GC_INIT_WITH_RECT)mask2 = np.where((mask==2)|(mask==0),0,1).astype('uint8')img_show = img*mask2[:,:,np.newaxis]#显示图片分割后结果--显示原图cv2.imshow('grabcut',img_show)cv2.imshow('img',img)    cv2.waitKey(0)
cv2.destroyAllWindows()
http://www.zhongyajixie.com/news/65940.html

相关文章:

  • 重庆企业网站建设解决方案疫情最新消息今天
  • 旅游网站制作雅思培训班价格一览表
  • 康体设备网站建设成都seo优化排名公司
  • php网站建设英文文献关键词云图
  • 网站建设中 模板下载企业网站建设专业服务
  • 郴州市疫情最新规定seo技术有哪些
  • nodejs 网站开发seo广告投放是什么意思
  • 如何制作个人网站主页免费的个人网站html代码
  • 微网站用什么软件做有实力的网站排名优化软件
  • 北京网络网站建设价格低dz论坛如何seo
  • 青岛建设监理协会网站嘉兴seo报价
  • 嘉兴企业做网站seo代运营
  • 建设单位经常去哪个网站怎么关键词优化网站
  • 石景山住房和城乡建设委员会网站东莞网络营销信息推荐
  • 无锡做网站公司哪家比较好线上推广方案模板
  • 济南今日最新消息seo免费优化
  • 链接网站开发需要多少钱seo工资待遇怎么样
  • 在线做ppt的网站源代码微信营销号
  • 泉州网站建设网站培训机构招生7个方法
  • 塑胶原料 东莞网站建设东莞疫情最新消息今天
  • b2b电子商务网站调研报告国家开放大学sem竞价教程
  • 网站产品要如何做详情国家市场监管总局
  • 上海专业网站制作设计怎么做品牌推广和宣传
  • 微网站建设网站301313龙虎榜
  • wordpress login 页面seo网站排名全选
  • 有哪些好的做问卷调查的网站好今日军事新闻报道
  • 北京终端区优化武汉seo培训
  • 汕头 网站设计营销手机系统安装
  • 自己做一个网站seo搜索优化工具
  • 网站建设的网络公惠州seo