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

当前主流网站开发技术搜索引擎排名查询工具

当前主流网站开发技术,搜索引擎排名查询工具,网站代做多长时间,html 网站建设中一. 实现指定图像的人脸识别 注意: 以下实例参考《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.hkea.cn/news/542688/

相关文章:

  • wordpress如何关闭网站下载app
  • WordPress小程序二次修改石家庄seo排名外包
  • 做百度关键词网站厦门seo外包
  • 泉州seo-泉州网站建设公司谷歌关键词搜索工具
  • 组织部网站建设方案行业关键词分类
  • 上海黄浦 网站制作中国搜索引擎排名2021
  • 手机网站建设 cms营销技巧和营销方法
  • 平顶山做网站优化微博搜索引擎优化
  • 网站如何做品牌宣传海报每日舆情信息报送
  • 做论坛网站需要多大空间seo推广招聘
  • 中国建设银行网站软件不限次数观看视频的app
  • 网站开发建设的步骤win11优化大师
  • 在线做数据图的网站樱桃bt磁力天堂
  • 网站建设费的税率东莞公司网上推广
  • 上海设计公司排名前十宁波seo搜索优化费用
  • 如皋做网站公司com域名
  • 织梦做企业网站教程网络营销推广方案论文
  • 微信如何添加小程序二十条优化措施全文
  • 网站制作费可以做业务宣传费河北百度推广电话
  • wordpress日主题破解网站排名优化软件有哪些
  • 做公众号app 网站 app济南网站设计
  • 单位网站 单位网页 区别吗福州seo顾问
  • 专业做网站制作的公司百度地图网页版进入
  • 买卖网站域名骗局百度推广登陆
  • 石家庄大型网站设计公司手机怎么建网站
  • 政府网站图解怎么做百度关键词排名靠前
  • 天津做网站印标东莞网络推广排名
  • 设计一个外贸网站需要多少钱沈阳网站推广优化
  • 洗化行业做网站福州百度seo排名
  • 西安app网站开发项目腾讯域名注册官网