Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.01 KB | None | 0 0
  1. import java.io.*;
  2. import java.util.*;
  3. import java.awt.*;
  4. import java.awt.event.*;
  5. import java.awt.geom.AffineTransform;
  6. import java.awt.image.*;
  7. import javax.imageio.*;
  8. import javax.swing.*;
  9. import java.awt.AlphaComposite;
  10. import java.awt.Graphics2D;
  11. import java.awt.Image;
  12. import java.awt.RenderingHints;
  13. import java.awt.image.BufferedImage;
  14. import java.io.File;
  15. import java.io.IOException;
  16. import javax.swing.ImageIcon;
  17. import javax.imageio.ImageIO;
  18. import java.awt.*;
  19. import java.awt.event.*;
  20. import java.util.*;
  21.  
  22. public class ExamineImage{
  23.  
  24. double[][] lumm;
  25. int[][] aa ;
  26. int[][] rr;
  27. int[][] gg ;
  28. int[][] bb ;
  29. //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  30. public static String iImgName = "z";
  31. //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  32.  
  33. public void rgb(String ffile) {
  34. BufferedImage img=null;
  35.  
  36. File myFile = new File(ffile);
  37. // File[] listOfFiles = myFolder.listFiles();
  38.  
  39. try{
  40.  
  41. if (myFile.isFile()) {
  42.  
  43. img = ImageIO.read(myFile);
  44. int width=0;
  45. int height=0;
  46.  
  47. int count=0;
  48. double avg=0;
  49. if(img!=null){
  50. width = img.getWidth();
  51. height = img.getHeight();
  52. }
  53. System.out.println("Width " + width + " " + height);
  54. /* */
  55. aa = new int[width][height];
  56. rr = new int[width][height];
  57. gg = new int[width][height];
  58. bb = new int[width][height];
  59. lumm = new double[width][height];
  60.  
  61. for(int x=0; x< width; x++){
  62. for (int y=0;y< height;y++){
  63.  
  64. int pixelCol = img.getRGB(x, y);
  65. int a = (pixelCol >>> 24) & 0xff;
  66. int r = (pixelCol >>> 16) & 0xff;
  67. int g = (pixelCol >>> 8) & 0xff;
  68. int b = pixelCol & 0xff;
  69. /* */
  70. aa[x][y] = a;
  71. rr[x][y] = r;
  72. gg[x][y] = g;
  73. bb[x][y] = b;
  74.  
  75. lumm[x][y]= (0.2126*r) + (0.7152*g) + (0.0722*b);
  76.  
  77. }}
  78.  
  79. // image(rr,gg,bb,lumm);
  80. }
  81.  
  82. }catch(Exception e){
  83.  
  84. System.out.println("THERE WAS A PROBLEM " + e);
  85. }
  86.  
  87. }//end of lumanance method
  88.  
  89.  
  90. //this creates a new image
  91. public void image(int[][] red, int[][] green, int[][] blue, double[][] lum)
  92. {
  93. //make some changes to the pixels
  94.  
  95.  
  96. for(int x=0; x< red.length-1; x++){
  97. for (int y=0;y < red[0].length-1;y++){
  98. int r = red[x][y];
  99. int g = green[x][y];
  100. int b = blue[x][y];
  101.  
  102. //int col = ((r << 16)-255) | ((g <<8)-255) | b-255;
  103.  
  104. }
  105. }
  106.  
  107. //make changes above
  108.  
  109. //create new image using new values
  110. BufferedImage img = new BufferedImage(red.length, red[0].length, BufferedImage.TYPE_INT_RGB);
  111. for (int x = 0; x< red.length; x++){
  112. for (int y = 0; y< red[0].length; y++){
  113.  
  114. int r = red[x][y];
  115. int g = green[x][y];
  116. int b = blue[x][y];
  117. r = 255 - r;//I invert the img by subtracting the pixel's color vals from 255
  118. g = 255 - g;
  119. b = 255 - b;
  120.  
  121. r = r - 100;//this is my other filter, it basically just makes the whole image darker
  122. g = g - 100;
  123. b = b - 100;
  124. int col = (r << 16) | (g << 8) | b;
  125. img.setRGB(x, y, col);
  126.  
  127. }}
  128. File f = new File("inverted.jpg");
  129.  
  130. try{
  131. ImageIO.write(img, "JPEG", f);
  132. //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  133. iImgName = "inverted.jpg";
  134. //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  135. } catch(Exception e){
  136.  
  137. }
  138.  
  139. }
  140.  
  141.  
  142. }//end of class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement