opencv findContours查找图像边缘基本操作

1、cvtColor灰度图打开图像

2、threshold二值化图像

3、查找轮廓

4、根据面积画出轮廓

5、注意大于等于两个返回值的函数的输出

import cv2

import numpy as np

加载图像并转为灰度图

image = cv2.imread('1.jpg')

gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

二值化处理

_, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)

查找轮廓

contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)

for i,contour in enumerate(contours):

cnt_area = cv2.contourArea(contour)

print(cnt_area)

if cnt_area>200:

cv2.drawContours(image, contours, i, (0, 0, 255), 3) # 用红色线条绘制第一个轮廓

# 绘制第一个轮廓

cv2.drawContours(image, contours, 0, (0, 0, 255), 3) # 用红色线条绘制第一个轮廓

#计算第一个轮廓面积

cnt_area = cv2.contourArea(contours[0])

print(cnt_area)

cv2.imshow('erzhihua', thresh)

cv2.imwrite("erzhihua.jpg",thresh)

cv2.imshow('Contours', image)

cv2.imwrite("Contours.jpg",image)

cv2.waitKey(0)

cv2.destroyAllWindows()

相关推荐
飞哥数智坊19 小时前
GPT-5-Codex 发布,Codex 正在取代 Claude
人工智能·ai编程
倔强青铜三19 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
虫无涯20 小时前
Dify Agent + AntV 实战:从 0 到 1 打造数据可视化解决方案
人工智能
Dm_dotnet1 天前
公益站Agent Router注册送200刀额度竟然是真的
人工智能
算家计算1 天前
7B参数拿下30个世界第一!Hunyuan-MT-7B本地部署教程:腾讯混元开源业界首个翻译集成模型
人工智能·开源
机器之心1 天前
LLM开源2.0大洗牌:60个出局,39个上桌,AI Coding疯魔,TensorFlow已死
人工智能·openai
Juchecar1 天前
交叉熵:深度学习中最常用的损失函数
人工智能
林木森ai1 天前
爆款AI动物运动会视频,用Coze(扣子)一键搞定全流程(附保姆级拆解)
人工智能·aigc
聚客AI1 天前
🙋‍♀️Transformer训练与推理全流程:从输入处理到输出生成
人工智能·算法·llm
BeerBear1 天前
【保姆级教程-从0开始开发MCP服务器】一、MCP学习压根没有你想象得那么难!.md
人工智能·mcp