Advertisement
daaca

Sharpen

Apr 1st, 2015
31
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.36 KB | None | 0 0
  1. import java.awt.Color;
  2. import java.awt.image.BufferedImage;
  3.  
  4. @SuppressWarnings("unused")
  5. public class Sharpen implements BaseFilter {
  6.     @Override
  7.     public BufferedImage process(BufferedImage source) {
  8.         BufferedImage slika = new BufferedImage(source.getWidth(), source.getHeight(), BufferedImage.TYPE_INT_RGB);
  9.         for (int x = 0; x < source.getWidth(); x++)
  10.         {
  11.             for (int y = 0; y < source.getHeight(); y++)
  12.             {
  13.                 slika.setRGB(x, y, source.getRGB(x, y));
  14.             }
  15.         }
  16.         double[][] tabela = {{0, -0.67, 0}, {-0.67, 3.67, -0.67}, {0, -0.67, 0}};
  17.         for (int x = 1; x < source.getWidth() - 1; x++)
  18.         {
  19.             for (int y = 1; y < source.getHeight() - 1; y++)
  20.             {
  21.                 int red = 0;
  22.                 int green = 0;
  23.                 int blue = 0;
  24.                 for (int i = -1; i < 2; i++)
  25.                 {
  26.                     for (int j = -1; j < 2; j++)
  27.                     {
  28.                         Color c = new Color(source.getRGB(x+j, y+i));
  29.                         red += tabela[i+1][j+1]*c.getRed();
  30.                         green += tabela[i+1][j+1]*c.getGreen();
  31.                         blue += tabela[i+1][j+1]*c.getBlue();
  32.                     }
  33.                 }
  34.                 if (red < 0)
  35.                     red = 0;
  36.                 else if (red > 255)
  37.                     red = 255;
  38.                 if (green < 0)
  39.                     green = 0;
  40.                 else if (green > 255)
  41.                     green = 255;
  42.                 if (blue < 0)
  43.                     blue = 0;
  44.                 else if (blue > 255)
  45.                     blue = 255;
  46.                 Color c = new Color(red, green, blue);
  47.                 int rgb = c.getRGB();
  48.                 slika.setRGB(x, y, rgb);
  49.             }
  50.         }
  51.         return slika;
  52.     }
  53.  
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement