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

黑帽seo怎么做网站排名百家号权重查询

黑帽seo怎么做网站排名,百家号权重查询,做基因检测网站,展馆设计师招聘目录 边界矩形 旋转矩形(最小外接矩形): 计算轮廓 找4个点的坐标 把浮点型转为Int 画轮廓 边界矩形--(最大外接矩形) 转灰度 找轮廓 找顶点 画矩形 显示 背景分离方法(这个很好玩,可以识别在动的物体) 边…

目录

边界矩形

旋转矩形(最小外接矩形):

计算轮廓

找4个点的坐标

把浮点型转为Int

画轮廓

边界矩形--(最大外接矩形)

转灰度

找轮廓

找顶点

画矩形

显示

背景分离方法(这个很好玩,可以识别在动的物体)


边界矩形

有两种类型的边界矩形:

旋转矩形(最小外接矩形):

是用最小面积绘制的,所以它也考虑了旋转。使用的函数是cv.minAreaRect()。它返回一个Box2D结构,其中包含以下细节-(中心(x,y),(宽度,高度),旋转角度)。但要画出这个矩形,我们需要矩形的四个角。它由函数cv.boxPoints()获得

cv.minAreaRect()函数返回一个包含以下信息的 RotatedRect 对象:

  • center:矩形的中心坐标((x, y))。

  • size:矩形的尺寸((width, height))。

  • angle:矩形的旋转角度,取值范围为 -900 度。

cv2.boxPoints(box) 返回的是构成旋转矩形的四个顶点的坐标。返回的结果是一个形状为 (4, 2) 的 NumPy 数组,其中每一行代表一个顶点的 (x, y) 坐标。这四个顶点按照特定的顺序排列,通常是按照顺时针或逆时针方向。

cv2.drawContours(image, contours, contourIdx, color, thickness=None, lineType=None, hierarchy=None, maxLevel=None, offset=None)

各个参数的含义如下:

  • image:目标图像,要在其上绘制轮廓。

  • contours:轮廓列表,每个轮廓是一个点的向量。必须是一个3维的列表,且必须是整数int

  • contourIdx:指定要绘制的轮廓的索引,如果为负数,则绘制所有轮廓。

  • color:绘制轮廓的颜色。

  • thickness:轮廓线的宽度,如果为负数,则轮廓内部被填充。

  • lineType:线条类型,例如 cv2.LINE_8(8 连接的线)、cv2.LINE_AA(抗锯齿线)等,默认值是 cv2.LINE_8

  • hierarchy:可选的轮廓层次信息。

  • maxLevel:绘制轮廓的最大层次。如果为 0,则只绘制指定的轮廓;如果为 1,则绘制指定轮廓及其直接子轮廓,依此类推。默认值为 0。

  • offset:可选的偏移量,用于移动轮廓的位置

示例代码:

im = cv2.imread("yy.png")#图片是一个五角星 im1=im.copy() im=cv2.cvtColor(im,cv2.COLOR_BGRA2GRAY)

计算轮廓

contours,=cv2.findContours(im,cv2.RETRTREE,cv2.CHAINAPPROXSIMPLE)

找4个点的坐标

box=cv2.minAreaRect(contours[0])#因为box是一个元组套一个列表,contours就是要把列表取出来 print(box) box=cv2.boxPoints(box) print(box)

把浮点型转为Int

box=np.intp(np.round(box))

画轮廓

cv2.drawContours(im,[box],-1,(255,0,255),1,cv2.LINE_AA) cv2.imshow('最小外界矩形',im) cv2.waitKey(0) cv2.destroyAllWindows()

边界矩形--(最大外接矩形)

·直角矩形(最大外接矩形):不考虑物体的旋转。所以直角矩形的面积不是最小的。它是由函数x,y,w,h=cv2.boundingRect()找到的。

·令(x,y)为矩形的左上角坐标,而(w,h)为矩形的宽度和高度。

import cv2 import numpy as np

im = cv2.imread("yy.png")

转灰度

im1=cv2.cvtColor(im,cv2.COLOR_BGRA2GRAY)

找轮廓

contours,=cv2.findContours(im1,cv2.RETRTREE,cv2.CHAINAPPROXNONE)

找顶点

x,y,w,h=cv2.boundingRect(contours[0])

画矩形

cv2.rectangle(im,(x,y),(x+w,y+h),(255,255,1),2,cv2.LINE_AA)

显示

cv2.imshow('im',im) cv2.waitKey(0) cv2.destroyAllWindows()

效果图:一上图一样

背景分离方法(这个很好玩,可以识别在动的物体)

bgsub=cv2.createBackgroundSubtractorMOG2():创建背景减除器实例,然后用bgsub.applay(img),再show一下bgsub就可以了。可以用来检测在动的物体

减除器实例.apply(image[, fgmask[, learningRate]]) -> fgmask:计算前景掩码和更新背景。如果要更改用于更新背景模型的学习率,可以通过将参数传递给apply方法来设置特定的学习率。learningRate该值位于0到1之间,表示背景模型被学习或更新的速度。负数的参数值使算法采用自动选择的学习率。0意味着背景模型完全不进行更新,保持初始状态;1则意味着背景模型在每一帧后都会根据新信息完全重新初始化。因此,此参数控制了背景模型适应场景变化的敏感度和速度。

视频中动态的物体就是前景

静态的物体就是背景

参数说明:

  • shape:表示结构元素的形状,可以是以下几种取值:

  • cv2.MORPH_RECT:矩形结构元素

  • cv2.MORPH_CROSS:十字形结构元素

  • cv2.MORPH_ELLIPSE:椭圆形结构元素

  • ksize:表示结构元素的大小

  • anchor:表示结构元素的锚点位置,默认为(-1,-1),表示结构元素的中心

代码演示:

"""视频中动态的物体就是 前景静态的物体就是背景
"""import cv2cap = cv2.VideoCapture(0)# 创建背景减除器对象
bgsub = cv2.createBackgroundSubtractorMOG2()while cap.isOpened():ret, frame = cap.read()if not ret:break# 将视频中的每一帧图像应用背景减除器,减除背景fgmask = bgsub.apply(frame)cv2.imshow("win", fgmask)if cv2.waitKey(25) == 27:cv2.destroyAllWindows()break

效果:过于离谱就不展示了,只要动的地方就会变白,视频哈

http://www.tj-hxxt.cn/news/54177.html

相关文章:

  • 做网站需要的设备上海百度
  • 哪些网站做平面单页好看清远seo
  • 铜陵app网站做营销招聘网络口碑营销的成功案例
  • 想美团这样的网站怎么做的长沙优化科技
  • 我司如何自己建设动态网站八爪鱼磁力搜索引擎
  • 微信网站建设咨询深圳网络优化公司
  • django 企业网站开发百度集团
  • 进博会上海seo网站推广推荐
  • 企业自己做网站方法中国新闻社
  • 设计类投稿网站谷歌搜索引擎 google
  • 郑州 网站建设公司网站分为哪几种类型
  • 网站屏幕自适应百度关键词排名突然消失了
  • 个人网站开发的背景阿里指数查询官网入口
  • 政府网站建设 汇报百度推广优化排名
  • 网站建设应遵守的原则东莞网站提升排名
  • 网站开发 成都网站点击快速排名
  • 那个网站攻略做的好五年级上册优化设计答案
  • 做网站怎么做起来的什么叫做网络营销
  • 河南工程建设信息网一体化平台seo收费标准多少
  • 最权威的做网站设计哪家好网址导航
  • wordpress中国网站模板人民日报官网
  • 导入表格数据做地图网站今日头条权重查询
  • 影视源码seo是什么意思如何实现
  • 怎样建设网站后台渠道销售怎么找客户
  • 做php网站用mvc多吗做网站需要什么技术
  • asp网站开发模板成品网站源码在线看
  • 龙岩网站建设方案书网站推广业务
  • 普陀企业网站建设长春网长春关键词排名站设计
  • 怎样在阿里做网站seo营销外包公司
  • 网站维护的内容主要包括信息流优化师职业规划