⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rahinterfazusuario.java

📁 This is a example about programming a neural network
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
/*
 * rahInterfazUsuario.java
 *
 * Created on 8 de octubre de 2007, 11:27 AM
 */

package rah;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.URL;
import java.io.*;
import javax.swing.filechooser.*;
import javax.sound.sampled.*;
import java.awt.geom.*;
import javax.swing.border.*;
import java.util.*;
/**
 *
 * @author  jorge
 */
public class rahInterfazUsuario extends javax.swing.JFrame {
    
    /** Creates new form rahInterfazUsuario */
    private ProcesamientoSenhal ProcDSenhal;
    private ExtCaracteristicas ExtractC;
    private  ReconocimientoSenhal RecSenhal;  
    //****************************************************************
    private GraficoVoz Canvas,CanvasFFT,CanvasFPE,CanvasTFCF,CanvasEsp;
    private fft senhal;
    Toolkit tk;
    
    private double[][] vAux;
    private double[][] vFactor;  
    public double Alfa=-1.0;
    public int distVentana,distSolap;
    
    double [] datosVoz=null;      
    int ancho,alto;
    double tyEje=-110;
    // Arreglo de Caracteristicas
     public ArrayList Caracteristicas;
     public ArrayList ArrayCaractEntrenada;
     public ArrayList MatrizCaractPCA;
     double[] vMFCC=null;
     int metExtCaract=0;

     String CaractSenhalReconocida="";
    
    public rahInterfazUsuario() {
        
        fc= new JFileChooser();        
        fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
        initComponents();
        CambiarAlfa.setMinimum(-1000);
        CambiarAlfa.setMaximum(1000);
        
        Canvas=new GraficoVoz();
        CanvasFFT=new GraficoVoz();
        CanvasFPE=new GraficoVoz();
        CanvasTFCF=new GraficoVoz();
        CanvasEsp=new GraficoVoz();
        
        //System.out.println("ancho "+Grafico.getWidth()+" alto "+Grafico.getHeight());        
        Canvas.anchoT(Grafico.getWidth());
        Canvas.altoT(Grafico.getHeight());
        Grafico.add(Canvas,BorderLayout.CENTER);
        Canvas.setTraslacionYEje(0);
        Canvas.repaint();
        
        CanvasFFT.anchoT(GraficoFFT.getWidth());
        CanvasFFT.altoT(GraficoFFT.getHeight());
        GraficoFFT.add(CanvasFFT,BorderLayout.CENTER);
        CanvasFFT.setTraslacionYEje(tyEje);
        CanvasFFT.repaint();
        
        CanvasFPE.anchoT(GraficoFPE.getWidth());
        CanvasFPE.altoT(GraficoFPE.getHeight());
        GraficoFPE.add(CanvasFPE,BorderLayout.CENTER);
        CanvasFPE.setTraslacionYEje(tyEje);
        CanvasFPE.repaint();

        CanvasTFCF.anchoT(GraficoTFCF.getWidth());
        CanvasTFCF.altoT(GraficoTFCF.getHeight());
        GraficoTFCF.add(CanvasTFCF,BorderLayout.CENTER);
        CanvasTFCF.setTraslacionYEje(tyEje);
        CanvasTFCF.repaint();
        
        CanvasEsp.anchoT(GraficoEsp.getWidth());
        CanvasEsp.altoT(GraficoEsp.getHeight());
        GraficoEsp.add(CanvasEsp,BorderLayout.CENTER);
        CanvasEsp.setTraslacionYEje(tyEje);
        CanvasEsp.repaint();       

        //ZONA DE ENTRENAMIENTO
        Caracteristicas=new ArrayList();
        ArrayCaractEntrenada=new ArrayList();
        MatrizCaractPCA=new ArrayList();
        
        Reconocer.setEnabled(false);
        MostrarResultado.setEditable(false);
        MostrarCaracteristicas.setEditable(false);
       
        
    }
    
    /** 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.
     */
    // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
    private void initComponents() {
        jPanel2 = new javax.swing.JPanel();
        PanelProc_Info = new javax.swing.JTabbedPane();
        Informacion = new javax.swing.JScrollPane();
        log = new javax.swing.JTextArea();
        FiltroPreenfasis = new javax.swing.JPanel();
        GraficoFPE = new javax.swing.JPanel();
        PanelBFPE = new javax.swing.JPanel();
        CambiarAlfa = new javax.swing.JSlider();
        GraficarFPE = new javax.swing.JButton();
        FFT = new javax.swing.JPanel();
        GraficoFFT = new javax.swing.JPanel();
        PanelBFFT = new javax.swing.JPanel();
        GraficarFFT = new javax.swing.JButton();
        TFCF = new javax.swing.JPanel();
        ScrollPTFCF = new javax.swing.JScrollPane();
        GraficoTFCF = new javax.swing.JPanel();
        PanelBTFCF = new javax.swing.JPanel();
        GraficarTFCF = new javax.swing.JButton();
        Espectograma = new javax.swing.JPanel();
        GraficoEsp = new javax.swing.JPanel();
        PanelBEsp = new javax.swing.JPanel();
        GraficarEsp = new javax.swing.JButton();
        PanelSenhalVoz = new javax.swing.JTabbedPane();
        PanelSenhal = new javax.swing.JPanel();
        ScrollGrafico = new javax.swing.JScrollPane();
        Grafico = new javax.swing.JPanel();
        PanelBGraf = new javax.swing.JPanel();
        ElimSegInutil = new javax.swing.JButton();
        DetPitch = new javax.swing.JButton();
        PanelProcRec = new javax.swing.JPanel();
        jTabbedPane1 = new javax.swing.JTabbedPane();
        PanelEntrenamiento = new javax.swing.JPanel();
        PanelMostrarCar = new javax.swing.JPanel();
        jScrollPane1 = new javax.swing.JScrollPane();
        MostrarCaracteristicas = new javax.swing.JTextArea();
        PanelBEntrenamiento = new javax.swing.JPanel();
        OpcionEntrenar = new javax.swing.JRadioButton();
        ListaMetExtCaract = new javax.swing.JComboBox();
        entrenarSenhal = new javax.swing.JButton();
        jTabbedPane2 = new javax.swing.JTabbedPane();
        PanelReconocimiento = new javax.swing.JPanel();
        PanelMostrarRes = new javax.swing.JPanel();
        jScrollPane2 = new javax.swing.JScrollPane();
        MostrarResultado = new javax.swing.JTextArea();
        jPanel1 = new javax.swing.JPanel();
        Reconocer = new javax.swing.JButton();
        BarraHerramientas = new javax.swing.JToolBar();
        abrir = new javax.swing.JButton();
        Reset = new javax.swing.JButton();
        jMenuBar1 = new javax.swing.JMenuBar();
        Archivo = new javax.swing.JMenu();
        AbrirArch = new javax.swing.JMenuItem();
        ResetArch = new javax.swing.JMenuItem();
        ProcSenhal = new javax.swing.JMenu();
        ExtCaract = new javax.swing.JMenu();
        Reconocimiento = new javax.swing.JMenu();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("Reconocimiento Automatico del Habla");
        setBackground(new java.awt.Color(255, 255, 255));
        setBounds(new java.awt.Rectangle(0, 0, 0, 0));
        setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 3, Short.MAX_VALUE)
        );
        jPanel2Layout.setVerticalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 650, Short.MAX_VALUE)
        );

        PanelProc_Info.setBackground(new java.awt.Color(255, 255, 255));
        PanelProc_Info.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        PanelProc_Info.setName("");
        PanelProc_Info.setNextFocusableComponent(FFT);
        PanelProc_Info.setOpaque(true);
        log.setColumns(20);
        log.setRows(5);
        Informacion.setViewportView(log);

        PanelProc_Info.addTab("Informacion", Informacion);

        FiltroPreenfasis.setLayout(new java.awt.BorderLayout());

        FiltroPreenfasis.setBackground(new java.awt.Color(255, 255, 255));
        GraficoFPE.setLayout(new java.awt.BorderLayout());

        GraficoFPE.setBackground(new java.awt.Color(255, 255, 255));
        GraficoFPE.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        FiltroPreenfasis.add(GraficoFPE, java.awt.BorderLayout.CENTER);

        CambiarAlfa.setPaintLabels(true);
        CambiarAlfa.addChangeListener(new javax.swing.event.ChangeListener() {
            public void stateChanged(javax.swing.event.ChangeEvent evt) {
                CambiarAlfaStateChanged(evt);
            }
        });

        PanelBFPE.add(CambiarAlfa);

        GraficarFPE.setText("Graficar");
        GraficarFPE.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                GraficarFPEActionPerformed(evt);
            }
        });

        PanelBFPE.add(GraficarFPE);

        FiltroPreenfasis.add(PanelBFPE, java.awt.BorderLayout.SOUTH);

        PanelProc_Info.addTab("Filtro Preenfasis", FiltroPreenfasis);

        FFT.setLayout(new java.awt.BorderLayout());

        FFT.setBackground(new java.awt.Color(255, 255, 255));
        GraficoFFT.setLayout(new java.awt.BorderLayout());

        GraficoFFT.setBackground(new java.awt.Color(255, 255, 255));
        GraficoFFT.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        FFT.add(GraficoFFT, java.awt.BorderLayout.CENTER);

        GraficarFFT.setText("Graficar");
        GraficarFFT.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                GraficarFFTActionPerformed(evt);
            }
        });

        PanelBFFT.add(GraficarFFT);

        FFT.add(PanelBFFT, java.awt.BorderLayout.SOUTH);

        PanelProc_Info.addTab("FFT", FFT);

        TFCF.setLayout(new java.awt.BorderLayout());

        GraficoTFCF.setLayout(new java.awt.BorderLayout());

        GraficoTFCF.setBackground(new java.awt.Color(255, 255, 255));
        GraficoTFCF.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        ScrollPTFCF.setViewportView(GraficoTFCF);

        TFCF.add(ScrollPTFCF, java.awt.BorderLayout.CENTER);

        GraficarTFCF.setText("Graficar");
        GraficarTFCF.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                GraficarTFCFActionPerformed(evt);
            }
        });

        PanelBTFCF.add(GraficarTFCF);

        TFCF.add(PanelBTFCF, java.awt.BorderLayout.SOUTH);

        PanelProc_Info.addTab("TFCF", TFCF);

        Espectograma.setLayout(new java.awt.BorderLayout());

        Espectograma.setBackground(new java.awt.Color(255, 255, 255));
        GraficoEsp.setLayout(new java.awt.BorderLayout());

        GraficoEsp.setBackground(new java.awt.Color(255, 255, 255));
        GraficoEsp.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        Espectograma.add(GraficoEsp, java.awt.BorderLayout.CENTER);

        GraficarEsp.setText("Graficar");
        PanelBEsp.add(GraficarEsp);

        Espectograma.add(PanelBEsp, java.awt.BorderLayout.SOUTH);

        PanelProc_Info.addTab("Espectograma", Espectograma);

        PanelSenhal.setLayout(new java.awt.BorderLayout());

        ScrollGrafico.setAutoscrolls(true);
        Grafico.setLayout(new java.awt.BorderLayout());

        Grafico.setBackground(new java.awt.Color(255, 255, 255));

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -