Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package ctPrincipal; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JFileChooser; import javax.swing.filechooser.FileNameExtensionFilter; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartPanel; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.PlotOrientation; import org.jfree.data.category.CategoryDataset; import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.Scalar; /** * * @author Cid */ public class Principal extends javax.swing.JFrame { private File buffImageA; private File buffImageB; private BufferedImage buffOri; private BufferedImage buffDes; String[] arquivos; /** * Creates new form Principal */ public Principal() { initComponents(); } /** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { buttonGroup1 = new javax.swing.ButtonGroup(); jDImagemA = new javax.swing.JLabel(); jpInImgA = new javax.swing.JPanel(); jLImgA = new javax.swing.JLabel(); jpInImgB = new javax.swing.JPanel(); jLImgB = new javax.swing.JLabel(); jpOutImgC = new javax.swing.JPanel(); jLImgC = new javax.swing.JLabel(); jDImagemB = new javax.swing.JLabel(); jDImagem2 = new javax.swing.JLabel(); jButton1 = new javax.swing.JButton(); jButton2 = new javax.swing.JButton(); jPanel1 = new javax.swing.JPanel(); btnGo = new javax.swing.JButton(); cbOperacao = new javax.swing.JComboBox<String>(); jPanel3 = new javax.swing.JPanel(); jTMatrixWidth = new javax.swing.JTextField(); jTMatrixHeight = new javax.swing.JTextField(); jTSygmaX = new javax.swing.JTextField(); jTSygmaY = new javax.swing.JTextField(); jLabel3 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jTKsize = new javax.swing.JTextField(); jPanel4 = new javax.swing.JPanel(); rbOriginal = new javax.swing.JRadioButton(); rbGaussiano = new javax.swing.JRadioButton(); rbSalPimenta = new javax.swing.JRadioButton(); jTMin = new javax.swing.JTextField(); jTMed = new javax.swing.JTextField(); jTMax = new javax.swing.JTextField(); jTDes = new javax.swing.JTextField(); btnRuidos = new javax.swing.JButton(); jSeparator1 = new javax.swing.JSeparator(); jSeparator2 = new javax.swing.JSeparator(); jPanel5 = new javax.swing.JPanel(); jButton3 = new javax.swing.JButton(); jLTotal = new javax.swing.JLabel(); jButton4 = new javax.swing.JButton(); jButton5 = new javax.swing.JButton(); jButton6 = new javax.swing.JButton(); jPanel6 = new javax.swing.JPanel(); btnMedia = new javax.swing.JButton(); cbFiltro = new javax.swing.JComboBox<String>(); jPanel2 = new javax.swing.JPanel(); jButton9 = new javax.swing.JButton(); jTQuantizar = new javax.swing.JTextField(); jCkQuantizar = new javax.swing.JCheckBox(); jButton8 = new javax.swing.JButton(); jButton7 = new javax.swing.JButton(); jButton10 = new javax.swing.JButton(); jMenuBar1 = new javax.swing.JMenuBar(); jMenu1 = new javax.swing.JMenu(); jMiAbrir = new javax.swing.JMenuItem(); jMenuItem1 = new javax.swing.JMenuItem(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jDImagemA.setText("Dimenso : "); jpInImgA.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0))); jLImgA.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); jLImgA.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); javax.swing.GroupLayout jpInImgALayout = new javax.swing.GroupLayout(jpInImgA); jpInImgA.setLayout(jpInImgALayout); jpInImgALayout .setHorizontalGroup(jpInImgALayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jpInImgALayout.createSequentialGroup().addContainerGap() .addComponent(jLImgA, javax.swing.GroupLayout.DEFAULT_SIZE, 278, Short.MAX_VALUE) .addContainerGap())); jpInImgALayout.setVerticalGroup(jpInImgALayout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jpInImgALayout.createSequentialGroup().addContainerGap().addComponent(jLImgA, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addContainerGap())); jpInImgB.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0))); jLImgB.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); javax.swing.GroupLayout jpInImgBLayout = new javax.swing.GroupLayout(jpInImgB); jpInImgB.setLayout(jpInImgBLayout); jpInImgBLayout .setHorizontalGroup(jpInImgBLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jpInImgBLayout.createSequentialGroup().addContainerGap() .addComponent(jLImgB, javax.swing.GroupLayout.DEFAULT_SIZE, 278, Short.MAX_VALUE) .addContainerGap())); jpInImgBLayout.setVerticalGroup(jpInImgBLayout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jpInImgBLayout.createSequentialGroup().addContainerGap().addComponent(jLImgB, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addContainerGap())); jpOutImgC.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0))); jLImgC.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); javax.swing.GroupLayout jpOutImgCLayout = new javax.swing.GroupLayout(jpOutImgC); jpOutImgC.setLayout(jpOutImgCLayout); jpOutImgCLayout .setHorizontalGroup(jpOutImgCLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jpOutImgCLayout.createSequentialGroup().addContainerGap() .addComponent(jLImgC, javax.swing.GroupLayout.DEFAULT_SIZE, 279, Short.MAX_VALUE) .addContainerGap())); jpOutImgCLayout .setVerticalGroup(jpOutImgCLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jpOutImgCLayout.createSequentialGroup().addContainerGap() .addComponent(jLImgC, javax.swing.GroupLayout.DEFAULT_SIZE, 276, Short.MAX_VALUE) .addContainerGap())); jDImagemB.setText("Dimenso : "); jDImagem2.setText("Dimenso : "); jButton1.setText("Abrir Img A"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); jButton2.setText("Abrir Img B"); jButton2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton2ActionPerformed(evt); } }); jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Operaes de Imagem")); btnGo.setText("Calcular"); btnGo.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnGoActionPerformed(evt); } }); cbOperacao.setModel(new javax.swing.DefaultComboBoxModel( new String[] { "AND", "OR", "XOR", "NOT", "SOMA", "SUBTRAO", "MULTIPLICAO", "DIVISO" })); cbOperacao.setSelectedIndex(4); cbOperacao.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { cbOperacaoActionPerformed(evt); } }); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout .setHorizontalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(btnGo, javax.swing.GroupLayout.PREFERRED_SIZE, 81, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(cbOperacao, javax.swing.GroupLayout.PREFERRED_SIZE, 164, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap())); jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(cbOperacao, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(btnGo)) .addGap(0, 0, Short.MAX_VALUE))); jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Tamanho da janela")); jTMatrixWidth.setText("3"); jTMatrixHeight.setText("3"); jTSygmaX.setText("2"); jTSygmaY.setText("2"); jLabel3.setText("Sygma"); jLabel2.setText("KSize"); jTKsize.setText("5"); javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); jPanel3.setLayout(jPanel3Layout); jPanel3Layout.setHorizontalGroup(jPanel3Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup().addContainerGap().addComponent(jLabel2) .addGap(18, 18, 18) .addComponent(jTKsize, javax.swing.GroupLayout.PREFERRED_SIZE, 32, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(35, 35, 35).addComponent(jLabel3) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jTMatrixWidth, javax.swing.GroupLayout.PREFERRED_SIZE, 41, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTSygmaX, javax.swing.GroupLayout.PREFERRED_SIZE, 41, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jTMatrixHeight, javax.swing.GroupLayout.PREFERRED_SIZE, 40, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTSygmaY, javax.swing.GroupLayout.PREFERRED_SIZE, 40, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(51, Short.MAX_VALUE))); jPanel3Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] { jTMatrixHeight, jTMatrixWidth, jTSygmaX, jTSygmaY }); jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup().addGroup(jPanel3Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jTMatrixWidth, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTMatrixHeight, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jTSygmaX, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTSygmaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel3) .addComponent(jTKsize, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel2)) .addGap(3, 3, 3))); jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder( "Gerar Ruidos Med Des Min Max")); buttonGroup1.add(rbOriginal); rbOriginal.setSelected(true); rbOriginal.setText("Original"); buttonGroup1.add(rbGaussiano); rbGaussiano.setText("Gaussiano"); buttonGroup1.add(rbSalPimenta); rbSalPimenta.setText("Sal & Pimenta"); rbSalPimenta.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { rbSalPimentaActionPerformed(evt); } }); jTMin.setText("3"); jTMed.setText("10"); jTMax.setText("3"); jTDes.setText("15"); jTDes.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jTDesActionPerformed(evt); } }); btnRuidos.setText("Gerar Rudos"); btnRuidos.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnRuidosActionPerformed(evt); } }); jSeparator1.setOrientation(javax.swing.SwingConstants.VERTICAL); jSeparator2.setOrientation(javax.swing.SwingConstants.VERTICAL); javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4); jPanel4.setLayout(jPanel4Layout); jPanel4Layout.setHorizontalGroup(jPanel4Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup() .addContainerGap().addComponent(rbOriginal).addGap(6, 6, 6) .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 2, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(6, 6, 6).addComponent(rbGaussiano) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jTMed, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTDes, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 6, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(rbSalPimenta) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jTMin, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTMax, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(btnRuidos, javax.swing.GroupLayout.DEFAULT_SIZE, 109, Short.MAX_VALUE) .addContainerGap())); jPanel4Layout.setVerticalGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel4Layout.createSequentialGroup().addGroup(jPanel4Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) .addComponent(rbOriginal).addComponent(rbGaussiano).addComponent(rbSalPimenta) .addComponent(btnRuidos) .addComponent(jTMax, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTMin, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTDes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTMed, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); jPanel5.setBorder(javax.swing.BorderFactory.createTitledBorder("Abrir Lista de Imagens")); jButton3.setText("Abrir Imagens"); jButton3.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton3ActionPerformed(evt); } }); jLTotal.setText("Total de Imagens : "); jButton4.setText("Calcular Mdia"); jButton4.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton4ActionPerformed(evt); } }); jButton5.setText("Desvio Padro"); jButton5.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton5ActionPerformed(evt); } }); jButton6.setText("Gerar Grfico"); jButton6.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton6ActionPerformed(evt); } }); javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5); jPanel5.setLayout(jPanel5Layout); jPanel5Layout.setHorizontalGroup(jPanel5Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap() .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel5Layout.createSequentialGroup().addComponent(jLTotal).addGap(0, 0, Short.MAX_VALUE)) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup().addGroup(jPanel5Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jButton3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jButton5, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jButton4, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jButton6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addContainerGap())))); jPanel5Layout .setVerticalGroup( jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap() .addComponent(jLTotal) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jButton3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGap(8, 8, 8) .addComponent(jButton5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jButton4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jButton6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addContainerGap())); jPanel6.setBorder(javax.swing.BorderFactory.createTitledBorder("Execultar Filtros espaciais ")); btnMedia.setText("Filtrar"); btnMedia.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnMediaActionPerformed(evt); } }); cbFiltro.setModel(new javax.swing.DefaultComboBoxModel( new String[] { "Mdia", "Mediana", "Gaussiano", "Mximo", "Mnimo" })); javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6); jPanel6.setLayout(jPanel6Layout); jPanel6Layout.setHorizontalGroup( jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup( javax.swing.GroupLayout.Alignment.TRAILING, jPanel6Layout.createSequentialGroup().addContainerGap() .addComponent(cbFiltro, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(btnMedia, javax.swing.GroupLayout.PREFERRED_SIZE, 75, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(6, 6, 6))); jPanel6Layout.setVerticalGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel6Layout.createSequentialGroup().addGroup(jPanel6Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(btnMedia) .addComponent(cbFiltro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(0, 0, Short.MAX_VALUE))); jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("")); jButton9.setText("Quantizar"); jButton9.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton9ActionPerformed(evt); } }); jTQuantizar.setText("64"); jCkQuantizar.setText("Image Color"); jButton8.setText("PSNR"); jButton8.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton8ActionPerformed(evt); } }); jButton7.setText("Contraste"); jButton7.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton7ActionPerformed(evt); } }); jButton10.setText("Subtrao"); jButton10.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton10ActionPerformed(evt); } }); javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); jPanel2.setLayout(jPanel2Layout); jPanel2Layout.setHorizontalGroup(jPanel2Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel2Layout.createSequentialGroup().addContainerGap(26, Short.MAX_VALUE) .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jButton9, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 81, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jButton10, javax.swing.GroupLayout.Alignment.TRAILING)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jButton8, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jCkQuantizar, javax.swing.GroupLayout.Alignment.TRAILING)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(jButton7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jTQuantizar)) .addContainerGap())); jPanel2Layout.setVerticalGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel2Layout.createSequentialGroup().addContainerGap() .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jButton9).addComponent(jCkQuantizar).addComponent(jTQuantizar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jButton10).addComponent(jButton7).addComponent(jButton8)) .addGap(82, 82, 82))); jMenu1.setText("File"); jMiAbrir.setText("Abrir"); jMiAbrir.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jMiAbrirActionPerformed(evt); } }); jMenu1.add(jMiAbrir); jMenuItem1.setText("Sair"); jMenuItem1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jMenuItem1ActionPerformed(evt); } }); jMenu1.add(jMenuItem1); jMenuBar1.add(jMenu1); setJMenuBar(jMenuBar1); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup().addGap(20, 20, 20).addGroup(layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 102, Short.MAX_VALUE) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGap(20, 20, 20)) .addGroup(layout.createSequentialGroup().addGroup(layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup().addComponent(jDImagemA) .addGap(262, 262, 262).addComponent(jDImagemB)) .addGroup(layout.createSequentialGroup() .addComponent(jpInImgA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addGroup(layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jButton2).addComponent(jpInImgB, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addComponent(jButton1)).addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jDImagem2) .addComponent(jpOutImgC, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))); layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup().addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jDImagemB).addComponent(jDImagemA) .addComponent(jDImagem2)) .addGap(11, 11, 11) .addGroup(layout .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) .addComponent(jpInImgB, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jpInImgA, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jpOutImgC, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jButton1).addComponent(jButton2).addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGroup(layout.createSequentialGroup().addGap(1, 1, 1) .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); pack(); }// </editor-fold>//GEN-END:initComponents private void jMiAbrirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMiAbrirActionPerformed }//GEN-LAST:event_jMiAbrirActionPerformed private File openImagem(String Dir, boolean lista) { JFileChooser fileChooser = new JFileChooser(); BufferedImage buff = null; String caminho = null; try { caminho = new File(".").getCanonicalPath() + Dir; } catch (IOException ex) { Logger.getLogger(Principal.class.getName()).log(Level.SEVERE, null, ex); } fileChooser.setCurrentDirectory(new File(caminho)); fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY); fileChooser.addChoosableFileFilter(new FileNameExtensionFilter("Images", "jpg", "png", "gif", "bmp")); fileChooser.setAcceptAllFileFilterUsed(true); fileChooser.setMultiSelectionEnabled(true); int result = fileChooser.showOpenDialog(getComponent(0)); if (result == JFileChooser.APPROVE_OPTION) { if (lista) { File[] selectedFile = fileChooser.getSelectedFiles(); arquivos = new String[selectedFile.length]; for (int i = 0; i < selectedFile.length; i++) { selectedFile[i].setReadable(Boolean.TRUE); arquivos[i] = selectedFile[i].getAbsolutePath(); } jLTotal.setText("Total de Imagens : " + arquivos.length); } else { File selectedFile = fileChooser.getSelectedFile(); return selectedFile; } } return null; } private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed System.exit(0); }//GEN-LAST:event_jMenuItem1ActionPerformed private void cbOperacaoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cbOperacaoActionPerformed }//GEN-LAST:event_cbOperacaoActionPerformed private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed try { buffImageA = openImagem("/inputimag", false); BufferedImage buff = ImageIO.read(buffImageA); jLImgA.setIcon(new ImageIcon(buff)); if (buff != null) { jDImagemA.setText("Dimenso : " + buff.getWidth() + " X " + buff.getHeight()); } } catch (IOException ex) { Logger.getLogger(Principal.class.getName()).log(Level.SEVERE, null, ex); } }//GEN-LAST:event_jButton1ActionPerformed private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed try { buffImageB = openImagem("/inputimag", false); BufferedImage buff = ImageIO.read(buffImageB); jLImgB.setIcon(new ImageIcon(buff)); if (buff != null) { jDImagemB.setText("Dimenso : " + buff.getWidth() + " X " + buff.getHeight()); } } catch (IOException ex) { Logger.getLogger(Principal.class.getName()).log(Level.SEVERE, null, ex); } }//GEN-LAST:event_jButton2ActionPerformed private void btnGoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnGoActionPerformed int not = cbOperacao.getSelectedIndex(); Operacoes _operacoes; if (buffImageA != null && (buffImageB != null || not == 3)) { if (not != 3) { _operacoes = new Operacoes(buffImageA, buffImageB); } else { _operacoes = new Operacoes(buffImageA, buffImageA); } int action = cbOperacao.getSelectedIndex(); String buffOutput = _operacoes.realizarOperacoes(action + 1); jLImgC.setIcon(new ImageIcon(buffOutput)); } }//GEN-LAST:event_btnGoActionPerformed private void btnRuidosActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRuidosActionPerformed int opRuido = 0; int inA = 0; int inB = 0; if (buffImageA != null) { Ruidos _Ruidos = new Ruidos(buffImageA); if (rbOriginal.isSelected()) { try { BufferedImage buff = ImageIO.read(buffImageA); jLImgB.setIcon(new ImageIcon(buff)); } catch (IOException ex) { Logger.getLogger(Principal.class.getName()).log(Level.SEVERE, null, ex); } } else { if (rbGaussiano.isSelected()) { opRuido = 1; inA = Integer.parseInt(jTMed.getText()); inB = Integer.parseInt(jTDes.getText()); } if (rbSalPimenta.isSelected()) { opRuido = 2; inA = Integer.parseInt(jTMin.getText()); inB = Integer.parseInt(jTMax.getText()); } String buffOutput = _Ruidos.aplicarRuidos(opRuido, inA, inB); jLImgB.setIcon(new ImageIcon(buffOutput)); buffImageB = new File(buffOutput); } } }//GEN-LAST:event_btnRuidosActionPerformed private void rbSalPimentaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_rbSalPimentaActionPerformed // TODO add your handling code here: }//GEN-LAST:event_rbSalPimentaActionPerformed private void jTDesActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTDesActionPerformed // TODO add your handling code here: }//GEN-LAST:event_jTDesActionPerformed private void btnMediaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnMediaActionPerformed int ksize = Integer.valueOf(jTKsize.getText()); int mx = Integer.valueOf(jTMatrixWidth.getText()); int my = Integer.valueOf(jTMatrixHeight.getText()); int sx = Integer.valueOf(jTSygmaX.getText()); int sy = Integer.valueOf(jTSygmaY.getText()); if (buffImageA != null && buffImageB != null) { Filtros _filtros = new Filtros(buffImageB); int action = cbFiltro.getSelectedIndex(); String buffOutput = _filtros.aplicarFiltros(action + 1, ksize, mx, my, sx, sy); jLImgC.setIcon(new ImageIcon(buffOutput)); } }//GEN-LAST:event_btnMediaActionPerformed private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed openImagem("/inputimag", true); }//GEN-LAST:event_jButton3ActionPerformed Graficos _grafico; private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed _grafico = new Graficos(arquivos); String buffOutput = _grafico.desvioPadrao(); jLImgA.setIcon(new ImageIcon(buffOutput)); }//GEN-LAST:event_jButton5ActionPerformed private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed double d = _grafico.calculaMedia(); jLImgB.setText("Mdia do rudo: " + d); }//GEN-LAST:event_jButton4ActionPerformed private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton6ActionPerformed try { criaGrafico(); } catch (IOException ex) { Logger.getLogger(Principal.class.getName()).log(Level.SEVERE, null, ex); } }//GEN-LAST:event_jButton6ActionPerformed private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton7ActionPerformed Filtros filtro = new Filtros(buffImageA); String x = filtro.Contraste(); jLImgB.setIcon(new ImageIcon(x)); }//GEN-LAST:event_jButton7ActionPerformed private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton9ActionPerformed Quantizar _quantizar = new Quantizar(); BufferedImage imageA; try { imageA = ImageIO.read(buffImageA); _quantizar.setBiOriginal(imageA); _quantizar.setFlagEscalaCinza(!jCkQuantizar.isSelected()); _quantizar.setQuantizacao(Integer.parseInt(jTQuantizar.getText())); _quantizar.doWork(); buffOri = _quantizar.getBiResultado(); ImageIO.write(buffOri, "JPG", new File("OutputImg/Quantizar.jpg")); buffImageB = new File("OutputImg/Quantizar.jpg"); jLImgB.setIcon(new ImageIcon(buffOri)); } catch (IOException ex) { Logger.getLogger(Principal.class.getName()).log(Level.SEVERE, null, ex); } }//GEN-LAST:event_jButton9ActionPerformed private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed Psnr _psnr = new Psnr(); try { buffDes = ImageIO.read(buffImageA); } catch (IOException ex) { Logger.getLogger(Principal.class.getName()).log(Level.SEVERE, null, ex); } double result = _psnr.printPSNR(buffOri, buffDes); jLImgC.setText("PSNR = " + result + "dB"); }//GEN-LAST:event_jButton8ActionPerformed private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton10ActionPerformed if (buffImageA != null && buffImageB != null) { Operacoes _operacoes = new Operacoes(buffImageA, buffImageB); String buffOutput = _operacoes.realizarOperacoes(6); jLImgC.setIcon(new ImageIcon(buffOutput)); } }//GEN-LAST:event_jButton10ActionPerformed public void criaGrafico() throws IOException { CategoryDataset cds = _grafico.createDataset(); String titulo = "Mdia Linha de varredura "; String eixoy = "Valores"; String txt_legenda = "Pixels"; boolean legenda = true; boolean tooltips = true; boolean urls = true; JFreeChart graf = ChartFactory.createLineChart(titulo, txt_legenda, eixoy, cds, PlotOrientation.VERTICAL, true, true, true); ChartPanel myChartPanel = new ChartPanel(graf, true); myChartPanel.setSize(jPanel1.getWidth(), jPanel1.getHeight()); myChartPanel.setVisible(true); File lineChart = new File("OutputImg/grafico.jpeg"); ChartUtilities.saveChartAsJPEG(lineChart, graf, 256, 256); jLImgC.setIcon(new ImageIcon(lineChart.getAbsolutePath())); } /** * @param args the command line arguments */ public static void main(String args[]) { /* Set the Nimbus look and feel */ //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html */ try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if ("Nimbus".equals(info.getName())) { javax.swing.UIManager.setLookAndFeel(info.getClassName()); break; } } } catch (ClassNotFoundException ex) { java.util.logging.Logger.getLogger(Principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (InstantiationException ex) { java.util.logging.Logger.getLogger(Principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (IllegalAccessException ex) { java.util.logging.Logger.getLogger(Principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (javax.swing.UnsupportedLookAndFeelException ex) { java.util.logging.Logger.getLogger(Principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } //</editor-fold> /* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new Principal().setVisible(true); } }); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton btnGo; private javax.swing.JButton btnMedia; private javax.swing.JButton btnRuidos; private javax.swing.ButtonGroup buttonGroup1; private javax.swing.JComboBox<String> cbFiltro; private javax.swing.JComboBox<String> cbOperacao; private javax.swing.JButton jButton1; private javax.swing.JButton jButton10; private javax.swing.JButton jButton2; private javax.swing.JButton jButton3; private javax.swing.JButton jButton4; private javax.swing.JButton jButton5; private javax.swing.JButton jButton6; private javax.swing.JButton jButton7; private javax.swing.JButton jButton8; private javax.swing.JButton jButton9; private javax.swing.JCheckBox jCkQuantizar; private javax.swing.JLabel jDImagem2; private javax.swing.JLabel jDImagemA; private javax.swing.JLabel jDImagemB; private javax.swing.JLabel jLImgA; private javax.swing.JLabel jLImgB; private javax.swing.JLabel jLImgC; private javax.swing.JLabel jLTotal; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JMenu jMenu1; private javax.swing.JMenuBar jMenuBar1; private javax.swing.JMenuItem jMenuItem1; private javax.swing.JMenuItem jMiAbrir; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel2; private javax.swing.JPanel jPanel3; private javax.swing.JPanel jPanel4; private javax.swing.JPanel jPanel5; private javax.swing.JPanel jPanel6; private javax.swing.JSeparator jSeparator1; private javax.swing.JSeparator jSeparator2; private javax.swing.JTextField jTDes; private javax.swing.JTextField jTKsize; private javax.swing.JTextField jTMatrixHeight; private javax.swing.JTextField jTMatrixWidth; private javax.swing.JTextField jTMax; private javax.swing.JTextField jTMed; private javax.swing.JTextField jTMin; private javax.swing.JTextField jTQuantizar; private javax.swing.JTextField jTSygmaX; private javax.swing.JTextField jTSygmaY; private javax.swing.JPanel jpInImgA; private javax.swing.JPanel jpInImgB; private javax.swing.JPanel jpOutImgC; private javax.swing.JRadioButton rbGaussiano; private javax.swing.JRadioButton rbOriginal; private javax.swing.JRadioButton rbSalPimenta; // End of variables declaration//GEN-END:variables }