Branch and Bound Discrete Tomography Reconstruction of Binary

Branch and Bound
Discrete Tomography
Reconstruction of
Binary Contours
Póth Miklós
Subotica Tech
Lendák Imre
FTN Novi Sad
Tomography
A technique for imaging the 2D crosssections of 3D objects
- parts of human body with X-rays
- structure of molecules or crystals
- obtaining shape information of industrial
parts
2
Computerized Tomography
X-rays
y
f (x,y)
The goal is to reconstruct f (x,y) from
its projections.
σ
x
Projection of angle σ is a line integral:

g ( s,  ) 
 f ( x, y)du

3
Discrete Tomography
In many applications the range of the function
to be reconstructed is discrete and known  DT
(only few 2-10 projections are needed)
f : R2 D, if D={0,1} then f has only binary values
(presence or absence of material)  binary tomography
4
Discrete Tomography
Reconstruction of a discrete set from its
projections (2-10, in our case 2).
Binary Tomography: the matrix has only binary
values.
Trivial necessary condition for existence of the
solution: rowsum(15) = colsum(15).
5
Classification
Unique
Inconsistent
Non-unique
6
Convexity
The convexity property means that the
series of 1’s is not broken:
 In the horizontal direction (h-convexity)
 In the vertical direction (v-convexity)
 In the horizontal and vertical directions
(hv-convexity)
7
Convexity
h-convex
v-convex
hv-convex
no-convex
► By
introducing hv-convexity we exclude the
switching components.
8
Branch and Bound (B & B)
► Global
Optimization Method.
► For problems with finite, but very large
number of solutions.
► For problems where no polynomial
algorithm is known.
► Can be slow (exponential growth with
problem size).
► In some cases faster convergence.
9
Branch and Bound (B&B)
► The
search space is very large.
► B&B works with the divide and conquer
principle: the search space is subdivided
into smaller subregions (branching).
► Strength of B&B: when bounds on a large
subregion show that it contains only inferior
solutions, and so the entire subregion can
be discarded without further examination.
10
Convex contours
Inner territory
is hv-convex
Inner territory is
not hv-convex
Inner territory
hv-convex, but
not 4-connected
11
Explanation of the method
First and last row consist from one part.
First and last column consist from one part.
All other rows and columns consist from
exactly two parts.
If the inner territory of the contour is
hv-convex, the perimeter of the contour
is constant (4*a-4).
12
Explanation of the method
On row 1 we have n-k+1 possibilities to place
k black pixels on n positions (in a convex way).
R=[3 4 3 2 5 3]
C=[4 2 3 3 4 4]
Four possibilities to place three 1’s on six positions
13
Explanation of the method
a)
b)
R=[3 4 3 2 5 3]
C=[4 2 3 3 4 4]
c)
Development of row 2.
a) (1+3), not possible combination
b) (2+2) not possible combination,
c) (3+1) only possibility
14
Explanation of the method
Failure of combination (2+1) on row 3,
only possibility left is (1+2).
Contour development to row 4
R=[3 4 3 2 5 3]
C=[4 2 3 3 4 4]
15
Explanation of the method
Development of elimination tree up to level 5
16
Edge cutting
After every row, we check the number of 4neighbours. If the ones on current row have
two 4-neighbours, we cut that edge.
Does any of the column sum exceed the
given column sum? If so, we cut that edge.
Since the inner territory of the contour is
hv-convex, we develop the elimination tree
towadrs the first and last columns.
17
Tree analysis
► The
number of levels of the tree equals the
number of rows of the matrix to be
reconstructed (assuming that a solution
exists).
► The
number of solutions equals the number
of leaves.
18
Possible speed-up strategies
If a corner is filled with value 1, the execution time is much shorter
First we check if any of the corners is filled with value 1.
If we fail to find a solution for any of the corners,
we continue with the regular algorithm.
Finding a solution when one of the corners has value 1
19
Experimental results
Execution times for 20x20, 30x30,
40x40 and 50x50 matrix sizes
in milliseconds
Minimal, maximal and average execution times
for 20x20, 30x30, 40x40 and 50x50 matrix sizes
in milliseconds
20
Conclusion
► We
showed a new method for reconstructing
binary
contours
from
its
orthogonal
projections.
► This
method finds all the possible results that
satisfy the row sum and column sum
constraint and the hv-convexity property.
► If
any of the corners is occupied with 1, the
solution can be found much quicker.
21
Thank you for your attention.
Questions?
22