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

西宁做网站好的公司百度2022第三季度财报

西宁做网站好的公司,百度2022第三季度财报,具有品牌的做pc端网站,基于php技术的网站建设一. 实现指定图像的人脸识别 注意: 以下实例参考《OpenCV轻松入门面向Python》李立宗著,使用python语言,编辑器为PyCharm,且都运行成功。 1.dface3.jpg图片文件和当前代码放在同一级目录下。 2.级联分类器文件和当前代码文件放在…

一. 实现指定图像的人脸识别

注意:

以下实例参考《OpenCV轻松入门面向Python》李立宗著,使用python语言,编辑器为PyCharm,且都运行成功。
1.dface3.jpg图片文件和当前代码放在同一级目录下。
2.级联分类器文件和当前代码文件放在同一目录下。
3.获取级联分类器方式:
1)安装opencv后,在其安装目录下的data文件夹内查找xml文件。
2)直接在网络上找到相应的XML文件,下载并使用。
访问opencv官网: https://opencv.org/ ,点进Github,在data目录下haarcascade文件夹下寻找需要的级联分类器。
代码如下:

import cv2
#读取待检测的图像
image=cv2.imread('dface3.jpg')
#加载了一个训练好的人脸检测器(xml文件,包含了用于人脸检测的哈尔特征级联分类器)
faceCascade=cv2.CascadeClassifier('./haarcascade_frontalface_default.xml')
#将图像转换成灰度图像
gray=cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
#调用detectMultiScale()函数在灰度图像上检测人脸,函数会返回一个列表,每个表示一个检测到的人脸
faces=faceCascade.detectMultiScale(gray,scaleFactor=1.15,minNeighbors=5,minSize=(5,5)
)
print(faces)
print("发现{0}个人脸!".format(len(faces)))
#在原始图像上绘制矩形框,框出检测到的人脸
for(x,y,w,h) in faces:cv2.rectangle(image,(x,y),(x+w,y+w),(0,255,0),2)
cv2.imshow("tect",image)
cv2.imwrite("re.jpg",image)
cv2.waitKey(0)
cv2.destroyAllWindows()

detectMultiScale():

是一个用于检测目标的函数,其中包含了以下几个参数:

参数1(image):需要进行检测的输入图像,通常是灰度图像。

参数2(scaleFactor):在每个图像尺度上进行尺度变换时的缩放比例。这个参数用于多尺度检测,允许算法检测不同尺寸的目标。例如,如果设置为 1.1,意味着算法会逐渐缩小图像的尺寸进行检测。

参数3(minNeighbors):每个候选矩形应该保留的邻近数。这个参数可以帮助去除一些虚假的检测结果。较大的值会导致更少的检测框,但是这些检测框更可能是真实的目标。

参数4(minSize):目标的最小尺寸。只有大于等于这个尺寸的目标才会被检测到。这个参数可以用于排除一些小目标,以减少虚假检测。

参数5(flags):它是一个可选的参数,用于调整算法的行为。通常情况下,我们可以使用默认值0。

返回值:这个函数返回一个矩形列表,表示检测到的目标的位置和大小。通常情况下,每个矩形都是一个四元组 (x, y, width, height),分别表示目标左上角的坐标以及目标的宽度和高度。

cv2.rectangle()

是 OpenCV 库中用于在图像上绘制矩形的函数,其中包含几个参数:
image:需要绘制矩形的图像,通常是一个 NumPy 数组表示的图像对象。

pt1:矩形的左上角坐标,是一个元组 (x1, y1),其中 x1 是矩形左上角的横坐标,y1 是矩形左上角的纵坐标。

pt2:矩形的右下角坐标,也是一个元组 (x2, y2),其中 x2 是矩形右下角的横坐标,y2 是矩形右下角的纵坐标。(x+w, y+h) 是矩形框的右下角坐标,x+w 表示矩形右边界的横坐标,y+h 表示矩形底边界的纵坐标。

color:矩形的颜色,通常以 BGR 格式表示,即一个包含三个整数值的元组 (B, G, R),其中 B、G、R 分别代表蓝色、绿色、红色的通道值。(0, 255, 0) 表示纯绿色。

thickness:矩形的线条宽度,以像素为单位。如果指定为负值,表示填充整个矩形区域。默认为1。

lineType:线条类型,默认为8连接线。你可以选择不同的线条类型,如8连接、4连接等。

shift:偏移量,默认为0。这个参数通常不需要指定,除非你需要对图像进行一些特殊处理。

二. 捕获摄像头视频

opencv通过从cv2.VideoCapture提供了非常方便的捕获摄像头视频的方法。
代码如下:

import cv2
#从指定的设备中获取视频流
cap=cv2.VideoCapture(0)
while(cap.isOpened()):ret, frame = cap.read()cv2.imshow('frame',frame)c = cv2.waitKey(1)if c == 27:break
cap.release()
cv2.destroyAllWindows()

cv2.VideoCapture()

参数为 0,代表使用默认的摄像头设备(通常是计算机上内置的摄像头),如果你有多个摄像头,可以通过不同的参数值来选择不同的摄像头。例如,cv2.VideoCapture(1) 表示选择第二个摄像头。也可以传入视频文件的路径作为参数,以便从文件中读取视频流。

三.实现视频人脸识别

代码如下:

import cv2
import numpy as np
#创建了一个VideoCapture对象cap用于捕获视频,0表示打开默认的摄像头
cap=cv2.VideoCapture(0)
#加载人脸识别检测器
faceCascade=cv2.CascadeClassifier('./haarcascade_frontalface_default.xml')
#只要摄像头处于打开状态就一直运行
while(cap.isOpened()):#使用read方法从摄像头捕获一帧,ret是个布尔值表示是否成功读取帧,frame是捕获的视频帧ret,frame=cap.read()if ret:#对每个帧进行解析#将每一帧转换为灰度图像gray_image=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)faces=faceCascade.detectMultiScale(gray_image,scaleFactor=1.15,minNeighbors=5,minSize=(5,5))#逐个标注检测到的人脸for(x,y,w,h) in faces:cv2.rectangle(frame,(x,y),(x+w,y+w),(0,255,0),2)cv2.imshow("detect",frame)#按esc键控制退出c=cv2.waitKey(1)if c==27:breakelse:break
cap.release()
cv2.destroyAllWindows()
http://www.dt0577.cn/news/48571.html

相关文章:

  • 胶州建设工程信息网站品牌策略有哪些
  • 网站开发台州关键词排名零芯互联关键词
  • 久久建筑网会员登录没有签到得金币了吗优化大师客服
  • 做商城网站可以个人备案2021友情链接qq群
  • 小学生做电子小报的网站视频优化软件
  • python网站开发前端网络营销讲师
  • 网站建设宣传资料市场营销推广方案
  • 新加坡购物网站排名seo教程视频
  • 中国建筑网官网查询报考百度关键词优化是什么意思
  • 做网站的组要具备哪些素质公司网站制作网络公司
  • 嘉兴服饰网站建设宁德市
  • 建设银行网站会员注销磁力库
  • 官方网站下载抖音推广普通话手抄报
  • 网站在美国做的服务器网址服务器查询
  • 深圳市规划建设委员会网站上海整站seo
  • 网站开发遇到什么问题百度sem竞价推广
  • 网站排名软件多浏览器广州疫情今天最新消息
  • 宜昌营销网站建设搜索引擎最新排名
  • 求购做网站外国人b站
  • 网站建设中怎样设置背景优化大师优化项目有哪些
  • 广州 定制网站3000元免费seo软件
  • 做微商都去哪些网站留言郑州网络推广培训
  • 做烘焙网站他达拉非的副作用和危害
  • 上海营销型网站建设方案网站建设公司哪家好
  • 网站图片展示源代码网站开发平台有哪些
  • 上海建设公司网站温州seo排名公司
  • 网站建设与规划学的心得体会比较好的网络推广平台
  • 池州专业网站建设公司网络推广的渠道有哪些
  • 网站建设建网站做网站网站设计怎么找网站
  • 域名之后怎么做网站网站制作公司官网