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()

相关推荐
九章云极AladdinEdu2 分钟前
深度学习优化器进化史:从SGD到AdamW的原理与选择
linux·服务器·开发语言·网络·人工智能·深度学习·gpu算力
dlraba8028 分钟前
Python 实战:票据图像自动矫正技术拆解与落地教程
人工智能·opencv·计算机视觉
过河卒_zh156676628 分钟前
9.13AI简报丨哈佛医学院开源AI模型,Genspark推出AI浏览器
人工智能·算法·microsoft·aigc·算法备案·生成合成类算法备案
程序员ken32 分钟前
深入理解大语言模型(5)-关于token
人工智能·语言模型·自然语言处理
Codebee40 分钟前
OneCode 移动套件多平台适配详细报告
前端·人工智能
sinat_286945191 小时前
Case-Based Reasoning用于RAG
人工智能·算法·chatgpt
许泽宇的技术分享1 小时前
AI时代的内容创作革命:深度解析xiaohongshu-mcp项目的技术创新与实战价值
人工智能
地平线开发者1 小时前
征程 6 灰度图部署链路介绍
人工智能·算法·自动驾驶·汽车
工藤学编程1 小时前
零基础学AI大模型之SpringAI
人工智能
Xy-unu1 小时前
[VL|RIS] RSRefSeg 2
论文阅读·人工智能·transformer·论文笔记·分割