簡體   English   中英

什么是 C++ 實現或本地峰值檢測器 skimage.feature.peak_local_max 的模擬?

[英]What is a C++ implementation or analogue of the local peak detector skimage.feature.peak_local_max?

我需要在深度圖像上找到局部峰值,以便為 C++ 中的分水嶺算法生成標記。

我的 Python 實現使用skimage.feature.peak_local_max生成分水嶺算法的標記。

找不到 skimage.feature.peak_local_max function 的C++實現C++ 類似物

一些尋找矩陣局部最大值的算法也可能會有所幫助。

distance = scipy.ndimage.distance_transform_edt(image)
local_maxi = skimage.feature.peak_local_max(distance, indices=False, footprint=np.ones((3, 3)), labels=image)
markers = scipy.ndimage.label(local_maxi)[0]
labels = skimage.segmentation.watershed(-distance, markers, mask=image)

峰值查找器示例

請對 C++ 實現本地峰值查找器有任何想法嗎? 謝謝!

如果您想要一個純 C++ 實現,我建議您看看 ITK。 ITK 的RegionalMaximalImageFilter class 將生成一個二值圖像,前景代表局部最大值。 它甚至適用於局部最大值恆定的“平坦”區域。 此鏈接顯示了一個示例: RegionalMaxim

原圖:

原始圖像

局部最大值圖像:

局部最大值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM