<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-5367796081404523900</id><updated>2009-11-13T13:11:50.124-03:00</updated><title type='text'>Info and Tech in Signals</title><subtitle type='html'>Blog destinado a divulgação de ciência e tecnologia em processamento digital de sinais e imagens. Todo o conhecimento que será compartilhado neste blog é, por natureza, de domínio público da humanidade.
Eu acredito na capacidade de cada nação e que Deus deseja nossa liberdade.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default?start-index=26&amp;max-results=25'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>187</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-7294146953647895768</id><published>2009-11-13T13:01:00.003-03:00</published><updated>2009-11-13T13:11:50.133-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='odf'/><category scheme='http://www.blogger.com/atom/ns#' term='informativos'/><category scheme='http://www.blogger.com/atom/ns#' term='software livre'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='computação'/><category scheme='http://www.blogger.com/atom/ns#' term='armazenamento'/><title type='text'>Concatenar arquivos pdf no Linux</title><content type='html'>Eu precisei concatenar uns arquivos em pdf hoje e descobri este comando:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;~&gt; gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=finished.pdf file1.pdf file2.pdf file3.pdf #[...]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Funcionou muito bem.&lt;br /&gt;&lt;br /&gt;O bom é poder fazer isso usando o GS (&lt;a href="http://www.ghostscript.com/"&gt;Ghostscript&lt;/a&gt;), que é um &lt;span style="font-style: italic;"&gt;software&lt;/span&gt; bem conhecido dos usuários de GNU/Linux.&lt;br /&gt;&lt;br /&gt;Enfim, nem precisei comprar um &lt;span style="font-style: italic;"&gt;software&lt;/span&gt; (conhecido nosso) versão professional, e tive o mesmo resultado.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Filosofia...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;É bom ver como soluções tão simples funcionam perfeitamente para problemas tão simples.&lt;br /&gt;&lt;br /&gt;As vezes buscamos uma solução que resolva todos os problemas com todas as possíveis situações, sendo que o tempo que levamos para analisar se a solução serve para todas as situações de todos os problemas poderia ser usado de outra forma.&lt;br /&gt;&lt;br /&gt;E se tomássemos uma solução simples, como o comando que citei para o problema que eu tinha, e aprimorássemos ela com novos recursos e procurando saber o que a solução é realmente capaz de fornecer?&lt;br /&gt;&lt;br /&gt;Teríamos nosso problema resolvido e ainda saberíamos quais outros problemas resolver com a mesma solução.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-7294146953647895768?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/7294146953647895768/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=7294146953647895768' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7294146953647895768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7294146953647895768'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/11/concatenar-arquivos-pdf-no-linux.html' title='Concatenar arquivos pdf no Linux'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-4948200878378140775</id><published>2009-11-11T10:19:00.002-03:00</published><updated>2009-11-11T10:27:50.050-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='palestra'/><category scheme='http://www.blogger.com/atom/ns#' term='informativos'/><category scheme='http://www.blogger.com/atom/ns#' term='SIRENE'/><category scheme='http://www.blogger.com/atom/ns#' term='Perfil profissional'/><category scheme='http://www.blogger.com/atom/ns#' term='Pesquisa'/><category scheme='http://www.blogger.com/atom/ns#' term='eventos'/><title type='text'>Trabalhos acadêmicos no Interaction South-America</title><content type='html'>&lt;a href="http://www.interaction-southamerica.org/2009/11/trabalhos-aprovados/"&gt;Aqui&lt;/a&gt; consta a lista de trabalhos acadêmicos que serão apresentados no Interaction South-America.&lt;br /&gt;&lt;br /&gt;Seguem alguns títulos dos trabalhos:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A Influência de Interfaces Gráficas na Narrativa e Imersão de Jogos Digitais;&lt;/li&gt;&lt;li&gt;Inspeção semiótica do Wiki-STOA: uma análise a partir da teoria da complexidade;&lt;/li&gt;&lt;li&gt;Desenvolvendo Interfaces de Usuário Multiplataformas utilizando MDA;&lt;/li&gt;&lt;li&gt;A percepção das tecnologias;&lt;/li&gt;&lt;li&gt;A personalização como estratégia para o gerenciamento da obsolescência de artefatos;&lt;/li&gt;&lt;li&gt;Design de interface para questionário on-line do Censo Demográfico 2010;&lt;/li&gt;&lt;li&gt;Método para Aplicações Web Focado em Usabilidade Aderente a um Processo de Software Convencional;&lt;/li&gt;&lt;li&gt;New scenarios in the design education with dynamic of interaction;&lt;/li&gt;&lt;li&gt;Levantamento de Heurísticas para Avaliação de Interfaces do Usuário Baseadas em Voz;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Reconhecimento de Gestos da LIBRAS com Classificadores Neurais a partir dos Momentos Invariantes de Hu&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;Compreendendo dinâmicas de jogo: as esferas de interação dentro do framework Componentes-Dinâmicas-Experiências;&lt;/li&gt;&lt;li&gt;Violent Video Games: Changes in non-verbal behavior and short-term effects on valence and arousal.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Os demais trabalhos podem ser encontrados no &lt;span style="font-style: italic;"&gt;link&lt;/span&gt; da primeira palavra deste &lt;span style="font-style: italic;"&gt;post&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-4948200878378140775?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/4948200878378140775/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=4948200878378140775' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/4948200878378140775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/4948200878378140775'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/11/trabalhos-academicos-no-interaction.html' title='Trabalhos acadêmicos no Interaction South-America'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-7707252033835482392</id><published>2009-10-26T11:55:00.004-03:00</published><updated>2009-10-26T12:01:09.211-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='informations'/><category scheme='http://www.blogger.com/atom/ns#' term='digital signal processing'/><category scheme='http://www.blogger.com/atom/ns#' term='covolution'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><title type='text'>Convolution - Scilab</title><content type='html'>Hi David, I read your comment.&lt;br /&gt;I didn't understand what you'd like to say.&lt;br /&gt;&lt;br /&gt;I have another blog about Scilab, and I made some posts about convolution (&lt;a href="http://usingscilab.blogspot.com/search/label/convolution"&gt;here&lt;/a&gt;).&lt;br /&gt;I wrote something about the convolotion's properties there, I think you'll be satisfied.&lt;br /&gt;&lt;br /&gt;If you need any help more, I can try to do it.&lt;br /&gt;&lt;br /&gt;Ok, that's all.&lt;br /&gt;&lt;br /&gt;God bless you, my friend.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-7707252033835482392?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/7707252033835482392/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=7707252033835482392' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7707252033835482392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7707252033835482392'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/10/convolution-scilab.html' title='Convolution - Scilab'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-5785863749357788745</id><published>2009-10-21T09:09:00.002-03:00</published><updated>2009-10-21T09:20:51.963-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='palestra'/><category scheme='http://www.blogger.com/atom/ns#' term='informativos'/><category scheme='http://www.blogger.com/atom/ns#' term='visão computacional'/><category scheme='http://www.blogger.com/atom/ns#' term='programação gráfica'/><category scheme='http://www.blogger.com/atom/ns#' term='computação'/><category scheme='http://www.blogger.com/atom/ns#' term='eventos'/><title type='text'>Interaction</title><content type='html'>Nos dias 26, 27 e 28 de novembro irá acontecer o Interaction South-America em São Paulo - SP.&lt;br /&gt;&lt;br /&gt;Site do evento: http://www.interaction-southamerica.org/?lang=pt&lt;br /&gt;&lt;br /&gt;Pois bem, esta é a primeira edição de um evento internacional que contará com presenças importantes de vários locais do mundo.&lt;br /&gt;&lt;br /&gt;Seguem alguns dos palestrantes confirmados e os temas de suas apresentações:&lt;br /&gt;&lt;h3&gt;&lt;strong&gt;Nimish Biloria – [TU Delft]&lt;br /&gt;&lt;/strong&gt;&lt;/h3&gt;    Professor assistente, Corpo docente de Arquitetura, TU Delft, O Países Baixos   &lt;strong&gt;Título:&lt;/strong&gt; Morfologias arquitetônicas   &lt;strong&gt;Resumo:&lt;/strong&gt; O foco de conferência no recente trabalho em explorar assuntos como o desejo compulsivo para especular sobre oportunidades arquitetônicas na presença de assunto animado, entidades orgânicas e a presença geométrica e matemática estando por baixo de delas e como esta pesquisa está estruturada por uma variedade múltipla de fontes que alcançam de ficção científica e Moda até Biologia e Botânica.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;&lt;strong&gt;Simon Biggs&lt;/strong&gt;&lt;/h3&gt;    Professor de Pesquisa na Faculdade de Arte em Edimburgo, REINO UNIDO   &lt;strong&gt;Título:&lt;/strong&gt; Transculturação, Transliteração e poesia generativa   &lt;strong&gt;Resumo:&lt;/strong&gt; Que efeito estão tendo recentes desenvolvimentos em comunicações globais em idioma e seus leitores e escritores; esses definiram pelas relações deles com idioma? O que acontece a nossa identidade, como seres lingüísticos, quando nosso meio de comunicação e troca de associação demográfica ? O que está dirigindo isto? É a tecnologia, as migrações das pessoas ou uma mistura destes fatores? Como estas são dinâmicamente refletida, dentro e em práticas criativas contemporâneas com idioma e novas mídia?&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;&lt;strong&gt;&lt;strong&gt;Juliana Ferreira – [Nokia Design - Londres]&lt;/strong&gt;&lt;/strong&gt;&lt;/h3&gt;    Juliana Ferreira começou sua carreira aos 18 anos, se formando como Design Gráfico pela Univercidade, no Rio de Janeiro, iniciando sua jornada do impresso ao webdesign, criando aplicações e serviços on-line. Sete anos depois, se mudou para Londres onde adquiriu titulo de Mestre em Design de Interação pela Westminster University e já passou por grandes empresas como BT, Citi bank e BBC. Nos últimos três anos tem atuado como especialista em Desing de Interação na Nokia Design, criando conceitos de estratégia de design para user interface e serviços Nokia,   &lt;strong&gt;Titulo da Palestra&lt;/strong&gt;:  Your Personal Device: Homescreens e personalização   &lt;strong&gt;Resumo:&lt;/strong&gt; Conheça sobre o processo de design utilizado pela Nokia Design envolvendo pesquisadores, designers e desenvolvedores para descobrir as tendências futuras no consumo e serviços, e como as pessoas estão exigindo cada vez mais controle sobre essa expêriencia. &lt;p&gt;Você também terá a oportunidade de ver outros projetos de projeto de interfaces inovadoras da Nokia Design.&lt;/p&gt;&lt;h3&gt;&lt;strong&gt;Robson Santos – [Instituto Nokia de Tecnologia (InDT)]&lt;/strong&gt;&lt;/h3&gt;    Robson Santos, D.Sc. Pesquisador sênior em usabilidade do Instituto Nokia de Tecnologia; Primeiro a obter o título de Doutor em Design no continente, pela PUC-Rio, possui larga experiência prática e extenso currículo docente em cursos de pós-graduação, de graduação e de extensão.   &lt;strong&gt;Título:&lt;/strong&gt; Coleta e análise de dados em testes de usabilidade   &lt;strong&gt;Resumo:&lt;/strong&gt; A usabilidade é um importante elemento para criar uma boa experiência do usuário. Para se obter dados sobre o uso de produtos e serviços digitais é importante conhecer as técnicas para coleta de dados qualitativos e quantitativos. Não menos importante é possuir bom repertório analítico que permita extrair informações relevantes a partir dos dados coletados. O workshop visa oferecer oportunidade para que os participantes experimentem métodos e técnicas para coleta (entrevistas,questionários, registros em vídeo) e análise de dados (verbalizações, expressões faciais). A metodologia será participativa, de maneira que os presentes possam exercitar as técnicas apresentadas.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;&lt;strong&gt;&lt;strong&gt;Phil Ohme &amp;amp; Eric Pan – [Intuit]&lt;/strong&gt;&lt;/strong&gt;&lt;/h3&gt;    Phil Ohme faz parte do time de design de interação  da Intuit (os fabricantes do QuickBooks, Quicken, TurboTax) e tem atuado no campo de experiência do usuário a mais de 12 anos. Ele já trabalhou para empresas como a HP e a Ford Motor Co., onde ganhou o Choice 2000 Popular Mechanics Editor’s Choice Award: Best in Show, para o projeto da primeira fábrica instaladara de mp3 player para automóveis. Phil é graduado em Engenharia Industrial do Rochester Institute of Technology (RIT) com Mestrado em Engenharia Industrial – Fatores Humanos pela Universidade de Iowa. &lt;p&gt;Eric Pan é, atualmente, designer de interação sênior da empresa de software Intuit, sediada em San Diego, Califórnia, E.U.A.. Sua experiência inclui o trabalho em outras empresas iniciantes do Vale do Silício, consultoria e pesquisa acadêmica. Eric graduado da Universidade da Califórnia, San Diego em Ciência Cognitiva com especialização em Interação Humano-Computador&lt;/p&gt;   &lt;strong&gt;Titulo do Workshop &lt;/strong&gt;:  All Work and No Play: What You can Learn from Game Design”   &lt;strong&gt;Resumo: &lt;/strong&gt;Se você espera encontrar horas de teoria em um workshop sobre games, não se increva no “All Work and No Play: What You can Learn from Game Design”. &lt;p&gt;Prático e dinâmico, este workshop tem como objetivo abordar os princípios do design de games, para que o participante entenda porque os games são tão persuasivos e capazes de prender o usuário de maneira tão eficiente.&lt;/p&gt; &lt;p&gt;Interatividade e discussão permitirão que você leve ideias inovadoras para seu dia-a-dia de trabalho. Increva-se e inspire-se!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-5785863749357788745?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/5785863749357788745/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=5785863749357788745' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/5785863749357788745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/5785863749357788745'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/10/interaction.html' title='Interaction'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-6873150432515132863</id><published>2009-09-01T13:15:00.003-03:00</published><updated>2009-09-01T13:48:08.943-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biometria'/><category scheme='http://www.blogger.com/atom/ns#' term='reconhecimento de padrões'/><category scheme='http://www.blogger.com/atom/ns#' term='matemática'/><category scheme='http://www.blogger.com/atom/ns#' term='estatística'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><category scheme='http://www.blogger.com/atom/ns#' term='armazenamento'/><title type='text'>Classificadores estatísticos - 01</title><content type='html'>Eu acho que o MultiSign está muito parado por estes dias, então eu achei interessante fazer uma série de &lt;span style="font-style: italic;"&gt;posts&lt;/span&gt; sobre classificadores estatísticos.&lt;br /&gt;&lt;br /&gt;Para começar, vamos estudar o classificador de mínima distância ao centróide.&lt;br /&gt;&lt;br /&gt;Imagine que você tem um conjunto de informações sobre elementos de diferentes classes, por exemplo peso e altura de diversas pessoas. E você não sabe, acerca de todos, quais destas pessoas são adultos, crianças ou bebês.&lt;br /&gt;&lt;br /&gt;Vamos então desenvolver a solução deste problema.&lt;br /&gt;&lt;br /&gt;Primeiramente vamos tomar as pessoas que nós já sabemos se são adultos, crianças ou bebês.&lt;br /&gt;&lt;br /&gt;Conjunto dos bebês (1).&lt;br /&gt;&lt;br /&gt;pessoa 1 - 0,5m e 4,3kg&lt;br /&gt;pessoa 2 - 0,45m e 3,1kg&lt;br /&gt;pessoa 3 - 0,6m e 5,0kg&lt;br /&gt;pessoa 4 - 0,39m e 3,2kg&lt;br /&gt;pessoa 5 - 0,44m e 3,8kg&lt;br /&gt;pessoa 6 - 0,51m e 4,7kg&lt;br /&gt;&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;&lt;br /&gt;pessoa n - 0,55m e 5,3kg&lt;br /&gt;&lt;br /&gt;Conjunto das crianças (2).&lt;br /&gt;&lt;br /&gt;pessoa n + 1 - 1,5m e 34,3kg&lt;br /&gt;pessoa n + 2 - 1,45m e 33,1kg&lt;br /&gt; pessoa n + 3 - 1,6m e 45,0kg&lt;br /&gt; pessoa n + 4 - 1,39m e 27,2kg&lt;br /&gt; pessoa n + 5 - 1,44m e 33,8kg&lt;br /&gt; pessoa n + 6 - 1,51m e 34,7kg&lt;br /&gt;&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;&lt;br /&gt; pessoa n + m - 1,55m e 26,3kg&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Conjunto dos adultos (3).&lt;br /&gt;&lt;br /&gt;pessoa n + m + 1 - 1,75m e 74,3kg&lt;br /&gt; pessoa n + m + 2 - 1,81m e 93,1kg&lt;br /&gt;  pessoa n + m + 3 - 1,66m e 55,0kg&lt;br /&gt;  pessoa n + m + 4 - 1,73m e 67,2kg&lt;br /&gt;  pessoa n + m + 5 - 1,64m e 53,8kg&lt;br /&gt;  pessoa n + m + 6 - 1,61m e 60,7kg&lt;br /&gt;&lt;br /&gt; .&lt;br /&gt; .&lt;br /&gt; .&lt;br /&gt;&lt;br /&gt;  pessoa n + m + p - 1,55m e 42,8kg&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Depois de separar cada conjunto, nós calculamos a média do peso e da altura para cada conjunto.&lt;br /&gt;&lt;br /&gt;Conjunto 1:&lt;br /&gt;média(peso) - 4,8kg (mp1)&lt;br /&gt;média(altura) - 0,56m (ma1)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Conjunto 2:&lt;br /&gt;média(peso) - 28,1kg (mp2)&lt;br /&gt;média(altura) - 1,57m (ma2)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Conjunto 3:&lt;br /&gt;média(peso) - 68,7kg (mp3)&lt;br /&gt; média(altura) - 1,64m (ma3)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Então, para cada pessoa do conjunto de dados que não se sabe se ela é adulto, criança ou bebê, basta usar o classificador pronto que nós implementamos:&lt;br /&gt;&lt;br /&gt;Sendo &lt;span style="font-style: italic;"&gt;p&lt;/span&gt; o peso da pessoa e &lt;span style="font-style: italic;"&gt;a&lt;/span&gt; a sua altura,&lt;br /&gt;&lt;br /&gt;se (p - mp1)² + (a - ma1)² &lt; (p - mp2)² + (a - ma2)² e (p - mp1)² + (a - ma1)² &lt; (p - mp3)² + (a - ma3)² então a pessoa é um bebê (pertence ao conjunto 1);&lt;br /&gt;&lt;br /&gt;se (p - mp2)² + (a - ma2)² &lt; (p - mp1)² + (a - ma1)² e (p - mp2)² + (a - ma2)² &lt; (p - mp3)² + (a - ma3)² então a pessoa é uma criança (pertence ao conjunto 2);&lt;br /&gt;&lt;br /&gt;se (p - mp3)² + (a - ma3)² &lt; (p - mp1)² + (a - ma1)² e (p - mp3)² + (a - ma3)² &lt; (p - mp2)² + (a - ma2)² então a pessoa é um adulto (pertence ao conjunto 3).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Essa análise, muito simples, foi apenas para apresentar o classificador estatístico mais simples de todos: o classificador de distância mínima ao centróide (DMC).&lt;br /&gt;&lt;br /&gt;A depender do retorno que eu tenha por parte dos leitores, eu posso até colocar códigos em Scilab deste e de outros classificadores.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-6873150432515132863?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/6873150432515132863/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=6873150432515132863' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/6873150432515132863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/6873150432515132863'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/09/classificadores-estatisticos-01.html' title='Classificadores estatísticos - 01'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-2277435932936293703</id><published>2009-08-05T10:54:00.003-03:00</published><updated>2009-08-05T11:32:04.227-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webcam'/><category scheme='http://www.blogger.com/atom/ns#' term='mestrado'/><category scheme='http://www.blogger.com/atom/ns#' term='SIRENE'/><category scheme='http://www.blogger.com/atom/ns#' term='vídeo'/><category scheme='http://www.blogger.com/atom/ns#' term='youtube'/><title type='text'>Fazendo vídeos e fotos com webcam</title><content type='html'>Nos últimos dias eu estava precisando fazer uns vídeos para dar continuidade ao meu projeto de &lt;a href="http://multisign.blogspot.com/2008/02/apresentao-do-sirene.html"&gt;mestrado&lt;/a&gt;. Então eu procurei algum &lt;span style="font-style: italic;"&gt;software&lt;/span&gt; que capturasse &lt;span style="font-style: italic;"&gt;frames&lt;/span&gt; da webcam e fizesse o vídeo, nessa procura eu encontrei o &lt;a href="http://projects.gnome.org/cheese/"&gt;Cheese&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;O Cheese é um &lt;span style="font-style: italic;"&gt;software&lt;/span&gt; simples de usar e que dá bons resultados.&lt;br /&gt;&lt;br /&gt;Segue um vídeo da utilização do sistema:&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ckLXA-AQTsY&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/ckLXA-AQTsY&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Pena que a tela de exibição dos frames não foi capturada corretamente.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-2277435932936293703?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/2277435932936293703/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=2277435932936293703' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/2277435932936293703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/2277435932936293703'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/08/fazendo-videos-e-fotos-com-webcam.html' title='Fazendo vídeos e fotos com webcam'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-13329103713514585</id><published>2009-07-28T12:52:00.004-03:00</published><updated>2009-07-28T13:14:15.451-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mestrado'/><category scheme='http://www.blogger.com/atom/ns#' term='estatística'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial scilab'/><category scheme='http://www.blogger.com/atom/ns#' term='Simulação numérica'/><category scheme='http://www.blogger.com/atom/ns#' term='computação'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><category scheme='http://www.blogger.com/atom/ns#' term='armazenamento'/><title type='text'>Tutorial Scilab - 8 [Usando arquivos]</title><content type='html'>[English version &lt;a href="http://usingscilab.blogspot.com/2009/03/using-files.html"&gt;here&lt;/a&gt;.]&lt;br /&gt;&lt;br /&gt;Quanto tempo hein? Mas finalmente estou retomando os meus compromissos (dentre eles, o MultiSign).&lt;br /&gt;&lt;br /&gt;Pois bem, vamos ver algo sobre manipulação de arquivos com o Scilab agora.&lt;br /&gt;&lt;br /&gt;No Scilab, existem diversas funções para manipular arquivos tanto arquivos ASCII quanto binários.&lt;br /&gt;&lt;br /&gt;Os aquivos são importantes para melhor gerenciar dados de entrada e resultados obtidos (óbvio não acham?).&lt;br /&gt;&lt;br /&gt;Como a maioria deve saber o que é um arquivo, vamos dar continuidade ao &lt;span style="font-style: italic;"&gt;post&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Uma boa forma de conhecer as formas de manipulação de arquivos no Scilab é com o &lt;span style="font-style: italic;"&gt;help&lt;/span&gt;, olhe como acessar o &lt;span style="font-style: italic;"&gt;help&lt;/span&gt; na figura abaixo:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IGuBPchcQ6w/Sm8g5oD1f3I/AAAAAAAAAY4/VVtzuxGvfdU/s1600-h/scilab-help.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 125px;" src="http://1.bp.blogspot.com/_IGuBPchcQ6w/Sm8g5oD1f3I/AAAAAAAAAY4/VVtzuxGvfdU/s200/scilab-help.png" alt="" id="BLOGGER_PHOTO_ID_5363541855599689586" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Na tela de ajuda, digite: &lt;span style="font-style: italic;"&gt;file manage&lt;/span&gt; e selecione a primeira opção &lt;span style="font-style: italic;"&gt;file(.)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Esta função é semelhante à função fopen(.) da linguagem C.&lt;br /&gt;&lt;br /&gt;No &lt;span style="font-style: italic;"&gt;help&lt;/span&gt;, é possível ver várias informações sobre a função file(.).&lt;br /&gt;&lt;br /&gt;Algumas das outras funções funções de manipulação de arquivos no Scilab são:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;save;&lt;/li&gt;&lt;li&gt;load;&lt;/li&gt;&lt;li&gt;mopen;&lt;/li&gt;&lt;li&gt;mclose;&lt;/li&gt;&lt;li&gt;writeb;&lt;/li&gt;&lt;li&gt;readb.&lt;/li&gt;&lt;/ul&gt;No momento, vamos nos limitar as funções:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;read;&lt;/li&gt;&lt;li&gt;write.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;A função write(.) cria arquivos ASCII e a função read(.) carrega os arquivos em variáveis.&lt;br /&gt;&lt;br /&gt;As variáveis envolvidas nestas funções geralmente são matrizes e/ou vetores. Vamos aos exemplos agora:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--&gt;x = rand(5,5)&lt;br /&gt;x  =&lt;br /&gt;&lt;br /&gt; 0.2113249    0.6283918    0.5608486    0.2320748    0.3076091&lt;br /&gt; 0.7560439    0.8497452    0.6623569    0.2312237    0.9329616&lt;br /&gt; 0.0002211    0.6857310    0.7263507    0.2164633    0.2146008&lt;br /&gt; 0.3303271    0.8782165    0.1985144    0.8833888    0.312642&lt;br /&gt; 0.6653811    0.0683740    0.5442573    0.6525135    0.3616361&lt;br /&gt;&lt;br /&gt;--&gt;write("test_data.dat", x);&lt;br /&gt;&lt;br /&gt;--&gt;y1 = read("test_data.dat", 1, 2) // 1 linnha e 2 colunas&lt;br /&gt;y1  =&lt;br /&gt;&lt;br /&gt; 0.2113249    0.6283918&lt;br /&gt;&lt;br /&gt;--&gt;y2 = read("test_data.dat", 2, 2) // 2 linhas and 2 colunas&lt;br /&gt;y2  =&lt;br /&gt;&lt;br /&gt; 0.2113249    0.6283918&lt;br /&gt; 0.7560439    0.8497452&lt;br /&gt;&lt;br /&gt;--&gt;y3 = read("test_data.dat", -1, 1) // -1 indica que se deve ler todas as linhas&lt;br /&gt;y3  =&lt;br /&gt;&lt;br /&gt; 0.2113249&lt;br /&gt; 0.7560439&lt;br /&gt; 0.0002211&lt;br /&gt; 0.3303271&lt;br /&gt; 0.6653811&lt;br /&gt;&lt;br /&gt;--&gt;&gt;y4 = read("test_data.dat", -1, 5) // lê o arquivo inteiro&lt;br /&gt;y4  =&lt;br /&gt;&lt;br /&gt; 0.2113249    0.6283918    0.5608486    0.2320748    0.3076091&lt;br /&gt; 0.7560439    0.8497452    0.6623569    0.2312237    0.9329616&lt;br /&gt; 0.0002211    0.6857310    0.7263507    0.2164633    0.2146008&lt;br /&gt; 0.3303271    0.8782165    0.1985144    0.8833888    0.312642&lt;br /&gt; 0.6653811    0.0683740    0.5442573    0.6525135    0.3616361&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;O arquivo test_data.dat é apresentado na figura a seguir (clique na figura para vê-la em tamanho real).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_IGuBPchcQ6w/Sm8jRlw3ZtI/AAAAAAAAAZA/iDHbJy0rLq0/s1600-h/test_data.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://3.bp.blogspot.com/_IGuBPchcQ6w/Sm8jRlw3ZtI/AAAAAAAAAZA/iDHbJy0rLq0/s320/test_data.png" alt="" id="BLOGGER_PHOTO_ID_5363544466323367634" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-13329103713514585?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/13329103713514585/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=13329103713514585' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/13329103713514585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/13329103713514585'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/07/tutorial-scilab-8-usando-arquivos.html' title='Tutorial Scilab - 8 [Usando arquivos]'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IGuBPchcQ6w/Sm8g5oD1f3I/AAAAAAAAAY4/VVtzuxGvfdU/s72-c/scilab-help.png' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-6788873249523705451</id><published>2009-07-03T09:39:00.003-03:00</published><updated>2009-07-03T09:45:13.481-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mestrado'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='formação'/><category scheme='http://www.blogger.com/atom/ns#' term='multisign'/><title type='text'>Nota aos leitores</title><content type='html'>Acredito que os leitores do MultiSign devem ter percebido que as postagens estão "meio atrasadas".&lt;br /&gt;&lt;br /&gt;Eu estou com algumas atividades no momento que estão tomando muito tempo e eu também tenho outros blogs (&lt;a href="http://usingscilab.blogspot.com"&gt;Using Scilab&lt;/a&gt;, &lt;a href="http://engenheirocatolico.blogspot.com"&gt;Engenheiro Católico&lt;/a&gt; e &lt;a href="http://catholic-engineer.blogspot.com"&gt;Catholic Engineer&lt;/a&gt;) os quais têm me dado muita satisfação, pois os leitores estão sempre interagindo com comentários e e-mails.&lt;br /&gt;&lt;br /&gt;Espero estar renormalizando o MultiSign na próxima semana.&lt;br /&gt;&lt;br /&gt;Abraços a todos e que Deus os abençoe.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-6788873249523705451?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/6788873249523705451/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=6788873249523705451' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/6788873249523705451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/6788873249523705451'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/07/nota-aos-leitores.html' title='Nota aos leitores'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-9098962883200130725</id><published>2009-06-04T15:40:00.003-03:00</published><updated>2009-06-04T15:46:29.067-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Perfil profissional'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='física'/><category scheme='http://www.blogger.com/atom/ns#' term='Pesquisa'/><category scheme='http://www.blogger.com/atom/ns#' term='tux embriagado'/><title type='text'>Uma questão de energia</title><content type='html'>Eu me lembrei de um problema interessante de física.&lt;br /&gt;&lt;br /&gt;Gostaria de verificar o potencial dos leitores do MultiSign.&lt;br /&gt;&lt;br /&gt;Pois bem, o problema é o seguinte:&lt;br /&gt;&lt;br /&gt;Pegue uma mola e comprima-a ao máximo.&lt;br /&gt;&lt;br /&gt;Coloque a mola comprimida em um suporte que não permita que a mola volte à posição de relaxamento e depois mergulhe tudo em um ácido.&lt;br /&gt;&lt;br /&gt;Este esperimento deve ser feito usando um ácido que dissolva o material da mola mas que o suporte não sofra danos.&lt;br /&gt;&lt;br /&gt;A pergunta: para onde vai a energia contida na mola (kx²/2)?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------&lt;br /&gt;A solução mais inteligente pode ganhar um prêmio.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-9098962883200130725?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/9098962883200130725/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=9098962883200130725' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/9098962883200130725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/9098962883200130725'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/06/uma-questao-de-energia.html' title='Uma questão de energia'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-8268923842082420239</id><published>2009-05-30T10:12:00.002-03:00</published><updated>2009-05-30T10:20:12.252-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='atom'/><category scheme='http://www.blogger.com/atom/ns#' term='informativos'/><category scheme='http://www.blogger.com/atom/ns#' term='processamento de sinais'/><category scheme='http://www.blogger.com/atom/ns#' term='tux embriagado'/><title type='text'>Top Blog</title><content type='html'>Hoje eu tive uma surpresa ao abrir minha caixa de e-mails. Vi que o MultiSign havia sido indicado ao &lt;a href="http://www.topblog.com.br/"&gt;Top Blog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Então eu pensei, se os meu leitores não comentam quase nenhum &lt;span style="font-style: italic;"&gt;post&lt;/span&gt;, alguns poucos entram em contato por messenger ou e-mail. Eu agradeço os que interagem, mas vocês sabem qual a realidade do MultiSign.&lt;br /&gt;&lt;br /&gt;Eu fiquei até pensando se não seria uma boa inscrever o MultiSign, mas resolvi avisar aos leitores e ver a reação.&lt;br /&gt;&lt;br /&gt;Se a resposta for positiva, eu faço a inscrição.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.topblog.com.br/arquivos/imagem_post.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://www.topblog.com.br/arquivos/imagem_post.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Se não tiver resposta, enfim é assim mesmo, não irei deixar de atualizar o blog.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-8268923842082420239?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/8268923842082420239/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=8268923842082420239' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/8268923842082420239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/8268923842082420239'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/05/top-blog.html' title='Top Blog'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-1671652592413626042</id><published>2009-05-16T11:56:00.004-03:00</published><updated>2009-05-16T12:14:36.031-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='informativos'/><category scheme='http://www.blogger.com/atom/ns#' term='matemática'/><category scheme='http://www.blogger.com/atom/ns#' term='Perfil profissional'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='formação'/><category scheme='http://www.blogger.com/atom/ns#' term='Simulação numérica'/><category scheme='http://www.blogger.com/atom/ns#' term='multisign'/><title type='text'>Desafio 01</title><content type='html'>Eu estava pensando umas coisas esses dias e acabei por me lembrar da época de ensino médio, em que eu participava das olimpíadas de física e matemática.&lt;br /&gt;&lt;br /&gt;Haviam tantos problemas interessantes. Eu sei que a maioria das pessoas não valoriza os problemas clássicos da matemática, por exemplo, mas estudá-los e tentar resolver os problemas da base do conhecimento abre a mente para aprender cada vez mais, e, além do benefício pessoal, também é possível que outras pessoas usem suas idéias para resolver outros problemas.&lt;br /&gt;&lt;br /&gt;Eu mesmo já usei conceitos de teoria dos números, algo que é da base da matemática, para resolver problemas em processamento de sinais e imagens.&lt;br /&gt;&lt;br /&gt;Uma vez meu primeiro professor de cálculo disse: "o único conhecimento que você não usa é aquele que você não possui", e isso é verdade.&lt;br /&gt;&lt;br /&gt;Eu vou então propor o problema que eu me lembrei enquanto almoçava na 4ª feira desta semana:&lt;br /&gt;&lt;br /&gt;Você tem 1001 bolinhas e uma balança de pratos (que serve para comparar dois pesos e determinar o mais leve).&lt;br /&gt;Uma destas bolinhas tem uma massa diferente das outras 1000 bolinhas.&lt;br /&gt;&lt;br /&gt;Como determinar se a massa desta bolinha, que é diferente das outras, é maior ou menor que a massa das outras bolinhas usando a balança, no máximo, duas vezes?&lt;br /&gt;&lt;br /&gt;---------------------------&lt;br /&gt;&lt;br /&gt;Se os leitores se mostrarem interessados por esta minha iniciativa, eu pensei em recompensar as soluções. Talvez transferências para contas corrente sejam interessantes.&lt;br /&gt;&lt;br /&gt;Quem tiver uma solução, favor compartilhá-la conosco fazendo um comentário neste &lt;span style="font-style: italic;"&gt;post&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-1671652592413626042?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/1671652592413626042/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=1671652592413626042' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/1671652592413626042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/1671652592413626042'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/05/desafio-01.html' title='Desafio 01'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-3842661888217256804</id><published>2009-05-06T14:45:00.002-03:00</published><updated>2009-05-06T14:57:53.703-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='filtragem'/><category scheme='http://www.blogger.com/atom/ns#' term='estatística'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial scilab'/><category scheme='http://www.blogger.com/atom/ns#' term='processamento de sinais'/><category scheme='http://www.blogger.com/atom/ns#' term='Simulação numérica'/><category scheme='http://www.blogger.com/atom/ns#' term='computação'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><title type='text'>Tutorial Scilab - 7 [Operações elemento a elemento]</title><content type='html'>[English version &lt;a href="http://usingscilab.blogspot.com/2009/03/operations-element-by-element.html"&gt;here&lt;/a&gt;.]&lt;br /&gt;&lt;br /&gt;Estão vendo como é difícil atualizar o MultiSign e escrever a dissertação? Mas assim que possível iremos regularizar a situação.&lt;br /&gt;&lt;br /&gt;Vamos abordar as operações elemento a elemento usando o Scilab.&lt;br /&gt;&lt;br /&gt;Este &lt;span style="font-style: italic;"&gt;post&lt;/span&gt; será basicamente de exemplos.&lt;br /&gt;&lt;br /&gt;Vamos supor que temos duas matrizes de mesmo tamanho (X e Y) e queremos multiplicar (Z1) e dividir (Z2) os elementos correspondentes:&lt;br /&gt;&lt;br /&gt;X = [x11 x12 x13;&lt;br /&gt;x21 x22 x23;&lt;br /&gt;x31 x32 x33].&lt;br /&gt;&lt;br /&gt;Y = [y11 y12 y13;&lt;br /&gt;y21 y22 y23;&lt;br /&gt;y31 y32 y33].&lt;br /&gt;&lt;br /&gt;Z1 = [x11*y11 x12*y12 x13*y13;&lt;br /&gt;x21*y21 x22*y22 x23*y23;&lt;br /&gt;x31*y31 x32*y32 x33*y33].&lt;br /&gt;&lt;br /&gt;Z2 = [x11/y11 x12/y12 x13/y13;&lt;br /&gt;x21/y21 x22/y22 x23/y23;&lt;br /&gt;x31/y31 x32/y32 x33/y33].&lt;br /&gt;&lt;br /&gt;Não existe um operador matemático matricial para tal operação, mas o Scilab tem um recurso para fazer isso. Observem a seguir.&lt;br /&gt;&lt;br /&gt;--&gt;X = zeros(3,3);&lt;br /&gt;&lt;br /&gt;--&gt;X(:) = [1:9]'&lt;br /&gt;X  =&lt;br /&gt;&lt;br /&gt;   1.    4.    7.&lt;br /&gt;   2.    5.    8.&lt;br /&gt;   3.    6.    9.&lt;br /&gt;&lt;br /&gt;--&gt;Y = ones(3,3) + X'&lt;br /&gt;Y  =&lt;br /&gt;&lt;br /&gt;   2.    3.    4. &lt;br /&gt;   5.    6.    7. &lt;br /&gt;   8.    9.    10.&lt;br /&gt;&lt;br /&gt;--&gt;Z1 = X.*Y&lt;br /&gt;Z1  =&lt;br /&gt;&lt;br /&gt;   2.     12.    28.&lt;br /&gt;   10.    30.    56.&lt;br /&gt;   24.    54.    90.&lt;br /&gt;&lt;br /&gt;--&gt;Z1 = X./Y&lt;br /&gt;Z1  =&lt;br /&gt;&lt;br /&gt;   0.5      1.3333333    1.75     &lt;br /&gt;   0.4      0.8333333    1.1428571&lt;br /&gt;   0.375    0.6666667    0.9&lt;br /&gt;&lt;br /&gt;As operações de soma e subtração matriciais operam elemento a elemento.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;Operações lógicas&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Agora vamos fazer operações lógicas com matrizes.&lt;br /&gt;&lt;br /&gt;Os operadores:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&amp;amp; - AND;&lt;/li&gt;&lt;li&gt;| - OR;&lt;/li&gt;&lt;li&gt;~ - NOT.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;E um código de exemplo:&lt;br /&gt;&lt;br /&gt;--&gt;X = rand(3,3) &gt; 0.2&lt;br /&gt;X  =&lt;br /&gt;&lt;br /&gt; F T T&lt;br /&gt; T F T&lt;br /&gt; T T T&lt;br /&gt;&lt;br /&gt;--&gt;Y = rand(3,3,'normal') &gt; 0.5&lt;br /&gt;Y  =&lt;br /&gt;&lt;br /&gt; T T F&lt;br /&gt; T F T&lt;br /&gt; F F F&lt;br /&gt;&lt;br /&gt;--&gt;Z1 = X &amp;amp; Y&lt;br /&gt;Z1  =&lt;br /&gt;&lt;br /&gt; F T F&lt;br /&gt; T F T&lt;br /&gt; F F F&lt;br /&gt;&lt;br /&gt;--&gt;Z2 = X | Y&lt;br /&gt;Z2  =&lt;br /&gt;&lt;br /&gt; T T T&lt;br /&gt; T F T&lt;br /&gt; T T T&lt;br /&gt;&lt;br /&gt;--&gt;Z3 = ~X &lt;br /&gt;Z3  =&lt;br /&gt;&lt;br /&gt; T F F&lt;br /&gt; F T F&lt;br /&gt; F F F&lt;br /&gt;&lt;br /&gt;--&gt;Z4 = (~X) | Y&lt;br /&gt;Z4  =&lt;br /&gt;&lt;br /&gt; T T F&lt;br /&gt; T T T&lt;br /&gt; F F F&lt;br /&gt;&lt;br /&gt;Com isso, fechamos a parte de operações matriciais básicas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-3842661888217256804?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/3842661888217256804/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=3842661888217256804' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/3842661888217256804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/3842661888217256804'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/05/tutorial-scilab-7-operacoes-elemento.html' title='Tutorial Scilab - 7 [Operações elemento a elemento]'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-871960987879171666</id><published>2009-04-17T09:33:00.003-03:00</published><updated>2009-04-17T09:49:08.788-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='informativos'/><category scheme='http://www.blogger.com/atom/ns#' term='mestrado'/><category scheme='http://www.blogger.com/atom/ns#' term='matemática'/><category scheme='http://www.blogger.com/atom/ns#' term='estatística'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial scilab'/><category scheme='http://www.blogger.com/atom/ns#' term='Simulação numérica'/><category scheme='http://www.blogger.com/atom/ns#' term='limiarização'/><category scheme='http://www.blogger.com/atom/ns#' term='computação'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><title type='text'>Tutorial Scilab - 6 [Vetores e Matrizes - 4]</title><content type='html'>[English version &lt;a href="http://usingscilab.blogspot.com/2009/03/vectors-and-matrices-4.html"&gt;here&lt;/a&gt;.]&lt;br /&gt;&lt;br /&gt;Primeiro gostaria de me explicar com os leitores do MultiSign. Eu passei estes dias (quase 3 semanas) sem fazer nenhuma postagem porque estava envolvido com as atividades da &lt;a href="http://www.comshalom.org/formacao/exibir.php?form_id=3549"&gt;Semana Santa&lt;/a&gt;, festas pascais e um artigo que espero finalizar hoje.&lt;br /&gt;&lt;br /&gt;Voltando ao assunto. Vamos ver agora como fazer operações lógicas com vetores e matrizes.&lt;br /&gt;&lt;br /&gt;Um exemplo:&lt;br /&gt;&lt;br /&gt;Vamos supor que o vetor a seguir corresponde a altura, em metros, de um conjunto de pesoas.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;v = [1.55 1.82 1.48 1.71 1.62 1.94 2.00]'&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Precisamos então identificar as pessoas que têm mais de 1,80m.&lt;br /&gt;&lt;br /&gt;Uma solução direta é analizar elemento por elemento:&lt;br /&gt;&lt;br /&gt;v(1) &gt; 1.80&lt;br /&gt;v(2) &gt; 1.80&lt;br /&gt;v(3) &gt; 1.80&lt;br /&gt;v(4) &gt; 1.80&lt;br /&gt;v(5) &gt; 1.80&lt;br /&gt;v(6) &gt; 1.80&lt;br /&gt;v(7) &gt; 1.80&lt;br /&gt;&lt;br /&gt;Mas o Scilab tem uma forma mais prática de fazer isso:&lt;br /&gt;&lt;br /&gt;v &gt; 1.8 // esta operação não depende da dimensionalidade ou tamanho do vetor&lt;br /&gt;&lt;br /&gt;Vamos fazer um &lt;span style="font-style: italic;"&gt;script&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;--&gt;v = [1.55 1.82 1.48 1.71 1.62 1.94 2.00]'&lt;br /&gt;v  =&lt;br /&gt;&lt;br /&gt;   1.55&lt;br /&gt;   1.82&lt;br /&gt;   1.48&lt;br /&gt;   1.71&lt;br /&gt;   1.62&lt;br /&gt;   1.94&lt;br /&gt;   2.  &lt;br /&gt;&lt;br /&gt;--&gt;v &gt; 1.8&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; F&lt;br /&gt; T&lt;br /&gt; F&lt;br /&gt; F&lt;br /&gt; F&lt;br /&gt; T&lt;br /&gt; T&lt;br /&gt;&lt;br /&gt;Mas, se o que desejamos é saber a posição dos elementos (pessoas) com mais de 1,80m:&lt;br /&gt;&lt;br /&gt;--&gt;pos = find(v &gt; 1.8)&lt;br /&gt;pos  =&lt;br /&gt;&lt;br /&gt;   2.    6.    7.&lt;br /&gt;&lt;br /&gt;Os elementos em v que são maiores que 1,80 são o segundo (1,82), sexto (1,94) e sétimo (2,00).&lt;br /&gt;&lt;br /&gt;Podemos fazer a mesma coisa com matrizes.&lt;br /&gt;&lt;br /&gt;Um exemplo muito útil é criar uma matriz binária em que a probabilidade de um elemento ser 0 (zero) é a mesma dele ser 1 (um).&lt;br /&gt;&lt;br /&gt;Olhem o script e me dêem um &lt;span style="font-style: italic;"&gt;feedback&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;--&gt;x = rand(3, 3)&lt;br /&gt;x  =&lt;br /&gt;&lt;br /&gt;   0.5667211    0.0568928    0.7279222&lt;br /&gt;   0.5711639    0.5595937    0.2677766&lt;br /&gt;   0.8160110    0.1249340    0.5465335&lt;br /&gt;&lt;br /&gt;--&gt;y = x &gt; 0.5&lt;br /&gt;y  =&lt;br /&gt;&lt;br /&gt; T F T&lt;br /&gt; T T F&lt;br /&gt; T F T&lt;br /&gt;&lt;br /&gt;Para instigá-los, eu pergunto por que tem tantos T's a mais que F's?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-871960987879171666?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/871960987879171666/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=871960987879171666' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/871960987879171666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/871960987879171666'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/04/tutorial-scilab-6-vetores-e-matrizes-4.html' title='Tutorial Scilab - 6 [Vetores e Matrizes - 4]'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-3306608504510144858</id><published>2009-03-31T21:34:00.003-03:00</published><updated>2009-03-31T21:39:21.120-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='informativos'/><category scheme='http://www.blogger.com/atom/ns#' term='mestrado'/><category scheme='http://www.blogger.com/atom/ns#' term='SIRENE'/><category scheme='http://www.blogger.com/atom/ns#' term='formação'/><title type='text'>Mais uma etapa chegando ao fim...</title><content type='html'>Como os leitores já devem ter percebido, estou postando com baixa frequência.&lt;br /&gt;&lt;br /&gt;O motivo é o meu mestrado que está chegando ao fim, e como todo final de curso que se preze estou com muito o que fazer.&lt;br /&gt;&lt;br /&gt;Minha previsão é terminar o mestrado em julho (com a defesa da minha dissertação).&lt;br /&gt;&lt;br /&gt;Enquanto estou ocultado com as atividades do mestrado, não poderei dar a devida atenção aos meus &lt;span style="font-style: italic;"&gt;blogs&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Espero contar com a compreensão de todos e que Deus esteja conosco hoje e sempre.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-3306608504510144858?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/3306608504510144858/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=3306608504510144858' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/3306608504510144858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/3306608504510144858'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/03/mais-uma-etapa-chegando-ao-fim.html' title='Mais uma etapa chegando ao fim...'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-3265129102533425884</id><published>2009-03-19T13:11:00.004-03:00</published><updated>2009-03-19T13:36:36.164-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='digital signal processing'/><category scheme='http://www.blogger.com/atom/ns#' term='computational vision'/><category scheme='http://www.blogger.com/atom/ns#' term='digital image processing'/><category scheme='http://www.blogger.com/atom/ns#' term='computation'/><category scheme='http://www.blogger.com/atom/ns#' term='engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='morphology'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='math'/><category scheme='http://www.blogger.com/atom/ns#' term='opencv'/><title type='text'>Mathematical Morphology using OpenCV</title><content type='html'>I did a post about &lt;a href="http://multisign.blogspot.com/2008/09/mathematical-morphology.html"&gt;mathematical morphology&lt;/a&gt;, I wrote about theory of mathematical morphology.&lt;br /&gt;&lt;br /&gt;Now, I want to write about the functions of OpenCV* for manipulate the structural element and apply the operations of erosion and dilatation.&lt;br /&gt;&lt;br /&gt;The following function creates the structural element:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;IplConvKernel* cvCreateStructuringElementEx( int cols,&lt;br /&gt;                                            int rows,&lt;br /&gt;                                            int anchor_x,&lt;br /&gt;                                            int anchor_y,&lt;br /&gt;                                            int shape,&lt;br /&gt;                                            int* values=NULL );&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;dt&gt;cols: Number of columns of the structural element&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;rows: Number of rows of the structural element&lt;/dt&gt;&lt;dt&gt;&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;anchor_x: Horizontal offset relative to point of anchor, normally equal to 0 (zero)&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;anchor_y: Vertical offset relative to point of anchor, normally equal to 0 (zero)&lt;/dt&gt;&lt;dt&gt;&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;shape: Type of structural element, possible values:&lt;br /&gt;&lt;/dt&gt;&lt;dd&gt;&lt;ul&gt;&lt;li&gt;&lt;code&gt;CV_SHAPE_RECT&lt;/code&gt;, square element; &lt;/li&gt;&lt;li&gt;&lt;code&gt;CV_SHAPE_CROSS&lt;/code&gt;, element in disc;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;CV_SHAPE_ELLIPSE&lt;/code&gt;, elliptic element;&lt;/li&gt;&lt;li&gt;&lt;code&gt;CV_SHAPE_CUSTOM&lt;/code&gt;, element defined by user. In this case, the parameter &lt;code&gt;values&lt;/code&gt; specifies the mask, delimiting the vicinity of the pixel in analysis.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt; &lt;/dd&gt;values: Pointer to structural element defined by usuer, this parameter is used just for shape = &lt;code&gt;CV_SHAPE_CUSTOM&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;Function of erosion:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;void cvErode( const CvArr* src, CvArr* dst,&lt;br /&gt;             IplConvKernel* element=NULL, int iterations=1 );&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Function of dilatation:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;void cvDilate( const CvArr* src, CvArr* dst,&lt;br /&gt;             IplConvKernel* element=NULL, int iterations=1 );&lt;/pre&gt;&lt;br /&gt;&lt;dl&gt;&lt;dt&gt;src: Input image;&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;dst: Output image;&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;element: Structural element. If it's &lt;code&gt;NULL&lt;/code&gt;, the structural element is a square 3x3;&lt;br /&gt;&lt;/dt&gt;&lt;dt&gt;iterations: Number of times for apply the operation.&lt;br /&gt;&lt;/dt&gt;&lt;/dl&gt;The interfaces for development in Python is the same, and all functions are very fast because they're implemented in C.&lt;br /&gt;&lt;br /&gt;More informations &lt;a href="http://www.comp.leeds.ac.uk/vision/opencv/opencvref_cv.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;----------------------&lt;br /&gt;* OpenCV (&lt;a href="http://sourceforge.net/projects/opencvlibrary"&gt;Open Computational Vision&lt;/a&gt;) is a API for development using Computational Vision. It's a very powerful set of functions for capture, processing and showing of images and videos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-3265129102533425884?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/3265129102533425884/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=3265129102533425884' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/3265129102533425884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/3265129102533425884'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/03/mathematical-morphology-using-opencv.html' title='Mathematical Morphology using OpenCV'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-8428905889416711355</id><published>2009-03-18T13:37:00.003-03:00</published><updated>2009-03-18T13:48:45.395-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sistemas embarcados'/><category scheme='http://www.blogger.com/atom/ns#' term='informativos'/><category scheme='http://www.blogger.com/atom/ns#' term='estatística'/><category scheme='http://www.blogger.com/atom/ns#' term='Perfil profissional'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='snakes'/><category scheme='http://www.blogger.com/atom/ns#' term='youtube'/><title type='text'>Carro voador "popular"</title><content type='html'>Olhe o novo desejo que iremos ter &lt;a href="http://digitaldrops.com.br/drops/2009/03/carro-voador-novo-sonho-de-consumo.html"&gt;aqui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Nada mais de engarrafamentos, trânsito lento, ruas esburacadas, pneus furados, etc...&lt;br /&gt;&lt;br /&gt;Basta mudar seu &lt;a href="http://www.inovavox.com/wp-content/uploads/2007/08/08-lada1300-e-belina.jpg"&gt;carro convencional&lt;/a&gt; por um SKYCAR.&lt;br /&gt;&lt;br /&gt;Segue um vídeo do produto.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ElS9BKSsezw&amp;amp;hl=pt-br&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/ElS9BKSsezw&amp;amp;hl=pt-br&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Vale lembrar que é necessário um &lt;a href="http://viagem.hsw.uol.com.br/breve1.htm"&gt;brevê&lt;/a&gt; para pilotar o SKYCAR.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-8428905889416711355?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/8428905889416711355/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=8428905889416711355' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/8428905889416711355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/8428905889416711355'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/03/carro-voador-popular.html' title='Carro voador &quot;popular&quot;'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-7686697294050484686</id><published>2009-03-14T14:47:00.002-03:00</published><updated>2009-03-14T15:20:43.178-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software livre'/><category scheme='http://www.blogger.com/atom/ns#' term='matemática'/><category scheme='http://www.blogger.com/atom/ns#' term='otimização'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial scilab'/><category scheme='http://www.blogger.com/atom/ns#' term='computação'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><title type='text'>Tutorial Scilab - 5 [Operações Lógicas]</title><content type='html'>[English version &lt;a href="http://usingscilab.blogspot.com/2009/02/logic-operations.html"&gt;here&lt;/a&gt;.]&lt;br /&gt;&lt;br /&gt;Como eu acredito que a maioria dos leitores conhece algo sobre operações lógicas, não vamos dar uma aula sobre o assunto. Porém, é bom revisar algo.&lt;br /&gt;&lt;br /&gt;Operações lógicas são usadas para analisar situações do tipo:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;2 é maior que 3? - falso&lt;/li&gt;&lt;li&gt;o vetor [1 2 3 4] é maior que o vetor [1 3 5]? - verdadeiro&lt;/li&gt;&lt;li&gt;a palavra 'casa' é menor que 'cachorro'? - falso&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;As operações lógicas são aplicadas para manipular os resultados destas situações, por exemplo:&lt;br /&gt;&lt;br /&gt;Eu tenho 22 anos, meu pai tem 52 e minha irmã tem 19.&lt;br /&gt;&lt;br /&gt;Quem de nós é o mais velho?&lt;br /&gt;&lt;br /&gt;Vamos criar uma solução geral para o problema.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Se eu sou mais velho que meu pai &lt;span style="font-weight: bold;"&gt;e&lt;/span&gt; minha irmã então eu sou o mais velho.&lt;/li&gt;&lt;li&gt;Se meu pai é mais velho que eu &lt;span style="font-weight: bold;"&gt;e&lt;/span&gt; minha irmã então ele é o mais velho.&lt;/li&gt;&lt;li&gt;Se minha irmã é mais velha que eu &lt;span style="font-weight: bold;"&gt;e&lt;/span&gt; meu pai então ela é a mais velha.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;O conector &lt;span style="font-weight: bold;"&gt;e&lt;/span&gt; é uma operação lógica.&lt;br /&gt;&lt;br /&gt;Os operadores lógicos são usados com variáveis lógicas, estas por sua vez são variáveis que só assumem os valores &lt;span style="font-weight: bold;"&gt;verdadeiro&lt;/span&gt; ou &lt;span style="font-weight: bold;"&gt;falso&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;As operações lógicas básicas são as seguintes: {&lt;span style="font-weight: bold;"&gt;não&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;ou&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;e&lt;/span&gt;}, em inglês: {&lt;span style="font-weight: bold;"&gt;not&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;or&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;and&lt;/span&gt;} (vamos usar a notação em inglês porque esta é a adotada na literatura em português, inclusive brasileiro).&lt;br /&gt;&lt;br /&gt;A operação &lt;span style="font-weight: bold;"&gt;not&lt;/span&gt; é unária e as demais são binárias.&lt;br /&gt;&lt;br /&gt;Vamos ver agora os resultados de cada operação.&lt;br /&gt;&lt;br /&gt;NOT&lt;br /&gt;&lt;ul&gt;&lt;li&gt;not(verdadeiro) = false&lt;/li&gt;&lt;li&gt;not(false) = verdadeiro&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;AND&lt;br /&gt;&lt;ul&gt;&lt;li&gt;falso and falso = falso&lt;/li&gt;&lt;li&gt;falso and verdadeiro = falso&lt;/li&gt;&lt;li&gt;verdadeiro and falso = falso&lt;/li&gt;&lt;li&gt;verdadeiro and verdadeiro = verdadeiro&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;OR&lt;br /&gt;&lt;ul&gt;&lt;li&gt;falso or falso = falso&lt;/li&gt;&lt;li&gt; falso or verdadeiro = verdadeiro&lt;/li&gt;&lt;li&gt; verdadeiro or false = verdadeiro&lt;/li&gt;&lt;li&gt; verdadeiro or verdadeiro = verdadeiro&lt;/li&gt;&lt;/ul&gt;  &lt;br /&gt;Agora um pequeno exemplo.&lt;br /&gt;&lt;br /&gt;Se eu preciso de uma raquete e uma bola mas só tenho a raquete então eu não estou satisfeito. Porém, se eu preciso de uma bola de basquete ou de vôlei mas eu só tenho a de vôlei então eu já estou satisfeito.&lt;br /&gt;&lt;br /&gt;Sobre os operadores no Scilab:&lt;br /&gt;&lt;br /&gt;O operador '~' é o &lt;span style="font-weight: bold;"&gt;not&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;O operador '|' é o &lt;span style="font-weight: bold;"&gt;or&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;O operador '&amp;amp;' é o &lt;span style="font-weight: bold;"&gt;and&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;As operações &lt;span style="font-weight: bold;"&gt;and&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;or&lt;/span&gt; podem ser aplicadas em vetores com as funções &lt;span style="font-weight: bold;"&gt;or(.)&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;and(.)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Agora os &lt;span style="font-style: italic;"&gt;scripts&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;--&gt;x = 10;&lt;br /&gt;&lt;br /&gt;--&gt;y = 15;&lt;br /&gt;&lt;br /&gt;--&gt;z = x + y&lt;br /&gt;z  =&lt;br /&gt;&lt;br /&gt;   25.&lt;br /&gt;&lt;br /&gt;--&gt;(x &gt; y) &amp;amp; (z &gt; x) // x é menor que y então a primeira operação é falso&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; F&lt;br /&gt;&lt;br /&gt;--&gt;(x &gt; y) | (z &gt; x) // z é maior que x então a segunda operação é verdadeiro&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; T&lt;br /&gt;&lt;br /&gt;--&gt;~((x &gt; y) &amp;amp; (z &gt; x)) // o resultado é o inverso do primeiro resultado&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; T&lt;br /&gt;&lt;br /&gt;--&gt;~((x &gt; y) | (z &gt; x)) // o resultado é o inverso do segundo resultado&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; F&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Os resultados são F (false - falso) ou T (true - verdadeiro) porque operações logicas fornecem resultados lógicos.&lt;br /&gt;&lt;br /&gt;Se for necessário usar os valores lógicos diretamente:&lt;br /&gt;&lt;br /&gt;--&gt;r1 = %F&lt;br /&gt;r1  =&lt;br /&gt;&lt;br /&gt; F&lt;br /&gt;&lt;br /&gt;--&gt;r2 = %T&lt;br /&gt;r2  =&lt;br /&gt;&lt;br /&gt; T&lt;br /&gt;&lt;br /&gt;--&gt;and([r1 r2])&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; F&lt;br /&gt;&lt;br /&gt;--&gt;or([r1 r2])&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; T&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Para fechar o &lt;span style="font-style: italic;"&gt;post&lt;/span&gt;, se você usar operadores lógicos com variáveis numéricas, o Scilab interpreta 0 (zero) como falso e qualquer coisa diferente de zero como verdadeiro.&lt;br /&gt;&lt;br /&gt;--&gt;x = 0;&lt;br /&gt;&lt;br /&gt;--&gt;y = 2;&lt;br /&gt;&lt;br /&gt;--&gt;z = -5;&lt;br /&gt;&lt;br /&gt;--&gt;x | y | z&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; T&lt;br /&gt;&lt;br /&gt;--&gt;x &amp;amp; y &amp;amp; z&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; F&lt;br /&gt;&lt;br /&gt;--&gt;x &amp;amp; z  &lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; F&lt;br /&gt;&lt;br /&gt;--&gt;x &amp;amp; y&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; F&lt;br /&gt;&lt;br /&gt;--&gt;y &amp;amp; z&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt; T&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-7686697294050484686?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/7686697294050484686/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=7686697294050484686' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7686697294050484686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7686697294050484686'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/03/tutorial-scilab-5-operacoes-logicas.html' title='Tutorial Scilab - 5 [Operações Lógicas]'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-7090158266944197502</id><published>2009-03-13T10:18:00.002-03:00</published><updated>2009-03-13T10:28:43.514-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biometria'/><category scheme='http://www.blogger.com/atom/ns#' term='atom'/><category scheme='http://www.blogger.com/atom/ns#' term='device driver'/><category scheme='http://www.blogger.com/atom/ns#' term='cálculo integral'/><category scheme='http://www.blogger.com/atom/ns#' term='engenharia'/><category scheme='http://www.blogger.com/atom/ns#' term='física'/><category scheme='http://www.blogger.com/atom/ns#' term='computação'/><category scheme='http://www.blogger.com/atom/ns#' term='youtube'/><title type='text'>Voar sobre a água</title><content type='html'>Eu vi este &lt;span style="font-style: italic;"&gt;post&lt;/span&gt; &lt;a href="http://blogengenhocas.blogspot.com/2009/03/voe-sobre-agua.html"&gt;aqui&lt;/a&gt; e achei muito interessante.&lt;br /&gt;&lt;br /&gt;Tudo se resume neste vídeo.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/7-KczCp0OQ4&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/7-KczCp0OQ4&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Vamos analisar um pouco a situação.&lt;br /&gt;&lt;br /&gt;Lembram-se de quantidade de movimento? Pois bem, a quantidade de movimento da água para baixo é a mesma da pessoa para cima, de modo que quando é alcançada uma velocidade inicial suficiente, nós subimos (e bem alto como visto no vídeo).&lt;br /&gt;&lt;br /&gt;Não vou dar uma aula de física aqui, mas caso alguém tenha a oportunidade de brincar com algo assim um dia, só recomendo que não se esqueça do seu próprio peso, pois a força que a água te joga para cima deve ser igual ao seu peso para te manter em cima e se você for voar para frente, não se esqueça de continuar a manter seu peso equilibrado.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-7090158266944197502?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/7090158266944197502/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=7090158266944197502' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7090158266944197502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7090158266944197502'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/03/voar-sobre-agua.html' title='Voar sobre a água'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-4117323586617228181</id><published>2009-03-11T11:48:00.003-03:00</published><updated>2009-03-11T12:04:37.386-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software livre'/><category scheme='http://www.blogger.com/atom/ns#' term='matemática'/><category scheme='http://www.blogger.com/atom/ns#' term='formação'/><category scheme='http://www.blogger.com/atom/ns#' term='vídeo'/><category scheme='http://www.blogger.com/atom/ns#' term='Pesquisa'/><category scheme='http://www.blogger.com/atom/ns#' term='armazenamento'/><title type='text'>Acervo de mídias digitais on line</title><content type='html'>O governo criou um portal que reune  e disponibiliza arquivos de imagens, sons, textos e vídeos gratuitamente - &lt;a href="http://www.dominiopublico.gov.br/"&gt;Domínio Público&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;O sistema, segundo o próprio portal, é desenvolvido em &lt;span style="font-style: italic;"&gt;Software&lt;/span&gt; Livre (mais um ponto positivo).&lt;br /&gt;&lt;br /&gt;O que achei muito útil é que os textos incluem bibliografia por áera do conhecimento (Administração, Economia, Arquitetura, Artes, Política, Saúde, Informática, Matemática, Física, Medicina, etc...) e também uma &lt;a href="http://www.dominiopublico.gov.br/pesquisa/PesquisaPeriodicoForm.jsp"&gt;seção de teses e dissertações&lt;/a&gt;, também dividida por áreas do conhecimento.&lt;br /&gt;&lt;br /&gt;Enfim, fiquei sabendo que este portal estava ameaçado de ser fechado por falta de acessos, então vamos acessar!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-4117323586617228181?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/4117323586617228181/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=4117323586617228181' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/4117323586617228181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/4117323586617228181'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/03/acervo-de-midias-digitais-on-line.html' title='Acervo de mídias digitais on line'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-3136566112134213171</id><published>2009-03-09T19:16:00.005-03:00</published><updated>2009-03-09T19:46:19.224-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tudo'/><category scheme='http://www.blogger.com/atom/ns#' term='vídeo'/><category scheme='http://www.blogger.com/atom/ns#' term='Pesquisa'/><category scheme='http://www.blogger.com/atom/ns#' term='rss'/><category scheme='http://www.blogger.com/atom/ns#' term='youtube'/><title type='text'>Canal do Vaticano no YouTube</title><content type='html'>Fonte &lt;a href="http://blog.bibliacatolica.com.br/2009/03/09/bispos-do-mundo-inteiro-analisam-facebook-e-redes-sociais/"&gt;aqui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;O Papa Bento XVI decidiu por criar um canal no YouTube: http://www.youtube.com/vatican, alguns bispos foram contra pois disseram que um local com vídeos de quaisquer natureza não é adequado para expor o Vaticano, porém o Papa disse: "Cristo também se 'rebaixou' para assumir a natureza humana" e concluiu dizendo que deseja estar onde as pessoas estão.&lt;br /&gt;&lt;br /&gt;É bom ver que as autoridades da Igreja estão abrindo seus olhos para os novos meios de comunicação e estão adentrando neste "novo mundo".&lt;br /&gt;&lt;br /&gt;Devemos sempre evoluir e criar novas tecnologias e recursos, porém sem a Luz de Deus não seremos capazes de chegar na verdadeira e completa evolução.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/OTdmbC63MPk&amp;hl=en&amp;fs=1&amp;rel=0&amp;color1=0x234900&amp;color2=0x4e9e00"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/OTdmbC63MPk&amp;hl=en&amp;fs=1&amp;rel=0&amp;color1=0x234900&amp;color2=0x4e9e00" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-3136566112134213171?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/3136566112134213171/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=3136566112134213171' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/3136566112134213171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/3136566112134213171'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/03/canal-do-vaticano-no-youtube.html' title='Canal do Vaticano no YouTube'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-4319270745999654421</id><published>2009-03-02T11:47:00.005-03:00</published><updated>2009-03-02T12:17:10.176-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='digital signal processing'/><category scheme='http://www.blogger.com/atom/ns#' term='delta de dirac'/><category scheme='http://www.blogger.com/atom/ns#' term='digital image processing'/><category scheme='http://www.blogger.com/atom/ns#' term='math'/><category scheme='http://www.blogger.com/atom/ns#' term='covolution'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><title type='text'>Convolution</title><content type='html'>What's convolution? Who studies functional analysis in mathematics or signal and/or image processing, they ask themselves: "what's convolution?" and now we'll try to show a light.&lt;br /&gt;&lt;br /&gt;Give a generic function &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt;, for example a signal of voice.&lt;br /&gt;&lt;br /&gt;We want to analyze the similarity between &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; and another function &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt; (known). The similarity should be calculated for all &lt;span style="font-style: italic;"&gt;t&lt;/span&gt;, because we don't know the moment that &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; is most similar to &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Okay, now we know what we have to do, let's learn how we do.&lt;br /&gt;&lt;br /&gt;We have a function &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt;, the most similar function to &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; is &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; (obvious), so if we dislocate &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; over itself, for each lag (&lt;span style="font-style: italic;"&gt;t - s&lt;/span&gt;) we calculate the similarity between &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;f(t - s)&lt;/span&gt;, the maximum similarity occurs for &lt;span style="font-style: italic;"&gt;s = 0&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;But, if we have the function &lt;span style="font-style: italic;"&gt;f(t - a)&lt;/span&gt; (&lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; shifted to left of &lt;span style="font-style: italic;"&gt;a&lt;/span&gt;), thus if we dislocate &lt;span style="font-style: italic;"&gt;h(t) = f(t - a)&lt;/span&gt; over &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; the similarity between &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;f(t - s)&lt;/span&gt;, the maximum similarity occurs for &lt;span style="font-style: italic;"&gt;s = -a&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;If we have a function h(t) and we don't know the moments and the values of similarity between &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt;, then we need calculate the similarity for each &lt;span style="font-style: italic;"&gt;t&lt;/span&gt;, and I say: this calculus is the convolution.&lt;br /&gt;&lt;br /&gt;For finish, Why do we want to calculate the similarity between two functions?&lt;br /&gt;&lt;br /&gt;Because we can find known patterns in given functions. Return to signal of voice, we can find phonemes (known patterns) over a captured signal.&lt;br /&gt;&lt;br /&gt;--------------&lt;br /&gt;The command in Scilab that calculates the convolution is &lt;span style="font-weight: bold;"&gt;convol()&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-4319270745999654421?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/4319270745999654421/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=4319270745999654421' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/4319270745999654421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/4319270745999654421'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/03/convolution.html' title='Convolution'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-5509989182559669754</id><published>2009-02-26T09:23:00.004-03:00</published><updated>2009-02-26T09:54:46.312-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software livre'/><category scheme='http://www.blogger.com/atom/ns#' term='matemática'/><category scheme='http://www.blogger.com/atom/ns#' term='processamento digital de imagens'/><category scheme='http://www.blogger.com/atom/ns#' term='convolução'/><category scheme='http://www.blogger.com/atom/ns#' term='processamento de sinais'/><category scheme='http://www.blogger.com/atom/ns#' term='progressões'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><title type='text'>Convolução</title><content type='html'>O que é convolução? Aos que um dia estudaram análise funcional em matemática ou processamento de sinais e/ou processamento de imagens, estes um dia se perguntaram: "O que é convolução?" e hoje vamos, no retorno do &lt;a href="http://www.comshalom.org/renascer"&gt;Carnaval&lt;/a&gt;, tentar mostrar uma luz.&lt;br /&gt;&lt;br /&gt;Vamos primeiro tomar uma função &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; qualquer, &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; pode ser um sinal de voz por exemplo.&lt;br /&gt;&lt;br /&gt;Agora nós queremos analisar a semelhança entre &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; e uma outra função &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt;, em que &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt; é uma função conhecida. A medida de semelhança entre &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; e &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt; deve ser definida para todo &lt;span style="font-style: italic;"&gt;t&lt;/span&gt;, pois nós não sabemos em que ponto de &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; passa a ser mais semelhante a &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Agora que nós sabemos o que é preciso fazer, vamos ver como fazer.&lt;br /&gt;&lt;br /&gt;Se nós temos uma função &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt;, a função que mais se aproxima de &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; é a própria &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; (óbvio), então se nós passarmos a função &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; sobre ela mesma e para cada defasagem (&lt;span style="font-style: italic;"&gt;t - s&lt;/span&gt;) nós calcularmos a semelhança, teremos um máximo quando a defasagem for nula (&lt;span style="font-style: italic;"&gt;s = 0&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;Porém, se tomarmos a função &lt;span style="font-style: italic;"&gt;f(t - a)&lt;/span&gt; (&lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; defasado, em atraso, de &lt;span style="font-style: italic;"&gt;a&lt;/span&gt;), então ao passar &lt;span style="font-style: italic;"&gt;f(t - a)&lt;/span&gt; sobre &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt;, teremos a máxima semelhança quando a defasagem for tal que anule o atraso &lt;span style="font-style: italic;"&gt;a&lt;/span&gt; (&lt;span style="font-style: italic;"&gt;s = -a&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;Agora, se a função for outra (&lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt;, previamente conhecida) nós não temos informação de como nem em que ponto a semelhança entre &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; e &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt; ocorre.&lt;br /&gt;&lt;br /&gt;Então precisamos fazer essa medição, e eu digo que essa medição de semelhança entre duas funções para cada instante &lt;span style="font-style: italic;"&gt;t&lt;/span&gt; é a convolução entre &lt;span style="font-style: italic;"&gt;f(t)&lt;/span&gt; e &lt;span style="font-style: italic;"&gt;h(t)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Por fim, por que fazer a análise de semelhança entre duas funções?&lt;br /&gt;&lt;br /&gt;Porque nós podemos precisar encontrar padrões, já conhecidos, em funções que possuímos. Voltando ao sinal de voz, nós podemos tentar localizar fonemas (padrões conhecidos) ao longo do sinal capturado.&lt;br /&gt;&lt;br /&gt;--------------------&lt;br /&gt;A função do Scilab que implementa a convolução é &lt;span style="font-weight: bold;"&gt;convol()&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-5509989182559669754?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/5509989182559669754/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=5509989182559669754' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/5509989182559669754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/5509989182559669754'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/02/convolucao.html' title='Convolução'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-9209619608743099884</id><published>2009-02-19T13:45:00.002-03:00</published><updated>2009-02-19T14:09:35.660-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software livre'/><category scheme='http://www.blogger.com/atom/ns#' term='matemática'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial scilab'/><category scheme='http://www.blogger.com/atom/ns#' term='processamento de sinais'/><category scheme='http://www.blogger.com/atom/ns#' term='Simulação numérica'/><category scheme='http://www.blogger.com/atom/ns#' term='Scilab'/><title type='text'>Tutorial Scilab - 4 [Vetores e Matrizes - 3]</title><content type='html'>[English version &lt;a href="http://usingscilab.blogspot.com/2009/02/vectors-and-matrices-3.html"&gt;here&lt;/a&gt;.]&lt;br /&gt;&lt;br /&gt;Vamos agora abordar funções mais específicas para manipulação de matrizes.&lt;br /&gt;&lt;br /&gt;As funções que mais uso são as seguintes:&lt;br /&gt;&lt;br /&gt;&lt;li&gt;eye(m,n) - matriz identidade;&lt;/li&gt;&lt;li&gt;zeros(m,n) - matriz de zeros (0's);&lt;/li&gt;&lt;li&gt;ones(m,n) - matriz de uns (1's);&lt;br /&gt;&lt;/li&gt;&lt;li&gt;det(X) - determinante;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;inv(X) - matriz inversa;&lt;/li&gt;&lt;li&gt;pinv(A,[tol]) - pseudoinversa;&lt;/li&gt;&lt;li&gt;sum(x,[key]) - soma de vetor/matriz (todos os elementos ou sobre um eixo);&lt;/li&gt;&lt;li&gt;prod(x,[key]) - produto de vetor/matriz (todos os elementos ou sobre um eixo);&lt;/li&gt;&lt;li&gt;mean(x,[key]) - média de vetor/matriz (todos os elementos ou sobre um eixo);&lt;/li&gt;&lt;li&gt;stdev(x,[key]) - desvio padrãode vetor/matriz (todos os elementos ou sobre um eixo);&lt;/li&gt;&lt;li&gt;geomean(x,[key]) - média geometrica de vetor/matriz (todos os elementos ou sobre um eixo);&lt;/li&gt;&lt;li&gt;harmean(x,[key]) - média harmonica de vetor/matriz (todos os elementos ou sobre um eixo);&lt;/li&gt;&lt;li&gt;msd(x,[key]) - desvio médio quadrático de vetor/matriz (todos os elementos ou sobre um eixo);&lt;/li&gt;&lt;li&gt;rand(m1,m2,.. [,key]) - gerador de números aleatórios;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;grand(m, n, dist_type [,p1,...,pk]) - gerador de números e sequências aleatórios;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;find(X) - localiza os índices de valores não-nulos ou verdadeiros (para variáveis booleanas).&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;Como é de se esperar, "cada função é uma função".&lt;br /&gt;&lt;br /&gt;Agora, aos exemplos:&lt;br /&gt;&lt;br /&gt;--&gt;eye(3,3) // matriz identidade 3 x 3*&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt;   1.    0.    0.&lt;br /&gt;   0.    1.    0.&lt;br /&gt;   0.    0.    1.&lt;br /&gt;&lt;br /&gt;--&gt;rand(5,2) // matriz (5 linhas e 2 colunas) de números aleatórios com distribuição de probabilidade uniforme entre [0, 1]&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt;   0.0683740    0.5442573&lt;br /&gt;   0.5608486    0.2320748&lt;br /&gt;   0.6623569    0.2312237&lt;br /&gt;   0.7263507    0.2164633&lt;br /&gt;   0.1985144    0.8833888&lt;br /&gt;&lt;br /&gt;--&gt;rand(2,5,'normal') // matriz (2 linhas e 5 colunas) de números aleatórios com distribuição normal (Gaussiana) de média = 0 e variância = 1&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt;   1.0478272  - 1.4061926  - 1.7350313  - 0.2143931    2.5891773&lt;br /&gt; - 1.3218008  - 1.0384734    0.5546874  - 2.0735088    0.0424792&lt;br /&gt;&lt;br /&gt;--&gt;det(eye(4,4)) // determinante da matriz identidade 4 x 4&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt;   1.&lt;br /&gt;&lt;br /&gt;--&gt;X = rand(5,5) // X é uma matriz (5 x 5) com valores aleatórios entre [0, 1]&lt;br /&gt;X  =&lt;br /&gt;&lt;br /&gt;   0.4368588    0.0437334    0.1280058    0.1531217    0.8784126&lt;br /&gt;   0.2693125    0.4818509    0.7783129    0.6970851    0.1138360&lt;br /&gt;   0.6325745    0.2639556    0.2119030    0.8415518    0.1998338&lt;br /&gt;   0.4051954    0.4148104    0.1121355    0.4062025    0.5618661&lt;br /&gt;   0.9184708    0.2806498    0.6856896    0.4094825    0.5896177&lt;br /&gt;&lt;br /&gt;--&gt;det_X = det(X) // det_X é o determinante de X&lt;br /&gt;det_X  =&lt;br /&gt;&lt;br /&gt; - 0.0799884&lt;br /&gt;&lt;br /&gt;--&gt;[py px] = find(eye(3,3)) // px corresponde as posições (eixo - x) dos números não-nulos (diferentes de zero) e py corresponde as posições (eixo - y) destes números&lt;br /&gt;px  =&lt;br /&gt;&lt;br /&gt;   1.    2.    3.&lt;br /&gt;py  =&lt;br /&gt;&lt;br /&gt;   1.    2.    3.&lt;br /&gt;&lt;br /&gt;--&gt;[py px] = find(~eye(3,3)) // o til '~' é a operação de negação lógica, então (~0) = 1 e (~1) = 0**&lt;br /&gt;px  =&lt;br /&gt;&lt;br /&gt;   1.    1.    2.    2.    3.    3.&lt;br /&gt;py  =&lt;br /&gt;&lt;br /&gt;   2.    3.    1.    3.    1.    2.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--&gt;X // a variável X (X = rand(5,5)) definida antes&lt;br /&gt;X  =&lt;br /&gt;&lt;br /&gt;   0.4368588    0.0437334    0.1280058    0.1531217    0.8784126&lt;br /&gt;   0.2693125    0.4818509    0.7783129    0.6970851    0.1138360&lt;br /&gt;   0.6325745    0.2639556    0.2119030    0.8415518    0.1998338&lt;br /&gt;   0.4051954    0.4148104    0.1121355    0.4062025    0.5618661&lt;br /&gt;   0.9184708    0.2806498    0.6856896    0.4094825    0.5896177&lt;br /&gt;&lt;br /&gt;--&gt;sum(X,'r') // soma sobre as colunas de X (linha de valores)&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt;   2.6624119    1.4850001    1.9160468    2.5074436    2.3435661&lt;br /&gt;&lt;br /&gt;--&gt;sum(X,'c') // soma sobre as linhas de X (coluna de valores)&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt;   1.6401323&lt;br /&gt;   2.3403973&lt;br /&gt;   2.1498187&lt;br /&gt;   1.9002098&lt;br /&gt;   2.8839105&lt;br /&gt;&lt;br /&gt;--&gt;sum(X) // soma de todos os elementos de X&lt;br /&gt;ans  =&lt;br /&gt;&lt;br /&gt;   10.914469&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ok, caso os leitores se manifestem, posso fazer novos &lt;span style="font-style: italic;"&gt;posts&lt;/span&gt; aprofundando mais cada função.&lt;br /&gt;&lt;br /&gt;------------------&lt;br /&gt;* Se o comando é dado sem o ponto-e-vírgula ';' então o resultado da comando é apresentado no prompt e armazenado na variável &lt;span style="font-weight: bold;"&gt;ans&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;** Operações lógicas são cenas futuras que veremos aqui no MultiSign.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-9209619608743099884?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/9209619608743099884/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=9209619608743099884' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/9209619608743099884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/9209619608743099884'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/02/tutorial-scilab-4-vetores-e-matrizes-3.html' title='Tutorial Scilab - 4 [Vetores e Matrizes - 3]'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-7739622151683388151</id><published>2009-02-16T11:03:00.002-03:00</published><updated>2009-02-16T11:15:55.012-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software livre'/><category scheme='http://www.blogger.com/atom/ns#' term='matemática'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial scilab'/><category scheme='http://www.blogger.com/atom/ns#' term='processamento de sinais'/><category scheme='http://www.blogger.com/atom/ns#' term='Simulação numérica'/><title type='text'>Tutorial Scilab - 3 [Vetores e Matrizes - 2]</title><content type='html'>[English version &lt;a href="http://usingscilab.blogspot.com/2009/02/vectors-and-matrices-2.html"&gt;here&lt;/a&gt;.]&lt;br /&gt;&lt;br /&gt;Vamos começar com as funções que podem ser usadas em matrizes e vetores no Scilab.&lt;br /&gt;&lt;br /&gt;Como já se sabe, o Scilab tem várias funções matemáticas, por exemplo: sin, cos, tan, asin, acos, atan, exp, log, etc....&lt;br /&gt;&lt;br /&gt;Todas estas funções podem ser usadas em tensores, matrizes, vetores e escalares.&lt;br /&gt;&lt;br /&gt;Vamos agora ao primeiro exemplo:&lt;br /&gt;&lt;br /&gt;--&gt;x = [1 0 1;&lt;br /&gt;--&gt;0 1 0;&lt;br /&gt;--&gt;1 0 1]&lt;br /&gt;x  =&lt;br /&gt;&lt;br /&gt;  1.    0.    1.&lt;br /&gt;  0.    1.    0.&lt;br /&gt;  1.    0.    1.&lt;br /&gt;&lt;br /&gt;--&gt;y = cos(%pi*x) // o Scilab tem algumas constantes pré-definidas, eu conheco PI (%pi = 3.1415927) e E (%e = 2.7182818)&lt;br /&gt;y  =&lt;br /&gt;&lt;br /&gt;- 1.    1.  - 1.&lt;br /&gt;  1.  - 1.    1.&lt;br /&gt;- 1.    1.  - 1.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lembrando que cos(%pi) = -1 e cos(0) = 1 (&lt;a href="http://www.educ.fc.ul.pt/icm/icm2000/icm22/circulo_trigonometrico.htm"&gt;círculo trigonométrico&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Dando continuidade ao &lt;span style="font-style: italic;"&gt;post&lt;/span&gt;, operações com matrizes geram novas matrizes e estas novas matrizes podem ser usadas em outras operações e/ou funções.&lt;br /&gt;&lt;br /&gt;Segundo exemplo:&lt;br /&gt;&lt;br /&gt;--&gt;x = [1 2 3]&lt;br /&gt;x  =&lt;br /&gt;&lt;br /&gt;  1.    2.    3.&lt;br /&gt;&lt;br /&gt;--&gt;y = [3;&lt;br /&gt;--&gt;2;&lt;br /&gt;--&gt;1]&lt;br /&gt;y  =&lt;br /&gt;&lt;br /&gt;  3.&lt;br /&gt;  2.&lt;br /&gt;  1.&lt;br /&gt;&lt;br /&gt;--&gt;z1 = exp(x*y)&lt;br /&gt;z1  =&lt;br /&gt;&lt;br /&gt;  22026.466&lt;br /&gt;&lt;br /&gt;--&gt;z2 = exp(y*x)&lt;br /&gt;z2  =&lt;br /&gt;&lt;br /&gt;  20.085537    403.42879    8103.0839&lt;br /&gt;  7.3890561    54.59815     403.42879&lt;br /&gt;  2.7182818    7.3890561    20.085537&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A operação x*y resulta em:&lt;br /&gt;x*y = [1*3 + 2*2 + 3*1] = [3 + 4 + 3] = 10.&lt;br /&gt;&lt;br /&gt;E a operação y*x resulta em:&lt;br /&gt;y*x =&lt;br /&gt;[3*1 3*2 3*3;&lt;br /&gt;2*1 2*2 2*3;&lt;br /&gt;1*1 1*2 1*3] =&lt;br /&gt;[3 6 9;&lt;br /&gt;2 4 6;&lt;br /&gt;1 2 3].&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A função exp() retorna a exponencial natural (exp(x) = %e^x).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-7739622151683388151?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/7739622151683388151/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=7739622151683388151' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7739622151683388151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/7739622151683388151'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/02/tutorial-scilab-3-vetores-e-matrizes-2.html' title='Tutorial Scilab - 3 [Vetores e Matrizes - 2]'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5367796081404523900.post-9147140373287821083</id><published>2009-02-05T11:23:00.003-03:00</published><updated>2009-02-05T12:12:00.125-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='digital signal processing'/><category scheme='http://www.blogger.com/atom/ns#' term='neural network'/><category scheme='http://www.blogger.com/atom/ns#' term='filtering'/><category scheme='http://www.blogger.com/atom/ns#' term='digital image processing'/><category scheme='http://www.blogger.com/atom/ns#' term='computation'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Neural learning</title><content type='html'>Let's talk about neural computation.&lt;br /&gt;&lt;br /&gt;The algorithms of neural computation are based in observations of nature, specially in animal's nervous system.&lt;br /&gt;&lt;br /&gt;I did a post (&lt;a href="http://multisign.blogspot.com/2008/09/conversa-sobre-redes-neurais.html"&gt;here&lt;/a&gt; - in Portuguese) about neural networks, I wrote about concepts for who wants develop the algorithms.&lt;br /&gt;&lt;br /&gt;The neural algorithms are able to assimilate the information by itself, like us.&lt;br /&gt;&lt;br /&gt;The computers hold the information in digital memory and access the information by memory addresses, if we need an information then we send the address and get the content. In neural systems, if we need an information then we send a correlated information.&lt;br /&gt;&lt;br /&gt;Let's think. You can't enumerate your neurons and access the information one by one. But you can access the information in your brain using other information correlated to it, for example: &lt;span style="font-weight: bold; font-style: italic;"&gt;dog&lt;/span&gt;. You thought in a dog conforms to the standards you know.&lt;br /&gt;&lt;br /&gt;Other example:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_IGuBPchcQ6w/SYsAd3eXwyI/AAAAAAAAATM/3_tvIHypBpo/s1600-h/Photo_070608_004.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_IGuBPchcQ6w/SYsAd3eXwyI/AAAAAAAAATM/3_tvIHypBpo/s320/Photo_070608_004.jpg" alt="" id="BLOGGER_PHOTO_ID_5299329899639063330" border="0" /&gt;&lt;/a&gt;You look the image and you think the words garden, flowers, plants and the emotions like peace, tranquility, etc...&lt;br /&gt;&lt;br /&gt;To finish, remember that God created the perfect nature, we can contemplate the nature and seek inspiration in God's creations.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5367796081404523900-9147140373287821083?l=multisign.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://multisign.blogspot.com/feeds/9147140373287821083/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=5367796081404523900&amp;postID=9147140373287821083' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/9147140373287821083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5367796081404523900/posts/default/9147140373287821083'/><link rel='alternate' type='text/html' href='http://multisign.blogspot.com/2009/02/neural-learning.html' title='Neural learning'/><author><name>Sheep</name><uri>http://www.blogger.com/profile/14503428177777397005</uri><email>alextcarneiro@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08260548631494450699'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_IGuBPchcQ6w/SYsAd3eXwyI/AAAAAAAAATM/3_tvIHypBpo/s72-c/Photo_070608_004.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry></feed>