Dithering

Metode til at nedgradere antallet af farver eller gråtonenuancer i et billede, idet originalens repertoire simuleres under brug af langt færre farve- eller grånuancer. Dithering udnytter at øjet på en passende afstand vil udjævne fine detaljer i et billede således at de opfattes som en jævn farve- eller gråtone. Dithering anvendes ved skærme, og er et simpelt alternativ til halvtonegengivelse ved raster i forbindelse med trykning.

Almindeligvis har digitale skærme og dot-printere kun meget begrænsede variationsmuligheder med hensyn til størrelsen eller intensiteten af viste prikker. Det er således for printere typisk kun to muligheder: enten at sætte en prik, og dermed få fuld intensitet af den pågældende farve (sort ved sort/hvid printere eller cyan, magenta og gul for farveprintere), eller at undlade at sætte en prik, hvorved papirets farve lades uændret i det aktuelle punkt.

Ved at lade tætheden af prikker variere på et område af papiret, som er stort i forhold til udstrækningen af den enkelte prik, kan det simuleres at der er flere nuancer. Betragtet på en afstand, som er så stor, at øjet ikke kan skelne de enkelte punkter, vil området nemlig synes lyst eller mørkt (kraftigt/svagt farvet) afhængig af tætheden. Jo mindre og mere tætliggende prikker en given printer kan sætte, desto større kvalitet kan opnås ved dithering.

Dithering tager udgangspunkt i en matrix, eksempelvis 3 x 3 punkter. Med en sådan matrix kan 10 forskellige intensitetsniveauer simuleres. Dette skyldes, at mellem nul og ni punkter i matricen kan være sat, hvilket giver 10 muligheder.

Dithermatricer kan have mange forskellige størrelser, typisk mellem 2 x 2 og 16 x 16 punkter, og er ikke nødvendigvis kvadratiske. Jo større en dithermatrix er, desto flere nuancer kan simuleres. Antallet af nuancer er givet ved antallet af punkter i matricen plus én. Store dithermatricer udvisker imidlertid detaljerne i billedet. Er fine detaljer derfor af vigtighed, må små dithermatricer benyttes, hvorfor der må renonceres på kravet om nuancerigdom.

Ved dithering af et digitalt gråtonebillede med f.eks. følgende 3 x 3 matrix

178  229  127
 51   25  102
153   76  204
betragtes først de 3 x 3 pixler i øverste venstre hjørne af billedet. Pixelværdierne, som her kan ligge i intervallet 0 til 255 (otte bit pr. pixel) sammenlignes hver med værdien i den samme position i dithermatricen. Er pixelværdien mindre end tallet i dithermatricen, sættes en prik. Når de 3 x 3 første pixler er behandlet, flyttes dithermatricen til pixelblokken umiddelbart til højre, og processen gentages. Når billedets højre kant nås, behandles blokken, som befinder sig yderst til venstre tre linier længere nede. Således fortsættes, indtil hele billedet er behandlet. På figuren ses resultatet af denne proces for tre simple billeder på hver 40 x 40 pixel. Bemærk at de resulterende prikker her er kvadratiske og skarpt afgrænsede; det vil de sjældent være i praksis.

Ditheringmatricen skal vælges, så risikoen for dannelse af utilsigtede mønstre (artifakter) gøres mindst mulig. Herudover kan resultatet forbedres ved at fejlen, dvs. forskellen mellem originalen og resultatet, udjævnes over et større område ved en teknik, der betegnes "error diffusion".

Forfattere: 
Henrik Graversen
Casper Thomsen
Tine Havkrog Jensen