【opencv】轮廓检测结果

from email.mime import image
import imghdr
from turtle import title
import cv2
import matplotlib.pyplot as plt
import numpy as np

def cv_show(img,name):
    cv2.imshow(name,img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

img=cv2.imread('lena.jpg')  # 读取图片
gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) # 转换为灰度图
ret,thresh=cv2.threshold(gray,127,255,cv2.THRESH_BINARY) # 对图片进行二值化  参数为阈值  图片大于阈值的像素点设置为255  小于阈值的像素点设置为0
cv_show(thresh,'after_threshold')
contours,bierarchy=cv2.findContours(thresh,cv2.RETR_TREE,cv2.CHAIN_APPROX_NONE) # 轮廓检测 contours是轮廓的坐标  bierarchy是轮廓的结构 retr_tree是检测所有轮廓  chain_approx_none是检测所有轮廓
draw_img=img.copy()
res=cv2.drawContours(draw_img,contours,-1,(0,0,255),2) # 参数为输入图像  轮廓  填充颜色  线宽 -1表示填充所有轮廓  参数为输出图像
cv_show(res,'after_drawContours')
#保存
cv2.imwrite('lena_contours.jpg',res)
lena.jpg
​​
lena_contours.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半山乱步

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值