the reconstruction of some 3d convex polyominoes from
play

The Reconstruction of Some 3D Convex Polyominoes from Orthogonal - PowerPoint PPT Presentation

The Reconstruction of Some 3D Convex Polyominoes from Orthogonal Projections Maciej G ebala Institute of Mathematics Wrocaw University of Technology email: mgc@im.pwr.wroc.pl SOFSEM02 p.1 Discrete Tomography Basic Problem:


  1. The Reconstruction of Some 3D Convex Polyominoes from Orthogonal Projections Maciej G˛ ebala Institute of Mathematics Wrocław University of Technology email: mgc@im.pwr.wroc.pl SOFSEM’02 – p.1

  2. Discrete Tomography Basic Problem: Reconstruction of finite point sets that are acces- sible only through some of their discrete X-rays. SOFSEM’02 – p.2

  3. 2D Convex Polyomino Set of cells S in a m × n grid with properties: S is connected, S in each row and each column is connected. SOFSEM’02 – p.3

  4. 3D Convex Polyomino Set of cells S in n × n × n grid with properties: S is connected, each two-dimensional orthogonal section of the grid contains 2D convex polyomino. SOFSEM’02 – p.4

  5. Orthogonal Projections Orthogonal projections - the number of cells in each bar of the grid that belongs to S . 0 0 0 0 0 0 0 2 3 1 0 0 0 0 0 0 0 1 4 2 1 0 0 0 0 0 0 0 2 2 2 3 4 3 0 0 0 0 0 0 0 1 2 3 3 2 1 2 0 0 0 0 0 0 0 2 2 2 3 2 Top projections P T 0 0 0 0 0 0 0 1 2 2 2 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 2 2 1 0 0 0 0 0 0 0 3 3 2 0 0 0 0 0 0 0 1 3 1 2 0 0 0 0 0 0 0 1 1 4 5 2 1 0 0 0 0 0 0 0 2 2 4 3 Front projections P F 0 0 0 0 0 0 0 2 2 4 4 1 2 4 1 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 3 0 0 0 0 0 0 0 2 1 3 1 1 2 5 4 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 2 2 Side Projections P S 0 0 0 0 0 0 0 4 4 2 2 0 0 0 0 0 0 0 1 4 2 1 SOFSEM’02 – p.5

  6. Reconstruction Problem Given three assigned matrices: P F , P S , P T ∈ { 0 , . . . , n } n × n , we examine whether there exists at least one convex polyomino S with adequate orthogonal projections. SOFSEM’02 – p.6

  7. Full 3D Convex Polyomino 3D Convex Polyomino with at least one matrix of projections does not contain zeros ( full matrix ). We determine that P T is a full matrix. 1 1 1 2 3 1 1 2 2 2 4 3 1 1 2 1 2 3 3 3 3 3 2 2 3 3 4 2 2 3 2 2 2 2 1 1 2 3 2 1 2 1 P T 1 1 2 3 2 2 1 0 0 0 0 0 0 0 1 3 2 1 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 4 4 2 2 0 0 0 0 0 0 0 2 2 4 5 2 4 4 0 0 0 0 0 0 0 3 4 5 4 3 3 P F 5 4 3 2 1 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 1 2 3 1 0 0 0 0 0 0 0 3 4 4 2 0 0 0 0 0 0 0 2 2 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 2 5 4 2 2 0 0 0 0 0 0 0 3 3 4 5 4 3 P S 0 0 0 0 0 0 0 1 2 3 4 5 0 0 0 0 0 0 0 1 2 2 2 SOFSEM’02 – p.7

  8. Our Result Theorem. The problem of the reconstruction of full convex 3D polyominoes from orthogonal projections has the complexity O ( n 7 log n ) . SOFSEM’02 – p.8

  9. Properties of 2D Convex Polyom. auxiliary values D ց j , U ց j , D ւ j , U ւ (easy computable) j ∀ j ∈{ 1 ,...,n } U ց ≤ D ց U ւ ≤ D ւ j . ∧ j j j ∀ j ∈{ 1 ,...,n − 1 } D ց j + 1 ≥ U ց D ւ j +1 + 1 ≥ U ւ j . ∧ j +1 Lemma. Let cells [1 , p 1 ] and [ n, p 2 ] belong to the convex polyomino S . Then 1. if p 1 ≤ p 2 then cells [1 , p 1 ] , . . . , [ D ց p 1 , p 1 ] , and [ U ց j , j ] , . . . , [ D ց j , j ] ∀ j ∈{ p 1 +1 ,...,p 2 − 1 } , and [ U ց p 2 , p 2 ] , . . . , [ n, p 2 ] also belong to the S , or 2. if p 1 ≥ p 2 then cells [ U ւ p 2 , p 2 ] , . . . , [ n, p 2 ] , and [ U ւ j , j ] , . . . , [ D ւ j , j ] ∀ j ∈{ p 2 +1 ,...,p 1 − 1 } , and [ D ւ p 1 , p 1 ] , . . . , [1 , p 1 ] also belong to the S . SOFSEM’02 – p.9

  10. Example of Properties D U h i 1 2 3 4 6 8 8 7 7 7 7 7 7 7 6 8 8 5 3 1 v j H i 2 2 3 5 5 10 7 17 9 26 10 36 7 41 7 50 5 55 5 60 5 65 5 70 7 77 8 85 8 93 7 100 5 105 3 108 2 110 2 112 1 3 6 10 16 24 32 39 46 53 60 67 74 81 87 95 103 108 111 112 V j SOFSEM’02 – p.10

  11. Algorithm 1. Compute start positions (a) select one cell in each corner vertical bar (b) from Lemma compute positions of cells belonging to S in both lateral slices of the grid (c) from Lemma compute positions of cells belonging to S in vertical slices orthogonal to slices from (b) 2. Perform Filling Procedure SOFSEM’02 – p.11

  12. Example of Reconstruction 1 1 1 2 3 1 1 2 2 2 4 3 1 1 2 1 2 3 3 3 3 3 2 2 3 3 4 2 2 3 2 2 2 2 1 1 2 3 2 1 2 1 P T 1 1 2 3 2 2 1 0 0 0 0 0 0 0 1 3 2 1 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 4 4 2 2 2 2 4 5 2 4 4 0 0 0 0 0 0 0 3 4 5 4 3 3 0 0 0 0 0 0 0 5 4 3 2 1 0 0 0 0 0 0 0 P F 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 1 2 3 1 3 4 4 2 0 0 0 0 0 0 0 2 2 4 4 0 0 0 0 0 0 0 4 4 2 5 4 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 4 5 4 3 0 0 0 0 0 0 0 1 2 3 4 5 P S 0 0 0 0 0 0 0 1 2 2 2 SOFSEM’02 – p.12

  13. Example of Initial Positions 1 1 1 2 3 1 1 2 2 2 4 3 1 1 2 1 2 3 3 3 3 3 2 2 3 3 4 2 2 3 2 2 2 2 1 1 2 3 2 1 2 1 P T 1 1 2 3 2 2 1 0 0 0 0 0 0 0 1 3 2 1 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 4 4 2 2 2 2 4 5 2 4 4 0 0 0 0 0 0 0 3 4 5 4 3 3 0 0 0 0 0 0 0 5 4 3 2 1 0 0 0 0 0 0 0 P F 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 1 2 3 1 3 4 4 2 0 0 0 0 0 0 0 2 2 4 4 0 0 0 0 0 0 0 4 4 2 5 4 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 4 5 4 3 0 0 0 0 0 0 0 1 2 3 4 5 P S 0 0 0 0 0 0 0 1 2 2 2 SOFSEM’02 – p.12

  14. Example of Using the Lemma 1 1 1 2 3 1 1 2 2 2 4 3 1 1 2 1 2 3 3 3 3 3 2 2 3 3 4 2 2 3 2 2 2 2 1 1 2 3 2 1 2 1 P T 1 1 2 3 2 2 1 0 0 0 0 0 0 0 1 3 2 1 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 4 4 2 2 2 2 4 5 2 4 4 0 0 0 0 0 0 0 3 4 5 4 3 3 0 0 0 0 0 0 0 5 4 3 2 1 0 0 0 0 0 0 0 P F 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 1 2 3 1 3 4 4 2 0 0 0 0 0 0 0 2 2 4 4 0 0 0 0 0 0 0 4 4 2 5 4 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 4 5 4 3 0 0 0 0 0 0 0 1 2 3 4 5 P S 0 0 0 0 0 0 0 1 2 2 2 SOFSEM’02 – p.12

  15. Example of Using the Lemma 1 1 1 2 3 1 1 2 2 2 4 3 1 1 2 1 2 3 3 3 3 3 2 2 3 3 4 2 2 3 2 2 2 2 1 1 2 3 2 1 2 1 P T 1 1 2 3 2 2 1 0 0 0 0 0 0 0 1 3 2 1 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 4 4 2 2 2 2 4 5 2 4 4 0 0 0 0 0 0 0 3 4 5 4 3 3 0 0 0 0 0 0 0 5 4 3 2 1 0 0 0 0 0 0 0 P F 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 1 2 3 1 3 4 4 2 0 0 0 0 0 0 0 2 2 4 4 0 0 0 0 0 0 0 4 4 2 5 4 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 4 5 4 3 0 0 0 0 0 0 0 1 2 3 4 5 P S 0 0 0 0 0 0 0 1 2 2 2 SOFSEM’02 – p.12

  16. Example of Using the Lemma 1 1 1 2 3 1 1 2 2 2 4 3 1 1 2 1 2 3 3 3 3 3 2 2 3 3 4 2 2 3 2 2 2 2 1 1 2 3 2 1 2 1 P T 1 1 2 3 2 2 1 0 0 0 0 0 0 0 1 3 2 1 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 4 4 2 2 2 2 4 5 2 4 4 0 0 0 0 0 0 0 3 4 5 4 3 3 0 0 0 0 0 0 0 5 4 3 2 1 0 0 0 0 0 0 0 P F 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 1 2 3 1 3 4 4 2 0 0 0 0 0 0 0 2 2 4 4 0 0 0 0 0 0 0 4 4 2 5 4 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 4 5 4 3 0 0 0 0 0 0 0 1 2 3 4 5 P S 0 0 0 0 0 0 0 1 2 2 2 SOFSEM’02 – p.12

  17. Example of Start Positions 1 1 1 2 3 1 1 2 2 2 4 3 1 1 2 1 2 3 3 3 3 3 2 2 3 3 4 2 2 3 2 2 2 2 1 1 2 3 2 1 2 1 P T 1 1 2 3 2 2 1 0 0 0 0 0 0 0 1 3 2 1 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 4 4 2 2 2 2 4 5 2 4 4 0 0 0 0 0 0 0 3 4 5 4 3 3 0 0 0 0 0 0 0 5 4 3 2 1 0 0 0 0 0 0 0 P F 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 1 2 3 1 3 4 4 2 0 0 0 0 0 0 0 2 2 4 4 0 0 0 0 0 0 0 4 4 2 5 4 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 4 5 4 3 0 0 0 0 0 0 0 1 2 3 4 5 P S 0 0 0 0 0 0 0 1 2 2 2 SOFSEM’02 – p.12

  18. Example of 3D Convex Polyomino 1 1 1 2 3 1 1 2 2 2 4 3 1 1 2 1 2 3 3 3 3 3 2 2 3 3 4 2 2 3 2 2 2 2 1 1 2 3 2 1 2 1 P T 1 1 2 3 2 2 1 0 0 0 0 0 0 0 1 3 2 1 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 4 4 2 2 2 2 4 5 2 4 4 0 0 0 0 0 0 0 3 4 5 4 3 3 0 0 0 0 0 0 0 5 4 3 2 1 0 0 0 0 0 0 0 P F 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 1 2 3 1 3 4 4 2 0 0 0 0 0 0 0 2 2 4 4 0 0 0 0 0 0 0 4 4 2 5 4 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 4 5 4 3 0 0 0 0 0 0 0 1 2 3 4 5 P S 0 0 0 0 0 0 0 1 2 2 2 SOFSEM’02 – p.12

  19. Filling Procedure - properties It returns fail if 3D convex polyomino with computing start positions and adequate matrices of projections does not exist. Otherwise it returns 3D convex polyomino. It works correctly if start positions contain at least one cell of polyomino in each vertical bar. SOFSEM’02 – p.13

  20. Filling Procedure - the main idea h = 10 - the value of the projection for the bar p q r l 0 0 1 1 1 1 0 p ˜ q ˜ ˜ r ˜ l operation ⊕ - the integration of the block of 1’s p q r l 0 0 1 1 1 1 1 1 0 p ˜ ˜ q ˜ r ˜ l operation ⊖ - the integration of the two final blocks of 0’s h 0 0 0 0 1 1 1 1 1 1 0 0 h operation ⊗ - the expansion of the block of 1’s h 0 0 0 0 1 1 1 1 1 1 1 0 0 h operation ⊙ - the expansion of the two final blocks of 0’s p q r l 0 0 0 0 1 1 1 1 1 1 1 0 0 0 p ˜ ˜ q ˜ r ˜ l SOFSEM’02 – p.14

  21. Complexity n 4 – the number of different initial positions; O ( n 2 ) – the cost of computing of the start positions; O ( n 3 log n ) – the cost of the Filling Procedure. Complexity of the Algorithm – O ( n 4 · n 3 log n ) . SOFSEM’02 – p.15

Recommend


More recommend