Conceitos de Sinais e Sistemas
Mestrado em Ciências da Fala e da Audição
António Teixeira
AT 2004
1
• Informações sobre a
cadeira
• Sinais
• Introdução à
Programação
• Matlab
Aula
AT 2004
– Ambiente
– Vectores
– Gráficos
2
Informações sobre a cadeira
AT 2004
3
Motivações
• Esta disciplina surge para tentar dar resposta à falta
de formação da grande maioria do público alvo deste
mestrado em conceitos relacionados com a área de
processamento de sinal,
– apesar de muitos deles usarem aplicações, mais ou menos
sofisticadas, baseadas nesses mesmos conceitos.
• Por exemplo, é habitual profissionais na área
utilizarem gravação de sinal de voz, análises
espectrais, determinação da frequência fundamental,
sem, muitas vezes, possuirem os conhecimentos
necessários para uma escolha informada entre várias
possibilidades que se lhes oferecem.
AT 2004
4
Programa Resumido
•
•
•
•
•
•
•
Sinais
Sistemas
Análise de Fourier
Sinais através de sistemas
LPC
Cepstra
Aplicação à obtenção de F0 e das formantes
• MatLab
AT 2004
5
Organização das Aulas
• Parte mais “teórica”
– Pode não ser necessária todas as aulas
– Tentarei que inclua exemplos e demonstrações
relacionadas com a área
• Parte prática
– Usando computadores
• Matlab
– Guiões
– Algumas para avaliação
AT 2004
6
Avaliação
• Resultante da avaliação de 3 ou mais
trabalhos
– O final será maior
– Podem ser o trabalho de uma aula
• Exame para quem precisar
– 30 % da nota final
– Fazendo média com os trabalhos
AT 2004
7
Bibliografia
• “Signals and Systems for Speech and Hearing”,
Rosen & Howell, Academic Press
• “DSP First – A Multimedia Approach”, McClellan,
Schafed & Yoder, Prentice Hall
• “Techniques in Speech Acoustics”, Harrington &
Cassidy, Kluwer
• “Signals and Systems” Simon Haykin, Barry Van
Veen. John Wiley, 1999.
– Documento parcialmente digitalizado (acesso só em ua.pt).
• “Sinais e Sistemas”, Isabel Lourtie, Escolar Editora
AT 2004
8
Bibliografia
• MATLAB
– “Matlab 6, Curso Completo”, Duane Hanselman,
Prentice Hall
– "Notas sobre o Matlab", António Batel, Amaral
Carvalho e Ricardo Fernandes
– Matlab num Instante
• Os acetatos das apresentações das aulas
estarão disponíveis na página da disciplina
AT 2004
9
Recursos Online
Por agora:
http://www.ieeta.pt/~ajst/css
Brevemente:
“site da disciplina”
AT 2004
10
Informação adicional
• Pouco à vontade com o computador
• Consultar os acetatos de ITIC disponíveis no Elearning
e praticar
• Falta de bases matemáticas
• Fazer “revisões” de: polinómios, números complexos,
etc.
• Interesse em saber mais acerca de Matlab
– Material de uma cadeira (Aplicacionais ...
http://webct.ua.pt/public/aplicacionais
AT 2004
11
Sinais
Fontes principais:
Cap. 2 e 3 de Rosen & Howell
Cap. 1 de Haykin & van Veen
AT 2004
12
Exemplos
• Os sinais são um componente básico das nossas vidas
• Exemplos:
– Uma forma comum de comunicação usa o sinal de voz
– Outra forma de comunicar, visual, baseia-se em imagens
– Temperatura e pressão arterial que transmitem ao médico
informação acerca do estado do paciente
– Flutuação diária das cotações em bolsa
– A lista é (quase) infinita
AT 2004
13
Exemplos
• Como estamos interessados essencialmente na fala
poderiamos pensar que apenas nos interessaria o sinal
conhecido como som
• No entanto,
– A produção de som por um diapasão dá-nos um exemplo de
sinal mecânico, relativo ao movimento
• Infelizmente o armazenamento e manipulação das
variações de pressão que ouvimos não é fácil
– Conversão para sinal eléctrico através de microfones
• Os sinais eléctricos não são adequados à audição
– Conversão de volta para sinal acústico
• Para ter acesso ao processo de produção podemos
socorrer-nos de técnicas como MRI obtendo imagens
AT 2004
14
Sinal
• Um sinal representa a medida de uma grandeza
mensurável.
• Exemplos:
–
–
–
–
–
AT 2004
Temperatura do ar
PSI20
Gravação de voz
Nível da água do mar (marés)
ECG (Electrocardiograma)
15
Definição
• Um sinal é formalmente definido como:
– “Uma função de uma ou mais variáveis, que contêm
informação acerca da natureza de um fenómeno físico”
• Ou
– Sinais são funções de uma ou mais variáveis independentes
que contêm informação acerca do comportamento e
características de determinados fenómenos físicos. São
representados matematicamente como funções de uma ou
mais variáveis independentes
• Pg 4 de “Sinais e Sistemas” de Isabel Lourtie, Escolar Editora
AT 2004
16
Contínuo vs Discreto
• Contínuo
– Se se puder medir o seu valor em qualquer instante de tempo
– Variável independente é contínua
• O domínio é um subconjunto dos números reais
– Representa-se como x(t)
– Ex: a temperatura ambiente é um sinal contínuo
• Discreto
– Apenas se conhecem medidas do sinal tiradas em alguns instantes de
tempo
– Variável independente é discreta
• O domínio é um subconjunto dos números naturais
– Representação: x[n]
– Ex: a temperatura ambiente medida todas as horas
• Em ambos os casos os valores de x() podem ser contínuos ou
discretos
AT 2004
17
Digital e analógico
• Se juntarmos ao carácter discreto da variável
independente o facto de serem discretos os
valores que x(n) pode assumir
– Temos um sinal DIGITAL
• O sinal x(t) assumindo valores de um
subconjunto dos reais
– É um sinal ANALÓGICO
AT 2004
18
Vantagens do Digital
• A abordagem digital tem vantagens
importantes sobre o analógico
– Flexibilidade
• A mesma máquina digital (hardware) pode ser usada
para implementar diferentes versões de processamento.
• No caso analógico teria de redesenhar-se a máquina
– Repetição
• Uma operação pode ser repetida exactamente as vezes
necessárias
• O caso analógico sofre de variações dos parâmetros
pela influência de factores externos como a temperatura
AT 2004
19
Dimensionalidade
• Unidimensional
– Quando a função depende apenas de uma variável
(independente)
– Exemplo: sinal de voz, que varia com om tempo
• Multidimensional
– Quando de depende de mais do que uma variável
– Exemplo: uma imagem é um sinal bidimensional
• Com as coordenadas horizontais e verticais representando as duas
dimensões
– Pergunta: Quantas dimensões possuem as imagens de
televisão ?
AT 2004
20
Periódico vs não periódico
• Um sinal periódico x(t) satisfaz a condição
– x(t) = x(t+T) para todo o t
• Onde T é uma constante positiva
• Sendo satisfeita a condição para T=To também será para T=2 To, 3
To, 4 To …
– O menor valor que satisfaz a condição, To, é designado por
período fundamental de x(t)
– O recíproco do período fundamental é a frequência
fundamental, f=1/T
– A frequência angular, em radianos por segundo, define-se
como =2 f
• Quando não existe um valor de T que satisfaça a
condição, o sinal é aperiódico ou não periódico
AT 2004
21
Sinais determinísticos e aleatórios
• Um sinal determinístico é um sinal acerca do
qual não existe incerteza acerca do seu valor
em qualquer instante
• Nos outros (random signals) existe incerteza
antes da sua ocorrência
– Exemplo: O ruído gerado por um amplificador
AT 2004
22
Passagem de contínuo a discreto - Amostragem
10
9.08
8.16
8
8.08
7.40
6.46
6.02
6
6.52
4
2.80
2.52
1.95
2
0.14
0 0.00
-0.6
-2
AT 2004
0
20
40
60
80
100
120
140
23
Amostragem
10
9.08
8.16
8
8.08
7.40
6.46
6.02
6
6.52
4
2.80
2.52
1.95
2
0.14
0 0.00
-0.6
Período de amostragem
-2
AT 2004
0
20
40
60
80
100
120
140
24
Sinal Discreto
O sinal anterior pode ser representado de
forma aproximada apenas pela amplitude das
suas amostras e pelo período de amostragem.
S= [0, 1.96, 7.4, 9.08, 8.16, 6.03, 2.8,
0.15, -0.68, 2.53, 6.46, 8.09, 6.52]
Ou seja, pode ser representado por um vector
AT 2004
25
Introdução à Programação
AT 2004
26
Porquê programar ?
• Trabalhar na área da linguagem é quase
impossível actualmente sem computadores
– Os dados são tratados, analisados, guardados,
ordenados, e distribuídos por computadores.
• Várias aplicações estão disponíveis, mas para
controlar realmente o processo alguns
conhecimentos de programação são essenciais.
AT 2004
27
• Exemplos:
– Um fonologista interessado em clusters de consoantes. Tem
um dicionário e quer descobrir o mais cluster em posição
final de palavra. Faz manualmente ?
– Um psicolinguista interessado numa experiência acerca da
silabificação
– Foneticistas que necessitam de normalizar a amplitude,
calcular formantes, etc de centenas de gravações
• Não sabendo programar, tem-se poucas opções
– Uma é fazer o trabalho manualmente
– Outra contratar alguém
– Outra ainda usar uma aplicação existente
• Normalmente limitadas. As necessidades podem não ser
contempladas
AT 2004
28
O computador
• Máquina programável que processa informação
AT 2004
29
Processar informação
• Executar sequências de operações elementares
(instruções) sobre dados provenientes do
exterior através dum dispositivo de entrada e
encaminhar os resultados para o exterior
através de dispositivos de saída.
AT 2004
30
Programabilidade
• A sequência de instruções elementares que
habitualmente se designa por programa pode
ser alterada sempre que se deseje.
AT 2004
31
Do chip ao Sistema
• Do chip ao Sistema (Hardware + Software)
AT 2004
32
Um pouco de estrutura
• Aplicações: MS OFFICE, Browsers,
CAD, MATLAB, ...
• Sistema Operativo: MS
Windows, LINUX, MacOS, ...
• Dispositivos de I/O
• Subsistemas: Motherboard, Gráficos,
Audio, Armazenamento, Comunicações,
...
• Componentes: CPU,
MEMÓRIA, ...
AT 2004
33
Interacção: Dispositivos I/O
AT 2004
34
Uma visão mais alargada...
• Rede Local (LAN)
• INTERNET
AT 2004
35
Memória
• Agente de armazenamento de informação
Disponibilidad
e
Acesso
Organização
Capacidade
• Suportes físicos
Electrónicos
AT 2004
Magnéticos
Ópticos
36
Arquitectura funcional
CPU
Memória Principal
(RAM)
Controlo de Interacção
Teclado, rato, monitor ...
AT 2004
Memória de Massa
(Disco Duro, Diskette, CDROM)
Comunicações
POTS,ADSL, EtherNET
37
Uma perspectiva dinâmica
Memória de massa
Programa
CPU
AT 2004
RAM
38
Ferramentas Informáticas
• Objectivos
– Auxiliar na resolução de problemas matemáticos
cuja resolução manual seja demorada
• Tipos de Ferramentas
– Linguagens de programação
– Análise e visualização de dados
– Ambientes de cálculo
AT 2004
39
Linguagens de programação
• Características
– Utilizadas para realizar todo o tipo de programas mesmo
que não sejam de cálculo
• Vantagens
– Grande flexibilidade
– O cálculo pode ser mais rápido e eficiente
• Desvantagens
– Necessidade de aprender uma linguagem
– Tempo de desenvolvimento para chegar à solução
• Exemplos
– Fortran, Basic, Pascal, C, Java
AT 2004
40
Exemplo: Cálculo do Factorial
Definição
n! n  (n  1)  (n  2)3  2 1
Exemplo
4! 4  3  2 1  24
AT 2004
41
Cálculo do factorial em Pascal
AT 2004
42
Análise e visualização de dados
• Características
– Realizam o tratamento numérico dos dados e a sua visualização.
– Utilizadas principalmente para cálculo estatístico
• Vantagens
– Fáceis de utilizar
– Obtenção rápida de resultados
– Capacidades de visualização e apresentação dos resultados poderosas
• Desvantagens
– Pouco flexíveis na manipulação dos dados
– Difícil automatizar procedimentos
• Exemplos
– Excel, SPSS
AT 2004
43
Análise de dados com o Excel
• Dados
– Vamos supor que conseguimos um ficheiro de
texto com as temperaturas registadas em Lisboa
durante o ano 2000.
• Objectivo
– Determinar a temperatura média
– A temperatura máxima
– A temperatura mínima
AT 2004
44
Análise de dados com o Excel
AT 2004
T. Máx.
22
T. Mín.
10
T. Méd.
16,0
25
20
15
10
Temperatura
22
20
18
14
16
Hora
12
10
8
6
4
0
2
5
0
Hora Temperatura
0
12
1
12
2
12
3
11
4
10
5
12
6
15
7
16
8
17
9
18
10
22
11
22
12
21
13
22
14
22
15
20
16
18
17
17
18
17
19
16
20
15
21
13
22
13
23
12
45
Cálculo do factorial com o Excel
É possível com o Excel
gerar sequências de inteiros
e calcular somatórios e
produtórios
Na tabela ao lado utilizouse a seguinte propriedade
do factorial
n! n  (n  1)!
AT 2004
N
1
2
3
4
5
6
7
Factorial
1
2
6
24
120
720
5040
46
Ambientes de cálculo
• Características
– Utilização fácil e aprendizagem rápida
– Podem realizar cálculo simbólico e numérico
• Vantagens
– Possibilidade de automatizar os cálculos
– Muito versáteis possuindo uma linguagem intuitiva
• Desvantagens
– São necessários alguns conhecimentos de programação
– Mais lentos nos cálculos que as linguagens de programação
• Exemplos
– Mathematica, Maple, MathCad, Matlab
AT 2004
47
Mathematica
• Muito divulgado para cálculo simbólico
• Igualmente poderoso para calculo numérico
• Permite trabalhar com qualquer precisão
numérica
• Grande colecção de “Packages”
• Exemplos de aplicações
–
–
–
–
AT 2004
Cálculo de limites
Cálculo de derivadas e integrais
Simplificação de expressões algébricas
Gráficos de funções 2D e 3D
48
Mathematica
• Cálculo do factorial no Mathematica
AT 2004
49
Mathematica – exemplos de
utilização
Cálculo de limites
Cálculo de derivadas
Simplificação
de expressões
AT 2004
50
Ambientes de Cálculo Numérico
Matlab
AT 2004
51
Matlab
•Vocacionado para o cálculo numérico
•MATLAB = MATrix LABoratory
•Os elementos são
sempre matrizes
numéricas
•Um número é uma matriz com apenas um
elemento
AT 2004
52
Introdução ao Matlab
•Prática
AT 2004
53
O que é o Matlab ?
• Aplicação informática vocacionada para o
cálculo numérico
• Aplicações
– Análise de dados
– Visualização científica
– Simulação de sistemas
AT 2004
54
Demonstração
• O Matlab tem um conjunto de demonstrações
que ilustram as suas possíveis aplicações. Para
aceder à demonstração basta entrar o comando:
»demo.
–
–
–
–
AT 2004
Gráficos de funções
Visualização de volumes
Animações
Tutorais sobre o Matlab
55
O ambiente gráfico
Janela da comandos
Ajuda
Para mudar a pasta de
trabalho
Documentação e
demos dos produtos
instalados
Espaço de trabalho com
as variáveis
Histórico dos comandos
Conteúdo da pasta de
trabalho
AT 2004
56
O Matlab como calculadora
•
•
O Matlab permite o cálculo numérico directo
a partir da janela de comando.
Operações matemáticas
+ soma
- subtracção
* multiplicação
/ divisão
^ potenciação
AT 2004
57
Variáveis
• Variáveis
– No Matlab é possível guardar em variáveis
conjuntos de números, exemplo:
»x= 2
– Os nomes das variáveis destinguem as letras
maiúsculas das minúsculas. Exemplo: piPi
– As variáveis são guardadas no espaço de trabalho
“workspace”
– As variáveis podem ser utilizadas nas operações da
mesma forma que os números.
AT 2004
58
Variáveis
• Apagar variáveis
– clear v1 v2
– clear all
apaga as variáveis v1 e v2
apaga todas as variáveis
• Ver as variáveis no espaço de trabalho (“workspace”)
– whos
– who
mostra todas as variáveis do espaço de trabalho
com informação adicional de dimensão e tipo
mostra apenas os nomes das variáveis
• Guardar variáveis
–
–
–
–
AT 2004
save
Guarda em disco todas as variáveis do “workspace”
load
Carrega do disco as variáveis guardadas
save ficheiro v1 v2Guarda as variáveis v1 e v2 no ficheiro
load ficheiro
Carrega as variáveis do ficheiro
59
Ajuda “Online”
Encontram-se disponíveis diversos tipos de ajuda para ACE que é
possível consultar utilizando a Internet. Para mais informação
ver a página de ACE na opção do menu Documentos.
• Manuais do Matlab
– Getting Started with Matlab
– Using Matlab
– Using Matlab Graphics
• Outros documentos sobre o Matlab
– Matlab Num Instante
– Matlab Primer
AT 2004
60
TPC 
• Lêr “Matlab num Instante”
AT 2004
61
Download

Aula 1 de CSS MCFA