/** * Will open an image */ public void openFile(){ JFileChooser c = new JFileChooser(); if (c.showOpenDialog(canvas) == JFileChooser.APPROVE_OPTION) { System.out.println("You chose to open this file: " + c.getSelectedFile().getName()); File file = c.getSelectedFile(); // Get filename String fileName = c.getSelectedFile().getName().toLowerCase(); // See if filename has correct extension if(fileName.endsWith(".jpg") || fileName.endsWith(".jpeg") || fileName.endsWith(".gif") || fileName.endsWith(".bmp") || fileName.endsWith(".png")){ BufferedImage img = null; try { img = ImageIO.read(file); original = this.convertToGrayScale(img); System.out.println("File Succesfully loaded"); } catch (IOException exception) { System.out.println("Error while loading image"); } } else{ System.out.println("Wrong File Extension"); } } } /** * Will create and return a gray scale image of the given image * @param img * @return */ private BufferedImage convertToGrayScale(BufferedImage img) { int width = img.getWidth(); int height = img.getHeight(); BufferedImage grayImg = new BufferedImage(width, height,BufferedImage.TYPE_BYTE_GRAY); Graphics g = grayImg.getGraphics(); g.drawImage(img, 0, 0, null); g.dispose(); return grayImg; }