Python數學形態學例項分析

2022-10-04 16:12:18 字數 1625 閱讀 6204

一 原始隨機影象

1、**

import numpy as np

import matplotlib.pyplot as plt

square = np.zeros((32,32))#全0陣列

square[10:20程式設計客棧,10:20]=1#把其中一部分設定為1

x, y =(32*np.random.random((2,15))).astype(np.int)#隨機位置

square[x,y]=1#把隨機位置設定為1

plt.imshow(square)#原始隨機影象

plt.show()

2、執行結果

二 開運算

1、**

import numpy as np

import matplotlib.pyplot as plt

from scipy import ndimage

square = np.zeros((32,32))#全0陣列

square[10:20,10:20]=1#把其中一部分設定為1

x, y =(32*np.rando程式設計客棧m.random((2,15))).astype(np.int)#隨機位置

square[x,y]=1#把隨機位置設定為1

open_square = ndimage.binary_opening(square)#開運算

plt.imshow(open_square)

plt.show()

2、執行結果

三 膨脹運算

1、**

import numpy as np

import matplotlib.pyplot as plt

from scipy import ndimage

square = np.zeros((32,32))#全0陣列

square[10:20,10:20]=1#把其中一部分設定為1

x, y =(32*np.random.random((2,15))).astype(np程式設計客棧.int)#隨機位置

square[x,y]=1#把隨機位置設定為1

eroded_square = ndimage.binawww.cppcns.comry_erosion(square)#膨脹運算

plt.imshow(eroded_square)

plt.show()

2、執行結果

四 閉運算

1、**

imwww.cppcns.comport numpy as np

import matplotlib.pyplot as plt

from scipy import ndimage

square = np.zeros((32,32))#全0陣列

square[10:20,10:20]=1#把其中一部分設定為1

x, y =(32*np.random.random((2,15))).astype(np.int)#隨機位置

square[x,y]=1#把隨機位置設定為1

closed_square = ndimage.binary_closing(square)#閉運算

plt.imshow(closed_square)

plt.show()

2、執行結果

形態學重建

在形態學梯度影象的基礎上,利用形態學的開閉重建運算對梯度影象進行重建,在保留重要區域倫敦的同時去除細節和雜訊。分水嶺變換存在過分割現象,原因在於檢測的區域性極值過多,造成極值過多的原因在於影象中的非規則灰度擾動和雜訊。對於好的分水嶺影象分割方法,不僅能消除過分割現象,而且應保證分割後的區域倫敦邊緣具...

形態學濾波

include pch.h include include include include using namespace std using namespace cv 形態學 mat g srcimage,g dstimage int g nelementshape morph rect int ...

形態學運算元

形態學運算元的主要思想是用一定形狀的結構元素 在影象中抽取出相應的某些結構,通常可以用於影象的濾波 分割 分類等處理。形態學運算元有腐蝕 膨脹 開和閉四種。腐蝕腐蝕是一種消除邊界點,使邊界向內部收縮的過程。可以用來消除小且無意義的物體。腐蝕的演算法 用3x3的結構元素,掃瞄影象的每乙個畫素 用結構元...