Guest User

Untitled

a guest
Oct 23rd, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.19 KB | None | 0 0
  1. import javax.swing.*;
  2. import java.awt.event.*;
  3. import java.awt.*;
  4. import java.util.*;
  5. import javax.swing.filechooser.*;
  6. import java.io.*;
  7.  
  8. public class ChooseFile extends JPanel implements ActionListener {
  9. JButton go;
  10. String sourceFolder="";
  11. String theFile="";
  12. JFileChooser chooser;
  13. String choosertitle;
  14. public ChooseFile() {
  15. go = new JButton("Choose Folder");
  16. go.addActionListener(this);
  17. add(go);
  18. }
  19.  
  20. public void actionPerformed(ActionEvent e) {
  21.  
  22. System.out.println("Button Clicked");
  23. chooser = new JFileChooser();
  24. chooser.setCurrentDirectory(new java.io.File("."));
  25. chooser.setDialogTitle(choosertitle);
  26. FileNameExtensionFilter filter = new FileNameExtensionFilter("JPG, PNG & GIF Images", "jpg", "gif", "png");
  27. chooser.setFileFilter(filter);
  28. chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
  29.  
  30. if (chooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
  31. String dirr = "" + chooser.getCurrentDirectory();
  32. File file = chooser.getSelectedFile();
  33. if(dirr.substring(dirr.length()-1,dirr.length()).equals(".")){
  34. dirr = dirr.substring(0,dirr.length()-1);
  35. sourceFolder=""+dirr + "" + file.getName();
  36. } else{
  37. sourceFolder=""+dirr + "/" + file.getName();
  38. }
  39. System.out.println("Folder path: " + dirr + " | File Name: " + file.getName());
  40. System.out.println(sourceFolder);
  41. ExamineImage.lum(sourceFolder);
  42. } else {
  43. System.out.println("No Selection ");
  44. }
  45. }
  46.  
  47. public Dimension getPreferredSize(){
  48. return new Dimension(200, 200);
  49. }
  50.  
  51. public static void main(String s[]) {
  52. JFrame frame = new JFrame("");
  53. ChooseFile panel = new ChooseFile();
  54. frame.addWindowListener(
  55. new WindowAdapter() {
  56. public void windowClosing(WindowEvent e) {
  57. System.exit(0);
  58. }
  59. }
  60. );
  61. frame.getContentPane().add(panel,"Center");
  62. frame.setSize(panel.getPreferredSize());
  63. frame.setVisible(true);
  64. }
  65. }
  66. ========================================================
  67. import java.io.*;
  68. import java.util.*;
  69. import java.awt.*;
  70. import java.awt.event.*;
  71. import java.awt.geom.AffineTransform;
  72. import java.awt.image.*;
  73. import javax.imageio.*;
  74. import javax.swing.*;
  75. import java.awt.AlphaComposite;
  76. import java.awt.Graphics2D;
  77. import java.awt.Image;
  78. import java.awt.RenderingHints;
  79. import java.awt.image.BufferedImage;
  80. import java.io.File;
  81. import java.io.IOException;
  82. import javax.swing.ImageIcon;
  83. import javax.imageio.ImageIO;
  84. import java.awt.*;
  85. import java.awt.event.*;
  86. import java.util.*;
  87.  
  88. public class ExamineImage{
  89. public static void lum(String ffile) {
  90. BufferedImage img=null;
  91.  
  92. File myFile = new File(ffile);
  93. //File[] listOfFiles = myFolder.listFiles();
  94.  
  95. try{
  96. if (myFile.isFile()) {
  97. img = ImageIO.read(myFile);
  98. int width = 0;
  99. int height = 0;
  100. int count = 0;
  101. double avg = 0;
  102. double sum = 0;
  103. if(img!=null){
  104. width = img.getWidth();
  105. height = img.getHeight();
  106. }
  107. System.out.println("Width " + width + " " + height);
  108. for(int x = 0; x < width; x++){
  109. for (int y = 0;y < height; y++){
  110. int pixelCol = img.getRGB(x, y);
  111. int a = (pixelCol >>> 24) & 0xff;
  112. int r = (pixelCol >>> 16) & 0xff;
  113. int g = (pixelCol >>> 8) & 0xff;
  114. int b = pixelCol & 0xff;
  115. double lum = (0.2126*r) + (0.7152*g) + (0.0722*b);
  116. sum += lum;
  117. count++;
  118. }
  119. }
  120. avg = sum/count;
  121. System.out.println("The average luminance is " + avg);
  122. }
  123. }catch(Exception e){
  124. System.out.println("THERE WAS A PROBLEM " + e);
  125. }
  126. }//end of lumanance method
  127. }
Add Comment
Please, Sign In to add comment