36
Disc Covering Problem with Application to Digital Half toning 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

Disc Covering Problem with Application to Digital Halftoning

  • Upload
    king

  • View
    31

  • Download
    0

Embed Size (px)

DESCRIPTION

Disc Covering Problem with Application to Digital Halftoning. Dagstuhl Workshop, 2004. 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. - PowerPoint PPT Presentation

Citation preview

Page 1: Disc Covering Problem with Application to Digital Halftoning

Disc Covering Problem with Application to Digital Halftoning

Disc Covering Problem with Application to Digital Halftoning

Tetsuo AsanoSchool of Information Science,

JAIST Japan Advanced Institute of Science and Technology

Joint Work withShinji Sasahara, Fuji Xerox Co.Ltd.

        Peter Brass, CUNY, U.S.A.

Tetsuo AsanoSchool of Information Science,

JAIST Japan Advanced Institute of Science and Technology

Joint Work withShinji Sasahara, Fuji Xerox Co.Ltd.

        Peter Brass, CUNY, U.S.A.

Dagstuhl   Workshop, 2004

Page 2: Disc Covering Problem with Application to Digital Halftoning

Problem: R = {r11, r12, ... , rnn} : a matrix of n2 positive real numbers. Each rij is a radius of a disc at (i,j). Choose disks so as to maximize the total singly-covered area.

Problem Specification

2.4 3.3 3.6 4.1 2.5

2.5 3.5 3.8 3.3 1.9

2.6 3.7 3.2 2.5 1.5

2.2 3.3 2.2 1.2 1.0

1.9 1.7 3.5 3.6 4.2

R=circle of radius 1.2

singly-covered area

Page 3: Disc Covering Problem with Application to Digital Halftoning

Example:

a set of input discsgiven by a matrix

a set of discs that maximizes the totalsingly-covered area

Page 4: Disc Covering Problem with Application to Digital Halftoning

a set of discs singly-covered area

Page 5: Disc Covering Problem with Application to Digital Halftoning

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:

Page 6: Disc Covering Problem with Application to Digital Halftoning

NP-hard or polynomial-time algorithm? openOne-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?

Page 7: Disc Covering Problem with Application to Digital Halftoning

Approximation algorithm with guaranteed performance

Cu: a disc with center at u r(Cu): radius of the disc Cu

Cu

u

Algorithm 1:・ Sort all the discs in the decreasing order of their radii.・ for each disc Cu in the order do・ if Cu does not intersect any previously accepted disc・ then accept it else reject it・ Output all the accepted discs.

Page 8: Disc Covering Problem with Application to Digital Halftoning

input set of discs accepted discs by Algorithm 1

Page 9: Disc Covering Problem with Application to Digital Halftoning

Lemma 5: Algorithm 1 finds a 9-approximate solution.

Proof:

S: a set of all input discsS’: a solution (set of discs) obtained by Algorithm 1.all the discs in S’ are disjoint.

(1) r(Cv) r(C≧ u) : larger discs are examined firstIf we enlarge Cv by a factor 3, the all the discs rejected by Cv are completely contained in the enlarged disc.

Cu: a disc which has not been accepted by Algorithm 1there must be some disc Cv such that (1) Cv has been examined before Cu, and (2) Cv intersects Cu.

Cu

Cv

Page 10: Disc Covering Problem with Application to Digital Halftoning

Approximation algorithm with better performance

some terminologies and notations: Cu: a disc with center at u r(Cu): radius of the disc Cu

R(Cu): a disc contracted by , 0<<1, which is called the core of the disc Cu.

In this caseCv violates Cu

but Cu does notviolates Cv

Cu

R(Cu)

R(Cv)

Cv

Cv violates Cu

if Cv intersects the core R(Cu) of Cu.

Otherwise, two discs safely intersect.

Page 11: Disc Covering Problem with Application to Digital Halftoning

Algorithm 2:・ Sort all the discs in the decreasing order of their radii.・ for each disc Cu in the order do・ if Cu is not violated by any previously accepted disc (i.e., Cu does not intersect the core of any previously accepted disc)

・ then accept it else reject it・ Output all the accepted discs.

Cu

R(Cu)

R(Cv)

Cvin this caseCu can be accepted

Page 12: Disc Covering Problem with Application to Digital Halftoning

input set of discs accepted discs

Page 13: Disc Covering Problem with Application to Digital Halftoning

Lemma 6: Algorithm 2 finds a 5.83-approximate solution.

Proof:

Cu: a disc which has not been accepted by Algorithm 2there must be some disc Cv such that (1) Cv has been examined before Cu, and (2) Cv violates Cu i.e., Cv intersects the core of Cu.

Cu

R(Cu)

R(Cv)

Cv

Enlarge each accepted disc by a factor 2 +

Page 14: Disc Covering Problem with Application to Digital Halftoning

Cu

Enlarge each accepted disc by a factor 2 +

Cv

R(Cv)

R(Cu)

)()2(

)(2)(

)(2))((

v

vv

vv

Cr

CrCr

CrCRrr

Every disc rejected by Cv is completely contained inthe enlarged disc.

How much area is covered exactly once by accepted discs?

Page 15: Disc Covering Problem with Application to Digital Halftoning

How much area is covered exactly once by accepted discs?

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.

Page 16: Disc Covering Problem with Application to Digital Halftoning

accepted discs additively weightedVoronoi diagram of the discs

blow up a disc by 2+ truncate each cell by the copy

partition into angular sectors

Page 17: Disc Covering Problem with Application to Digital Halftoning

Voronoi edge outside disc

Voronoi edge inside disc

In this angular sector,at least 1/(2+)2 is occupiedby the disc.

2+

1

The core is not overlappedby any other disc. So, the ratiois at least 2.

Page 18: Disc Covering Problem with Application to Digital Halftoning

Voronoi edge outside disc

Voronoi edge inside disc

In this angular sector,at least 1/(2+)2 is occupiedby the disc.

The core is not overlappedby any other disc. So, the ratiois at least 2.

We chooseso 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.

Page 19: Disc Covering Problem with Application to Digital Halftoning

NP-hardness proof (uncompleted)

reduction from planar 3SAT

variable part

we have to chooseeither all of red circlesor all of blue circles.

Page 20: Disc Covering Problem with Application to Digital Halftoning

NP-hardness proof(continued)

path part

Page 21: Disc Covering Problem with Application to Digital Halftoning

NP-hardness proof(continued)

clause part

Page 22: Disc Covering Problem with Application to Digital Halftoning

Open Problems

• Improve the approximation ratio

approximation ratio 2 or (1+)? O(n log n) time and O(n) space for practic

al applications

• Complete NP-hardness proof

Page 23: Disc Covering Problem with Application to Digital Halftoning

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.

Page 24: Disc Covering Problem with Application to Digital Halftoning

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.

Cu

R(Cu)

R(Cv)

Cv

In this algorithm, the first disc in the raster order is alwaysaccepted, which may be a bad choice for future selection.

Page 25: Disc Covering Problem with Application to Digital Halftoning

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.

Cu

R(Cu)

R(Cv)

Cv

Page 26: Disc Covering Problem with Application to Digital Halftoning

Experimental Results

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

Page 27: Disc Covering Problem with Application to Digital Halftoning

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

Page 28: Disc Covering Problem with Application to Digital Halftoning

Output of Heuristic Algorithm 1(contracted discs)

Page 29: Disc Covering Problem with Application to Digital Halftoning

Output of Heuristic Algorithm 1(discs of original sizes)

Page 30: Disc Covering Problem with Application to Digital Halftoning

Voronoi diagram for the set of circle centers

Page 31: Disc Covering Problem with Application to Digital Halftoning

Output of Heuristic Algorithm 2(contracted discs)

Page 32: Disc Covering Problem with Application to Digital Halftoning

Output of Heuristic Algorithm 2(discs of original sizes)

Page 33: Disc Covering Problem with Application to Digital Halftoning

Voronoi diagram for the set of circle centers

Page 34: Disc Covering Problem with Application to Digital Halftoning

Fill out each Voronoi cellaccording to the grey levelat the center point of the cellby cubic interpolation

Page 35: Disc Covering Problem with Application to Digital Halftoning

Output halftoned image

Page 36: Disc Covering Problem with Application to Digital Halftoning

enlarged picture of a part