Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Billedbehandling Processering af digitale billeder.

Liknende presentasjoner


Presentasjon om: "Billedbehandling Processering af digitale billeder."— Utskrift av presentasjonen:

1 Billedbehandling Processering af digitale billeder

2 dIntProg, E12 Billedbehandling Lighten BlurDarkenInvert

3 dIntProg, E12 Billedrepræsentation x y Pixel (x, y)  [0..255] 0 ~ sort, 255 ~hvid x  [0..width[, y  [0..heigth[ 0 0 height width

4 dIntProg, E12 Image, et interface til digitale billeder public class Image { // returnerer billedets højde public int getHeight() // returnerer billedets bredde public int getWidth() // returnerer billedelementet på position (x, y) public Pixel getPixel(int x, int y) // returnerer en liste med samtlige pixels i billedet public List getPixels() // returnerer de op til ni naboer til (x, y) public List getNeighbours(int x, int y) // gentegner billedet public void pixelsUpdated() }

5 dIntProg, E12 getHeight public class Image { // returnerer billedets højde public int getHeight()... } height

6 dIntProg, E12 getWidth public class Image {... // returnerer billedets bredde public int getWidth()... } width

7 dIntProg, E12 getPixel public class Image {... // returnerer billedelementet på position (x, y) public Pixel getPixel(int x, int y)... } x y

8 dIntProg, E12 getPixels public class Image {... // returnerer en liste med samtlige pixels i billedet public List getPixels()... }

9 dIntProg, E12 getNeighbours public class Image {... // returnerer de op til ni naboer til (x, y) public List getNeighbours(int x, int y)... } x y

10 dIntProg, E12 Pixel public class Pixel{ // returnerer gråtonen for denne pixel public int getValue() // opdaterer gråtonen for denne pixel public void setValue(int value) }

11 dIntProg, E12 Simpel billedbehandling for ( Pixel p : image.getPixels() ) { int oldValue = p.getValue(); int newValue; // calculate newValue // from oldValue p.setValue(newValue); } image p

12 dIntProg, E12 Brighten newValue = oldValue + 30

13 Brighten, Javakode for ( Pixel p : image.getPixels() ) { int oldValue = p.getValue(); int newValue; newValue = oldValue + 30; p.setPixel(newValue); } image p dIntProg, E12

14 Invert newValue = oldValue

15 Invert, Javakode for ( Pixel p : image.getPixels() ) { int oldValue = p.getValue(); int newValue; newValue = 255 – oldValue; p.setPixel(newValue); } image p dIntProg, E12

16 Koordinatbaseret gennemløb for (int y=0; y

17 dIntProg, E12 Invert, koordinatbaseret public void invert() { // go through all pixels and // invert the colour value for(int y = 0; y < image.height(); y++) { for(int x = 0; x < image.width(); x++) { Pixel p = image.getPixel(x, y); int oldValue = p.getValue(); int newValue; newValue = 255 – oldValue; p.setValue(newValue); } // redisplay the image on screen image.pixelsUpdated(); }

18 dIntProg, E12 Invert, koordinatbaseret og kompakt public void invert() { // go through all pixels and // invert the colour value for(int y = 0; y < image.height(); y++) { for(int x = 0; x < image.width(); x++) { image.getPixel(x, y).setValue(invert(x, y)); } // redisplay the image on screen image.pixelsUpdated(); } public int invert(int x, int y) { return 255-image.getValue(x, y); }

19 dIntProg, E12 Blur newValue = gennemsnit af naboer

20 dIntProg, E12 Blur, koordinatbaseret public Image blur() { Image result= new Image(image.getWidth(), image.getHeight(), "blurredImage”); for (int y = 0; y

22 dIntProg, E12 Billedoperationer (2) rotateR Rotér billedet -90 grader (90 grader med uret, højre om) thresholding Sæt alle pixels der højst har tærskelværdien til 0 og alle pixels større end tærskelværdien til 255 Parameter: tærskelværdien thresholding Sæt hver pixel til sort (0), grå (127) eller hvid (255) border Sæt en sort ramme omkring billedet Parameter: rammens bredde smoothing Erstat hvert pixel med gennemsnitsværdien i det 3x3 kvadrat det er centrum i

23 dIntProg, E12 Billedoperationer (3) oilPainting Erstat hvert pixel med den hyppigst forekommende værdi i det nxn kvadrat det er centrum i Parameter: størrelsen på kvadratet (n) fillImage Fyld billedet med en given farve Parameter: farveværdien drawRect Tegn et rektangel ind på billedet Parametre: øverste venstre og nederste højre hjørne samt en farve

24 dIntProg, E12 Billedoperationer (4) fillRect Udfyld et givent rektangel i billedet med en farve Parametre: øverste venstre og nederste højre hjørne af rektanglet samt fyldfarven add Læg et billede til et andet. Billeder ad- deres ved at addere værdierne for korres- ponderende pixels Parameter: et billede subtract Træk et billede fra et andet Parameter: et billede crop Skær et rektangel ud af et billede og lav dette til et nyt billede Parametre: øverste venstre og nederste højre hjørne på crop-rektanglet


Laste ned ppt "Billedbehandling Processering af digitale billeder."

Liknende presentasjoner


Annonser fra Google