用python-opencv写一份完整代码 要求从一张图片上的多种物体中识别出某一种物体的位置
以下是一份使用Python和OpenCV库的代码,可以从一张图片中识别出目标物体的位置。本代码将使用Haar级联分类器来检测目标物体。
import cv2
# 加载分类器
classifier = cv2.CascadeClassifier("haarcascade_frontalface_default.xml")
# 读取图片
img = cv2.imread("img.jpg")
# 转换为灰度图
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 检测物体
objects = classifier.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5)
# 绘制矩形框
for (x, y, w, h) in objects:
cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 2)
# 显示结果
cv2.imshow("Result", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
在本示例代码中,我们使用了名为“haarcascade_frontalface_default.xml”的Haar级联分类器来检测脸部。如果要检测其他物体,可以使用其他预训练的分类器或使用自己的分类器进行训练。此外,我们还使用了OpenCV的“detectMultiScale”函数来检测图像中的目标物体。这个函数将返回一个包含所有检测到物体位置的矩形列表。最后,我们在原始图像上绘制了矩形框来标记检测到的物体,并显示了结果图像
原文地址: http://www.cveoy.top/t/topic/gs8j 著作权归作者所有。请勿转载和采集!