0
我在MATLAB中使用bwdist,但我想使用特定的窗口大小。我認爲MATLAB使用它的默認窗口大小。有沒有其他功能可以讓我使用自己的窗口大小?使用具有特定窗口大小的bwdist(距離轉換)
我在MATLAB中使用bwdist,但我想使用特定的窗口大小。我認爲MATLAB使用它的默認窗口大小。有沒有其他功能可以讓我使用自己的窗口大小?使用具有特定窗口大小的bwdist(距離轉換)
歐幾里德距離變換測量像素之間的確切距離。由於精確距離涉及sqrt()的計算,因此計算量很大。
爲了解決這個問題,可以使用3x3的Chamfer掩模來近似直到誤差爲8%的距離,只用線性計算(不含sqrt())。 尺寸爲5x5的面具的誤差約爲3%。
如果想要非倒角距離(例如曼哈頓距離)的距離變換比倒角完全不相關。
總之:在Matlab中沒有窗口大小。當你要求歐氏距離變換時,它使用精確的計算。爲了逼近它,可以使用準歐幾里德距離。對於其他距離(棋盤/曼哈頓),計算精確而快速。 您無法使用距離變換來模擬倒角蒙版。
在openCV中 - 距離轉換使用倒角蒙版,您可以設置蒙版的大小。通常使用5x5掩模,因爲較大的掩碼會獲得幾乎相同的結果(對於人眼而言不明顯的差異)
沒有窗口大小的概念。對於每個像素,「bwdist」都會給出與最近的非零像素的距離。 –
@Parag:其實我正在尋找倒角變換,發現dis函數可以做類似的工作。 – Sam
據我所知,'bwdist'是倒角轉換系統的一個組成部分 –