码迷,mamicode.com
首页 > 其他好文 > 详细

day 11 绘制轮廓

时间:2017-11-27 23:32:41      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:logs   log   import   处理   颜色   sim   ret   imshow   nump   

#-*- coding:utf-8 -*-

import cv2
import numpy as np

#1.导入图像
#img = cv2.imread("home.jpg",0)   #因为还有在原始图像绘制轮廓,不能读入灰度图像
img = cv2.imread("home.jpg")

img_gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

#2.二值化处理,
ret,thresh = cv2.threshold(img_gray,127,255,cv2.THRESH_BINARY)

#3.查找轮廓
image,contours,hierarchy = cv2.findContours(thresh,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
                #第1参数:输入图像
                #第2参数:轮廓检索方式
                #第3参数:轮廓近似方法 cv2.CHAIN_APPROX_SIMPLE(矩形框) cv2.CHAIN_APPROX_NONE(点)

#第1返回值 图像
#第2返回值  轮廓(是list列表,寸纯图像中的所有轮廓,每个轮廓是个Numpy数组(x,y))
#第3返回值  轮廓的层析结构

#4.绘制轮廓
#imgage = cv2.drawContours(img,contours,-1,(0,255,0),2)
                         #第1参数:原始图像
                        # 第2参数:轮廓,1个python列表
                        # 第3参数:轮廓的索引(-1时绘制所有轮廓)
                        # 第4参数:轮廓颜色
                        # 第5参数:轮廓厚度


#5.绘制外界矩形
for cnt in contours:       #从list列表取出每个轮廓
    if cv2.contourArea(cnt) < 1500:
        continue
    x,y,w,h = cv2.boundingRect(cnt)
    #x,y 矩形顶点(左上角)   w,h(矩形宽高)
    img = cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),2)

cv2.imshow(dilation,img)
cv2.waitKey(0)
cv2.destroyAllWindows()

    技术分享图片

 

day 11 绘制轮廓

标签:logs   log   import   处理   颜色   sim   ret   imshow   nump   

原文地址:http://www.cnblogs.com/venicid/p/7906146.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!