380 likes | 394 Views
Branch and Bound Method for Discrete Tomography Reconstruction of hv-convex Binary Matrices. P ot Mikloš VT Š Subotica. X-rays. y. f ( x , y ). u. s. σ. x. Computerized Tomography. Reconstruct f ( x , y ) from its projections. Discrete Tomography.
E N D
Branch and Bound Method for Discrete Tomography Reconstruction of hv-convex Binary Matrices Pot Mikloš VTŠ Subotica
X-rays y f (x,y) u s σ x Computerized Tomography Reconstruct f (x,y) from its projections.
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).
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.
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.
Convexity • The convexity property means that the series of 1’s is not broken: • Horizontal convexity (h-convexity) • Vertical convexity (v-convexity) • Horizontal and vertical convexity (hv-convexity) • No convexity
Convexity • By introducing hv-convexity we exclude the switching components. h-convex v-convex hv-convex no-convex
Explanation of the method We have n-k+1 possibilities to place k black pixels on n positions (in a convex way). R=[2 3 2 1] C=[1 3 3 1] Three possibilities to place two 1’s on four positions
Tree development The tree after two levels of development
Edge cutting The four digit number at the nodes shows the current column sum. Does any of the four digits exceed the given column sum? If so, we cut that edge. On the previous picture the leftmost and rightmost nodes fail to satisfy this condition (2210 vs. 1331 and 0122 vs. 1331).
Edge cutting • Since we aim to reconstruct a hv-convex matrix, we know that in any column of the matrix after a 1-to-0 transition no 1 can follow. • To track the occurance of 1-to-0 transitions, we put a marker (dot) on the digit where the transition occurred.
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.
Performance and speed-up Let’s consider the matrix with the following row and column sum C=[4 3 2 1] R=[1 2 3 4]
Performance and speed-up After a 90° CW rotation of the above matrix, R and C becomes: R=[4 3 2 1] C=[4 3 2 1]
Row sum maximum start • Matrix rotation does not necessarily help to increase the computational speed. • Very often, the majority of the 1’s is placed in the middle of the matrix.
Row sum maximum start R=[2 2 6 8 7 3 2 1] C=[2 3 3 6 7 6 3 1] In this case we’ll have at least 42 nodes on level 2. Possible solution: to start from the row with most ones.
Row sum maximum start Developing the tree from row with most 1’s
Conclusion • We showed a new method for reconstructing binary matrices 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. • So before reconstruction, it is suggested to analyze the matrix first, and according to the elements of R and C to decide which method to use.