skimage.future#

具有實驗性 API 的功能。

警告

雖然您可以指望此套件中的函式在未來會存在,但 API 可能會隨著任何版本更新而變更,並且不會遵循 skimage 的雙版本棄用路徑。因此,請謹慎使用此處的函式,並且不要在會依賴更新的 skimage 版本的產品程式碼中使用它們。

fit_segmenter

使用影像的標記部分和分類器進行分割。

manual_lasso_segmentation

根據使用滑鼠進行的自由選取傳回標籤影像。

manual_polygon_segmentation

根據使用滑鼠進行的多邊形選取傳回標籤影像。

predict_segmenter

使用預先訓練的分類器分割影像。

TrainableSegmenter

用於分類像素的估計器。


skimage.future.fit_segmenter(labels, features, clf)[原始碼]#

使用影像的標記部分和分類器進行分割。

參數:
labels整數的 ndarray

標籤影像。標籤 >= 1 對應於訓練集,而標籤 0 對應於要分割的未標記像素。

featuresndarray

特徵陣列,其第一個維度對應於特徵數量,其他維度對應於 labels.shape

clf分類器物件

分類器物件,公開 fitpredict 方法,如 scikit-learn 的 API 中所示,例如 RandomForestClassifierLogisticRegression 分類器的實例。

傳回值:
clf分類器物件

labels 上訓練的分類器

引發:
如果尚未擬合 self.clf,則為 NotFittedError(使用 self.fit)。

使用局部特徵和隨機森林的可訓練分割

使用局部特徵和隨機森林的可訓練分割

skimage.future.manual_lasso_segmentation(image, alpha=0.4, return_all=False)[原始碼]#

根據使用滑鼠進行的自由選取傳回標籤影像。

參數:
image(M, N[, 3]) 陣列

灰階或 RGB 影像。

alpha浮點數,選用

繪製在影像上的多邊形的透明度值。

return_all布林值,選用

如果為 True,則傳回包含繪製的每個獨立多邊形的陣列。(多邊形可能會重疊。)如果為 False(預設),則後來的多邊形會在重疊處「覆寫」先前的多邊形。

傳回值:
labels整數陣列,形狀為 ([Q, ]M, N)

分割的區域。如果模式為 'separate',則陣列的前導維度對應於使用者繪製的區域數。

附註

按住滑鼠左鍵以在每個物件周圍繪製。

範例

>>> from skimage import data, future
>>> import matplotlib.pyplot as plt  
>>> camera = data.camera()
>>> mask = future.manual_lasso_segmentation(camera)  
>>> fig, ax = plt.subplots()  
>>> ax.imshow(mask)           
>>> plt.show()                

skimage.future.manual_polygon_segmentation(image, alpha=0.4, return_all=False)[原始碼]#

根據使用滑鼠進行的多邊形選取傳回標籤影像。

參數:
image(M, N[, 3]) 陣列

灰階或 RGB 影像。

alpha浮點數,選用

繪製在影像上的多邊形的透明度值。

return_all布林值,選用

如果為 True,則傳回包含繪製的每個獨立多邊形的陣列。(多邊形可能會重疊。)如果為 False(預設),則後來的多邊形會在重疊處「覆寫」先前的多邊形。

傳回值:
labels整數陣列,形狀為 ([Q, ]M, N)

分割的區域。如果模式為 'separate',則陣列的前導維度對應於使用者繪製的區域數。

附註

使用滑鼠左鍵選擇多邊形的頂點,並在選擇所有頂點後使用滑鼠右鍵確認選取。

範例

>>> from skimage import data, future
>>> import matplotlib.pyplot as plt  
>>> camera = data.camera()
>>> mask = future.manual_polygon_segmentation(camera)  
>>> fig, ax = plt.subplots()  
>>> ax.imshow(mask)           
>>> plt.show()                

skimage.future.predict_segmenter(features, clf)[原始碼]#

使用預先訓練的分類器分割影像。

參數:
featuresndarray

特徵陣列,其最後一個維度對應於特徵數量,其他維度與要分割的影像形狀或展平的影像相容。

clf分類器物件

經過訓練的分類器物件,公開 predict 方法,如 scikit-learn 的 API 中所示,例如 RandomForestClassifierLogisticRegression 分類器的實例。分類器必須已經過訓練,例如使用 skimage.future.fit_segmenter()

傳回值:
outputndarray

從分類器的預測建立的標記陣列。

使用局部特徵和隨機森林的可訓練分割

使用局部特徵和隨機森林的可訓練分割
class skimage.future.TrainableSegmenter(clf=None, features_func=None)[原始碼]#

基礎:object

用於分類像素的估計器。

參數:
clf分類器物件,選用

分類器物件,公開 fitpredict 方法,如 scikit-learn 的 API 中所示,例如 RandomForestClassifierLogisticRegression 分類器的實例。

features_func函式,選用

在影像的所有像素上計算特徵的函式,要傳遞給分類器。輸出應具有形狀 (m_features, *labels.shape)。如果為 None,則使用 skimage.feature.multiscale_basic_features()

方法

fit(image, labels)

使用部分標記(註釋)的影像來訓練分類器。

predict(image)

使用經過訓練的內部分類器分割新影像。

compute_features

__init__(clf=None, features_func=None)[原始碼]#
compute_features(image)[原始碼]#
fit(image, labels)[原始碼]#

使用部分標記(註釋)的影像來訓練分類器。

參數:
imagendarray

輸入影像,它可以是灰階或多通道,並且必須具有與 self.features_func 相容的維度數。

labels整數的 ndarray

標記過的陣列,形狀與 image 相容(單通道影像的形狀相同)。標籤 >= 1 對應到訓練集,標籤 0 對應到要分割的未標記像素。

predict(image)[原始碼]#

使用經過訓練的內部分類器分割新影像。

參數:
imagendarray

輸入影像,它可以是灰階或多通道,並且必須具有與 self.features_func 相容的維度數。

引發:
如果尚未擬合 self.clf,則為 NotFittedError(使用 self.fit)。