{"id":1167,"date":"2021-06-29T14:50:05","date_gmt":"2021-06-29T19:50:05","guid":{"rendered":"http:\/\/virtual.cuautitlan.unam.mx\/intar\/?page_id=1167"},"modified":"2021-07-11T15:29:51","modified_gmt":"2021-07-11T20:29:51","slug":"wavelet-con-matlab","status":"publish","type":"page","link":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/?page_id=1167","title":{"rendered":"Wavelet con Matlab"},"content":{"rendered":"<h1><strong>Wavelet con Matlab<\/strong><\/h1>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"491\" height=\"392\" class=\"wp-image-1168\" src=\"http:\/\/virtual.cuautitlan.unam.mx\/intar\/wp-content\/uploads\/2021\/06\/word-image.png\" \/><\/p>\n<p>Como ya se vio en otra secci\u00f3n de esta web (<a href=\"http:\/\/virtual.cuautitlan.unam.mx\/intar\/?page_id=1108\">Aqu\u00ed<\/a>), una wavelet nos permitir\u00e1 ir seccionando una se\u00f1al en diferentes niveles de coeficientes. Matlab dentro de su<em> Wavelet toolbox<\/em>, nos presenta una manera r\u00e1pida de obtener los coeficientes en diferentes niveles de la se\u00f1al. Estos coeficientes pueden ser utilizados para caracterizar se\u00f1ales o para pre procesar informaci\u00f3n cruda.<\/p>\n<p>Para explicar el funcionamiento de Matlab, vamos a utilizar la se\u00f1al vectorizada del siguiente archivo:<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/virtual.cuautitlan.unam.mx\/intar\/wp-content\/uploads\/2021\/06\/senal1.rar\"><strong>Se\u00f1al<\/strong><\/a><\/p>\n<p>Una vez que tenemos nuestra se\u00f1al, vamos a ingresarla a una variable de Matlab por medio de<\/p>\n<pre class=\"theme:cg-cookie font-size:14 line-height:17 whitespace-before:1 whitespace-after:1 lang:matlab decode:true \">s=xlsread('senal1','A1:CU1');<\/pre>\n<p>Para verificar la se\u00f1al a descomponer, hay que graficarla<\/p>\n<pre class=\"lang:default decode:true\">plot(s)<\/pre>\n<p>Obteniendo la se\u00f1al de la figura 1.<\/p>\n<blockquote><p><a href=\"http:\/\/virtual.cuautitlan.unam.mx\/intar\/wp-content\/uploads\/2021\/06\/SeBi.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1176\" src=\"http:\/\/virtual.cuautitlan.unam.mx\/intar\/wp-content\/uploads\/2021\/06\/SeBi.jpg\" alt=\"\" width=\"503\" height=\"402\" \/><\/a><\/p><\/blockquote>\n<p>Fig1.- Se\u00f1al representativa del archivo xlsx, representativa de una se\u00f1al bioel\u00e9ctrica.<\/p>\n<p>Ahora, se le va a aplicar la Transformada Wavelet Discreta (DWT) por medio de:<\/p>\n<pre class=\"lang:default decode:true\">[C,L]=wavedec(s,3, 'sym4')<\/pre>\n<p><span style=\"font-size: 1rem;\">Que<\/span><span style=\"font-size: 1rem;\"> nos indica que vamos a aplicarle la DWT a la se\u00f1al s a un nivel de descomposici\u00f3n 3. Donde<\/span> $C$<span style=\"font-size: 1rem;\"> es un vector que contiene todos los coeficientes resultantes y <\/span>L<span style=\"font-size: 1rem;\"> es un vector de registro<\/span> (<em>bookkeeping vector<\/em>)<span style=\"font-size: 1rem;\">. Contiene las longitudes de cada conjunto de coeficientes por nivel.<\/span><\/p>\n<p>Una vez que se ha descompuesto la se\u00f1al se calculan los coeficientes de aproximaci\u00f3n por medio de<\/p>\n<pre class=\"lang:default decode:true \">Cd3=wrcoef('a',C,L,'sym4',3);<\/pre>\n<p>Y se almacenan en diferentes vectores por nivel<\/p>\n<pre class=\"lang:default decode:true \">[cd1,cd2,cd3] = detcoef(C,L,[1 2 3]);<\/pre>\n<p>Estos coeficientes los podemos ver de forma gr\u00e1fica por medio de<\/p>\n<pre class=\"lang:default decode:true \">subplot(4,1,1)\r\nplot(Cd3)\r\ntitle('Coeficientes de aproximaci\u00f3n')\r\nsubplot(4,1,2)\r\nplot(cd3)\r\ntitle('Coeficientes en el nivel 3')\r\nsubplot(4,1,3)\r\nplot(cd2)title('Coeficientes en el nivel 2')\r\nsubplot(4,1,4)\r\nplot(cd1)\r\ntitle('Coeficientes en el nivel 1')<\/pre>\n<p>De este c\u00f3digo se obtienen las siguientes gr\u00e1ficas:<\/p>\n<p><a href=\"http:\/\/virtual.cuautitlan.unam.mx\/intar\/wp-content\/uploads\/2021\/06\/Coef.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1175 size-full\" src=\"http:\/\/virtual.cuautitlan.unam.mx\/intar\/wp-content\/uploads\/2021\/06\/Coef.jpg\" alt=\"\" width=\"499\" height=\"391\" \/><\/a><\/p>\n<p>Fig. 2.-Representaci\u00f3n gr\u00e1fica de los coeficientes correspondientes a la se\u00f1al de la figura 1.<\/p>\n<p>Obviamente, los vectores num\u00e9ricos que representan a cada una de esas im\u00e1genes se almacenaron en las variables cd1, cd2 y cd3.<\/p>\n<p>Y estos vectores pueden ser utilizados como elementos de pre procesamiento para ingresar dentro de una red neuronal. Incluso se le pueden generar caracter\u00edsticas estad\u00edsticas y a partir de ellas realizar an\u00e1lisis m\u00e1s completos de una se\u00f1al. Como por ejemplo obtener el promedio de los valores y el valor m\u00e1ximo del vector:<\/p>\n<pre class=\"lang:default decode:true \">Prom=mean(Cd3)\r\nm=max(Cd3)<\/pre>\n<p>Para generar la Wavelet de la cabecera de esta p\u00e1gina, se debe de colocar el c\u00f3digo:<\/p>\n<pre class=\"lang:default decode:true \">figure\r\n[psi,xval] = wavefun('morl');\r\nplot(xval,psi,'linewidth',4)<\/pre>\n<blockquote><p>&nbsp;<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Wavelet con Matlab Como ya se vio en otra secci\u00f3n de esta web (Aqu\u00ed), una wavelet nos permitir\u00e1 ir seccionando una se\u00f1al en diferentes niveles de coeficientes. Matlab dentro de su Wavelet toolbox, nos presenta una manera r\u00e1pida de obtener los coeficientes en diferentes niveles de la se\u00f1al. Estos coeficientes pueden ser utilizados para caracterizar &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/virtual.cuautitlan.unam.mx\/intar\/?page_id=1167\" class=\"more-link\">Continuar leyendo<span class=\"screen-reader-text\"> &#8220;Wavelet con Matlab&#8221;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1167","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/index.php?rest_route=\/wp\/v2\/pages\/1167"}],"collection":[{"href":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1167"}],"version-history":[{"count":31,"href":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/index.php?rest_route=\/wp\/v2\/pages\/1167\/revisions"}],"predecessor-version":[{"id":1211,"href":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/index.php?rest_route=\/wp\/v2\/pages\/1167\/revisions\/1211"}],"wp:attachment":[{"href":"https:\/\/virtual.cuautitlan.unam.mx\/intar\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1167"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}