第十八天opencv膨脹腐蝕
阿新 • • 發佈:2018-11-11
膨脹就是相鄰三個畫素點|| 腐蝕就是相鄰三個畫素點&&
膨脹作用:將多餘相素放大。去除 (增大白色面積)
腐蝕作用:將多餘相素去掉再縮小。恢復原圖. (增大相鄰黑色面積)
import cv2 as cv import numpy as np def erode_demo(image): print(image.shape) gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) ret, binary = cv.threshold(gray, 0, 255, cv.THRESH_BINARY | cv.THRESH_OTSU) cv.imshow("binary", binary) kernel = cv.getStructuringElement(cv.MORPH_RECT, (15, 15)) ##得到15*15尺寸的結構元數 dst = cv.erode(binary, kernel) ##腐蝕 cv.imshow("erode_demo", dst) def dilate_demo(image): print(image.shape) gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) ret, binary = cv.threshold(gray, 0, 255, cv.THRESH_BINARY | cv.THRESH_OTSU) cv.imshow("binary", binary) kernel = cv.getStructuringElement(cv.MORPH_RECT, (5, 5)) dst = cv.dilate(binary, kernel) ##膨脹 cv.imshow("dilate_demo", dst) print("--------- Python OpenCV Tutorial ---------") src = cv.imread("C:/Users/weiqiangwen/Desktop/sest/data/pca_test1.jpg") cv.namedWindow("coins", cv.WINDOW_AUTOSIZE) cv.imshow("coins.jpg", src) erode_demo(src) dilate_demo(src) cv.waitKey(0) cv.destroyAllWindows()