Presentation is loading. Please wait.

Presentation is loading. Please wait.

Disc Covering Problem with Application to Digital Halftoning Tetsuo Asano School of Information Science, JAIST Japan Advanced Institute of Science and.

Similar presentations


Presentation on theme: "Disc Covering Problem with Application to Digital Halftoning Tetsuo Asano School of Information Science, JAIST Japan Advanced Institute of Science and."— Presentation transcript:

1 Disc Covering Problem with Application to Digital Halftoning Tetsuo Asano School of Information Science, JAIST Japan Advanced Institute of Science and Technology Joint Work with Shinji Sasahara, Fuji Xerox Co.Ltd. Peter Brass, CUNY, U.S.A. Tetsuo Asano School of Information Science, JAIST Japan Advanced Institute of Science and Technology Joint Work with Shinji Sasahara, Fuji Xerox Co.Ltd. Peter Brass, CUNY, U.S.A. Dagstuhl Workshop, 2004

2 Problem: R = {r 11, r 12,..., r nn } : a matrix of n 2 positive real numbers. Each r ij is a radius of a disc at (i,j). Choose disks so as to maximize the total singly-covered area. Problem Specification 2.43.33.64.12.5 3.53.83.31.9 2.63.73.22.51.5 2.23.32.21.21.0 1.91.73.53.64.2 R= circle of radius 1.2 singly-covered area

3 Example: a set of input discs given by a matrix a set of discs that maximizes the total singly-covered area

4 a set of discssingly-covered area

5 How hard is it? NP-hard? Approximation algorithm with guaranteed ratio One-dimensional problem still hard? or an efficient algorithm? Motivation application to digital halftoning: conversion from continuous-tone images to binary-tone images Algorithmic questions and Motivation:

6 NP-hard or polynomial-time algorithm? open One-dimensional problem still hard? or an efficient algorithm? polynomial-time algorithms 1. graph-based approach 2. plane-sweep and dynamic programming How hard is it? NP-hard?

7 Approximation algorithm with guaranteed performance C u : a disc with center at u r(C u ): radius of the disc C u CuCu u Algorithm 1: ・ Sort all the discs in the decreasing order of their radii. ・ for each disc C u in the order do ・ if C u does not intersect any previously accepted disc ・ then accept it else reject it ・ Output all the accepted discs.

8 input set of discs accepted discs by Algorithm 1

9 Lemma 5: Algorithm 1 finds a 9-approximate solution. Proof: S: a set of all input discs S’: a solution (set of discs) obtained by Algorithm 1.  all the discs in S’ are disjoint. (1)  r(C v ) ≧ r(C u ) : larger discs are examined first If we enlarge C v by a factor 3, the all the discs rejected by C v are completely contained in the enlarged disc. C u : a disc which has not been accepted by Algorithm 1  there must be some disc C v such that (1) C v has been examined before C u, and (2) C v intersects C u. CuCu CvCv

10 Approximation algorithm with better performance some terminologies and notations: C u : a disc with center at u r(C u ): radius of the disc C u R  (C u ): a disc contracted by , 0<  <1, which is called the core of the disc C u. In this case C v violates C u but C u does not violates C v CuCu R  (C u ) R  (C v ) CvCv C v violates C u if C v intersects the core R  (C u ) of C u. Otherwise, two discs safely intersect.

11 Algorithm 2: ・ Sort all the discs in the decreasing order of their radii. ・ for each disc C u in the order do ・ if C u is not violated by any previously accepted disc (i.e., C u does not intersect the core of any previously accepted disc) ・ then accept it else reject it ・ Output all the accepted discs. CuCu R  (C u ) R  (C v ) CvCv in this case C u can be accepted

12 input set of discsaccepted discs

13 Lemma 6: Algorithm 2 finds a 5.83-approximate solution. Proof: C u : a disc which has not been accepted by Algorithm 2  there must be some disc C v such that (1) C v has been examined before C u, and (2) C v violates C u i.e., C v intersects the core of C u. CuCu R  (C u ) R  (C v ) CvCv Enlarge each accepted disc by a factor 2 + 

14 CuCu CvCv R  (C v ) R  (C u ) Every disc rejected by C v is completely contained in the enlarged disc. How much area is covered exactly once by accepted discs?

15 a set of accepted discs additively weighted Voronoi diagram of the discs truncate each Voronoi cell of an accepted disc by its blown-up copy evaluate how much area in each cell is covered by the disc ratio > 1 / 5.83.

16 accepted discs additively weighted Voronoi diagram of the discs blow up a disc by 2+  truncate each cell by the copy partition into angular sectors

17 Voronoi edge outside disc Voronoi edge inside disc In this angular sector, at least 1/(2+  ) 2 is occupied by the disc. 2+  1 The core is not overlapped by any other disc. So, the ratio is at least  2.

18 Voronoi edge outside disc Voronoi edge inside disc In this angular sector, at least 1/(2+  ) 2 is occupied by the disc. The core is not overlapped by any other disc. So, the ratio is at least  2. We choose  so that  2 = 1 / (2+  ) 2. Then, the ratio of singly-covered area is at least 1/(2+  ) 2.  approximation ratio is (2+  ) 2 =5.83.

19 NP-hardness proof (uncompleted) reduction from planar 3SAT variable part we have to choose either all of red circles or all of blue circles.

20 NP-hardness proof(continued) path part

21 NP-hardness proof(continued) clause part

22 Open Problems Improve the approximation ratio approximation ratio 2 or (1+  )? O(n log n) time and O(n) space for practical applications Complete NP-hardness proof

23 Concluding Remarks considered a geometric optimization problem to choose discs among n given discs to maximize the singly-covered area. Application: adaptive digital halftoning. Proposed some heuristic algorithms and verified their effectiveness by experiments.

24 Heuristic Algorithm 1 (1) Fix a contraction factor  appropriately. (2) D = a set of all discs in the raster order (3) for each disc C in D (in raster order) accept C if core(C) does not intersect the core of any previously accepted disc and reject it otherwise. CuCu R  (C u ) R  (C v ) CvCv In this algorithm, the first disc in the raster order is always accepted, which may be a bad choice for future selection.

25 Heuristic Algorithm 2 (1) Fix a contraction factor  appropriately. (2) D = a set of all discs in the decreasing order of their radii (3) for each disc C in D (large discs first) accept C if core(C) does not intersect the core of any previously accepted disc and reject it otherwise. CuCu R  (C u ) R  (C v ) CvCv

26 Experimental Results Input images small: 106 x 85, and large: 256 x 320  enlarge them into 424 x 340 and 1024 x 1280 

27 Running time Heuristic 1: 0.06 sec. for the small image 0.718 sec. for the large image on PC: DELL Precision 350 with Pentium 4. Heuristic 2: 0.109 sec. for the small image 1.031 sec. for the large image

28 Output of Heuristic Algorithm 1(contracted discs)

29 Output of Heuristic Algorithm 1(discs of original sizes)

30 Voronoi diagram for the set of circle centers

31 Output of Heuristic Algorithm 2(contracted discs)

32 Output of Heuristic Algorithm 2(discs of original sizes)

33 Voronoi diagram for the set of circle centers

34 Fill out each Voronoi cell according to the grey level at the center point of the cell by cubic interpolation

35 Output halftoned image

36 enlarged picture of a part


Download ppt "Disc Covering Problem with Application to Digital Halftoning Tetsuo Asano School of Information Science, JAIST Japan Advanced Institute of Science and."

Similar presentations


Ads by Google