Input:
Itest - a testing image with an unknown landmark position |
ℛi, i = {Coarsest, ⋯, Finest} − ℛi is the regression forest trained in the i-th resolution |
ρ0 - the voting neighborhood size for the 2nd coarsest resolution |
Output: p - detected landmark position |
Notations: 𝒩(x, ρ) - ρ-neighborhood of voxel x; 𝒩(Itest) - entire image domain of Itest
|
Initialization: ρ = ρ0
|
for
i = Coarsest To Finest do
|
Re-sample image Itest to resolution i
|
/* Set the voting area Φ */ |
Φ = 𝒩(Itest) |
if
i ≠ Coarsest then
|
Φ = 𝒩(p, ρ) |
ρ = ρ=2 /* Reduce the voting area by 23 in the next finer resolution */ |
end if
|
/* 3D displacement prediction */ |
for every voxel x in region Φ do
|
Predict the 3D displacement d̂(x) by regression forest ℛi
|
end for
|
/* Landmark voting */ |
Initialize voting map V to be zero and of the same size with Itest
|
for every voxel x in region Φ do
|
V (ROUND(x + d̂(x)) + = 1 |
end for
|
/* Landmark localization */ |
p = maxx
V (x) |
end for |
Return p |