+ All Categories
Home > Technology > Efficient realization for geometric transformation of digital images in run length encoding.

Efficient realization for geometric transformation of digital images in run length encoding.

Date post: 13-Apr-2017
Category:
Upload: shlomo-pongratz
View: 300 times
Download: 0 times
Share this document with a friend
38
MS works in computer science in the Open University. Efficient realization for geometric transformation of digital images in run length encoding.
Transcript
Page 1: Efficient realization for geometric transformation of digital images in run length encoding.

MS works in computer science in the Open University.

Efficient realization for geometric transformation of digital images in

run length encoding.

Page 2: Efficient realization for geometric transformation of digital images in run length encoding.

By Shlomo Pongratz.

Instructor: Dr Jack Weinstein.

Page 3: Efficient realization for geometric transformation of digital images in run length encoding.

Seven by six pixels digital image of the letter A.

0 0 0 0 0 0 6(0)0 0 1 0 0 0 2(0)1(1)3(0)0 1 0 1 0 0 1(0)1(1)1(0)1(1)2(0)0 1 0 1 0 0 1(0)1(1)1(0)1(1)2(0)0 1 1 1 0 0 1(0)3(1)2(0)0 1 0 1 0 0 1(0)1(1)1(0)1(1)2(0)0 0 0 0 0 0 6(0)

Page 4: Efficient realization for geometric transformation of digital images in run length encoding.

Image serialization.

• height=6,width=7,6(0)2(0)1(1)3(0)1(0)1(1)1(0)2(0)1(0)1(1)1(0)2(0)1(0)3(1)2(0)1(0)1(1)1(0)2(0)6(0).

Page 5: Efficient realization for geometric transformation of digital images in run length encoding.

Create directory is linearoffset = 0;for (line = 0; line < hight; line++){

{length = 0;while (length < width){length += run.getLength();run.next();offset++;}output(offset);}

}

Page 6: Efficient realization for geometric transformation of digital images in run length encoding.

The Geometric Operations OP Procedure

No op Copy source to destination row by row run by run.

Column flip Read input columns in reverse order.

Row flip Read input rows in reverse order.

Rotate 180° Do row flip and column flip.

Diagonal flip Swap rows with columns.

Rotate 90° (CCW) Do column flip and then diagonal flip.

Rotate 270° (CW) Do row flip and then diagonal flip.

Opposite diagonal flip Do 180° rotation and diagonal flip.

Rotate by 0° < α ≤ 45°  

Rotate by 0° > α ≥ 45°  

Rotate by any angle  

Page 7: Efficient realization for geometric transformation of digital images in run length encoding.

The No Op operation.

Page 8: Efficient realization for geometric transformation of digital images in run length encoding.

The Columns flip operation. • for (line = 0; line < height; i++)• {• start = directory[line];• ends = directory[line + 1];• // go backwards• for (index = ends – 1; index >= start; index--)• {• output_run(image[index]);• }• }

Page 9: Efficient realization for geometric transformation of digital images in run length encoding.

The Rows flip operation. • for (line = 0; line < height; line++)• {• start = directory[height - line - 1];• ends = directory[height - line];• // go forwards• for (index = start; index < end; index++)• {• output_run(image[index]);• }• }

Page 10: Efficient realization for geometric transformation of digital images in run length encoding.

The Rotation by 180° operation.

• for (line = 0; line < height; line++)• {• start = directory[height - line - 1];• ends = directory[height - line];• // go backwards• for (index = ends – 1; index >= start; index--)• {• output_run(image[index]);• }• }

Page 11: Efficient realization for geometric transformation of digital images in run length encoding.

The Diagonal Flip operation.

• Merging process• For each line sequence runi={leni,colouri}

• Create ordered list {Σij=0 lenj,colouri}

• Use regular merging algorithm• Compare colours while merging.

Page 12: Efficient realization for geometric transformation of digital images in run length encoding.

Same colour runs

Page 13: Efficient realization for geometric transformation of digital images in run length encoding.

Different colour runs

Page 14: Efficient realization for geometric transformation of digital images in run length encoding.

States in merge

  1 0 3 2 1 1 1 0 0

0 1 0 0 0 0 0 0 0 0

1 0 0 0 0 1 1 1 0 0

2 0 0 1 1 1 1 1 0 0

3 0 0 0 1 1 1 0 0 0

4 0 0 0 0 1 1 0 0 0

5 0 0 0 0 0 0 0 0 0

6 0 0 0 0 0 0 0 0 0

  0 1 2 3 4 5 6 7 8

  1 0 3 4 1 1 1 0 0

0 1 0 0 0 0 0 0 0 0

1 0 0 0 0 1 1 1 0 0

2 0 0 1 1 1 1 1 0 0

3 0 0 0 1 1 1 0 0 0

4 0 0 0 0 1 1 0 0 0

5 0 0 0 0 0 0 0 0 0

6 0 0 0 0 0 0 0 0 0

  0 1 2 3 4 5 6 7 8

Page 15: Efficient realization for geometric transformation of digital images in run length encoding.

Source to destination problem• for (I= 0; I < 10; I++)• {

– for (J = 0; J< 10; J++)– {

• map pixel at [I,J] to• [round(I * cos(30) – J*sin(30)) , round(I*sin(30) + J * cos(30)) }

• }

Page 16: Efficient realization for geometric transformation of digital images in run length encoding.

(0:0) (0:1) (0:2) (0:3) (-1:3) (-1:4) (-2:5) (-2:6) (-3:7) (-3:8)

(1:1) (0:1) (0:2) (0:3) (0:4) (-1:5) (-1:6) (-2:7) (-2:7) (-3:8)

(2:1) (1:2) (1:3) (0:4) (0:4) (0:5) (0:6) (-1:7) (-1:8) (-2:9)

(3:1) (2:2) (2:3) (1:4) (1:5) (0:6) (0:7) (0:8) (0:8) (-1:9)

(3:2) (3:3) (2:4) (2:5) (1:5) (1:6) (0:7) (0:8) (0:9) (0:10)

(4:2) (4:3) (3:4) (3:5) (2:6) (2:7) (1:8) (1:9) (0:9) (0:10)

(5:3) (5:4) (4:5) (4:6) (3:6) (3:7) (2:8) (2:9) (1:10) (1:11)

(6:3) (6:4) (5:5) (5:6) (4:7) (4:8) (3:9) (3:10) (2:10) (2:11)

(7:4) (6:5) (6:6) (5:7) (5:7) (4:8) (4:9) (3:10) (3:11) (2:12)

(8:4) (7:5) (7:6) (6:7) (6:8) (5:9) (5:10) (4:11) (4:11) (3:12)

Page 17: Efficient realization for geometric transformation of digital images in run length encoding.

Tanaka et-al algorithm

102

tan1*1sin01

*10

2tan1

cossinsincos a

a

a

aaaa

Page 18: Efficient realization for geometric transformation of digital images in run length encoding.
Page 19: Efficient realization for geometric transformation of digital images in run length encoding.
Page 20: Efficient realization for geometric transformation of digital images in run length encoding.

Eliminate Vertical sheer.

0110

*10

sin1*

0110

1sin01 a

a

Page 21: Efficient realization for geometric transformation of digital images in run length encoding.

Combining it all together

Page 22: Efficient realization for geometric transformation of digital images in run length encoding.

What’s wrong

Not linear in the worst case

Page 23: Efficient realization for geometric transformation of digital images in run length encoding.

One pass algorithm                                        1 1 1 1 1

                              0 0 0 1 1 0 0 0 0 0

                    1 1 1 1 1 1 1 1 0 0          

          0 0 1 1 1 1 1 1 1 1                    

0 0 0 0 0 0 0 1 1 1                              

0 0 0 0 0                                        

                                                 

Page 24: Efficient realization for geometric transformation of digital images in run length encoding.

1st case

Page 25: Efficient realization for geometric transformation of digital images in run length encoding.

2nd case

Page 26: Efficient realization for geometric transformation of digital images in run length encoding.

3rd case

Page 27: Efficient realization for geometric transformation of digital images in run length encoding.

4th case

Page 28: Efficient realization for geometric transformation of digital images in run length encoding.

5th case

Page 29: Efficient realization for geometric transformation of digital images in run length encoding.

6th case

Page 30: Efficient realization for geometric transformation of digital images in run length encoding.

7th case

Page 31: Efficient realization for geometric transformation of digital images in run length encoding.

1st case

Page 32: Efficient realization for geometric transformation of digital images in run length encoding.

2nd case

Page 33: Efficient realization for geometric transformation of digital images in run length encoding.

3rd case

Page 34: Efficient realization for geometric transformation of digital images in run length encoding.

4th case

Page 35: Efficient realization for geometric transformation of digital images in run length encoding.

5th case

Page 36: Efficient realization for geometric transformation of digital images in run length encoding.

Cohen algorithm

Page 37: Efficient realization for geometric transformation of digital images in run length encoding.

What’s wrong

cossinsincos

tan1tantan1

10tan1

*1tan01

2

Page 38: Efficient realization for geometric transformation of digital images in run length encoding.

Fixing Cohen's algorithm

cossinsincos

10tan1

sec00sin

1tan01

Note – non reversible


Recommended