计算机视觉第四课:寻找轮廓(自动框出所有物体)

先上代码

python 复制代码
import cv2
import numpy as np

# 1. 读取图片
img = cv2.imread("test.jpg")

# 2. 预处理:灰度 + 模糊(必须做,不然轮廓很乱)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
blur = cv2.GaussianBlur(gray, (5,5), 0)

# 3. Canny边缘检测
canny = cv2.Canny(blur, 50, 150)

# 4. 寻找轮廓(核心!)
contours, hierarchy = cv2.findContours(
    canny,                # 边缘图
    cv2.RETR_EXTERNAL,    # 只找最外层轮廓
    cv2.CHAIN_APPROX_SIMPLE # 简化轮廓点(提速)
)

# 打印找到几个物体
print(f"找到 {len(contours)} 个物体轮廓!")

# 5. 把所有轮廓画出来(红色,粗细2)
cv2.drawContours(img, contours, -1, (0, 0, 255), 2)

# 6. 显示结果
cv2.imshow("Canny Edge", canny)
cv2.imshow("Detected Contours", img)

cv2.waitKey(0)
cv2.destroyAllWindows()
  1. 寻找轮廓

cv2.findContours(边缘图, 模式, 方法)

  1. 画轮廓

cv2.drawContours(原图, 轮廓列表, 画第几个, 颜色, 粗细)

-1 :画所有轮廓

  1. 运行效果
相关推荐
chaojihaomai3 小时前
AI电商商品图生成中的材质保真问题——扩散模型重建优先级分析与锁定式方案
人工智能·材质
大模型探索者5 小时前
2026 企业智能体平台选型指南:从通用到行业深耕,怎么选?
大数据·人工智能
深圳行云创新6 小时前
北极星知识图谱平台|太空越来越“拥挤”,知识图谱如何预测空间碎片碰撞风险?
人工智能·知识图谱
Am-Chestnuts6 小时前
国产AI多轮对话归档与多格式导出实践
人工智能·word
workflower7 小时前
装备企业的 AI 路线图
人工智能·深度学习·机器学习·设计模式·机器人
AKAMAI7 小时前
Linode接口及默认防火墙现已全面开放使用
人工智能·云计算
前端开发江鸟8 小时前
RAG 回答错了,问题到底出在召回、重排,还是生成?
人工智能
美狐美颜SDK开放平台8 小时前
直播app开发如何实现主播级美颜效果?美颜sdk开发方案详解
人工智能·音视频·美颜sdk·视频美颜sdk·美颜api
东方小月8 小时前
从零开发一个 Coding Agent(四):使用状态机校验大模型事件流
前端·人工智能·后端
大龄码农有梦想8 小时前
使用大模型服务如何保证数据安全?企业 AI 安全、私有化部署与治理实践
人工智能·私有化部署·数据安全·信创·ai agent·智能体·智能体开发平台