pic*_*ict 5 language-agnostic algorithm image-processing computer-vision computational-geometry
我已经看到了很多关于算法基于什么的解释,但我似乎无法找到中轴转换本身的任何实际代码(伪代码或某种语言).
对于某些情况(例如具有离散角的多边形),它可以简化为delaunay三角形,但我更关心的是你有一个blob(例如人类被跟踪)并想要计算它的骨架.
这个伪代码会是什么样的?
Here你有以下代码pymorph library:
它基本上是:
def mmskelm(f, B=None, option="binary"):
from string import upper
from Numeric import asarray
if B is None: B = mmsecross()
assert mmisbinary(f),'Input binary image only'
option = upper(option)
k1,k2 = mmlimits(f)
y = mmgray(mmintersec(f, k1),'uint16')
iszero = asarray(y)
nb = mmsesum(B,0)
for r in range(1,65535):
ero = mmero( f, nb)
if mmisequal(ero, iszero): break
f1 = mmopenth( ero, B)
nb = mmsedil(nb, B)
y = mmunion(y, mmgray(f1,'uint16',r))
if option == 'BINARY':
y = mmbinary(y)
return y
Run Code Online (Sandbox Code Playgroud)
当然,它使用同一包中的其他功能.
一个例子来自 Mathematica

HTH!
| 归档时间: |
|
| 查看次数: |
2026 次 |
| 最近记录: |