{"id":263,"date":"2013-05-27T20:31:38","date_gmt":"2013-05-28T01:31:38","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/ronny\/?p=263"},"modified":"2013-05-27T20:31:38","modified_gmt":"2013-05-28T01:31:38","slug":"eliminacion-de-ruido-y-realzado-de-imagenes-medicas-rayos-x-en-c-utilizando-librerias-opencv","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/ronny\/2013\/05\/27\/eliminacion-de-ruido-y-realzado-de-imagenes-medicas-rayos-x-en-c-utilizando-librerias-opencv\/","title":{"rendered":"Eliminaci\u00f3n de Ruido y Realzado de im\u00e1genes medicas (Rayos x) en C++ utilizando librer\u00edas OpenCV"},"content":{"rendered":"<p style=\"text-align: justify\">La aplicaci\u00f3n toma como entrada una imagen de una radiograf\u00eda con ruido\u00a0 y mediante una serie de procesamientos, lo que devolvemos como resultado es una radiograf\u00eda con un efecto de realzado a los huesos y sin mucho ruido\u00a0para facilitar al radi\u00f3logo y al doctor el diagn\u00f3stico de las enfermedades de sus pacientes<\/p>\n<div id=\"attachment_273\" style=\"width: 1410px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/xd.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-273\" class=\"size-full wp-image-273\" src=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/xd.jpg\" alt=\"\" width=\"1400\" height=\"808\" srcset=\"https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/xd.jpg 1400w, https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/xd-300x173.jpg 300w, https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/xd-1024x590.jpg 1024w\" sizes=\"auto, (max-width: 1400px) 100vw, 1400px\" \/><\/a><p id=\"caption-attachment-273\" class=\"wp-caption-text\">C++ con librerias OpenCV Proyecto ejecutado XD<\/p><\/div>\n<h2>Pasos de Implementaci\u00f3n:<\/h2>\n<p>&nbsp;<\/p>\n<div>\n<ul>\n<li>Cargamos nuestra imagen de Rayos X.<\/li>\n<\/ul>\n<div><a href=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/in.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-269 aligncenter\" src=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/in.png\" alt=\"Ingrese Imagen con extension\" width=\"679\" height=\"346\" srcset=\"https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/in.png 679w, https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/in-300x152.png 300w\" sizes=\"auto, (max-width: 679px) 100vw, 679px\" \/><\/a><\/div>\n<div><\/div>\n<div><\/div>\n<div><a href=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/original.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-265 aligncenter\" src=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/original.jpg\" alt=\"Imagen Original Torax\" width=\"593\" height=\"515\" srcset=\"https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/original.jpg 593w, https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/original-300x260.jpg 300w\" sizes=\"auto, (max-width: 593px) 100vw, 593px\" \/><\/a><\/div>\n<ul>\n<li>Eliminamos el ruido.(GAUSSIANO, MEDIANO,etc...)<\/li>\n<\/ul>\n<div>\n\/\/MEDIANA<br \/>\nIplImage* imagensinRuido= img;<br \/>\nIplImage *imgFiltroMediana = cvCloneImage(imagensinRuido);<br \/>\ncvSmooth( imagensinRuido, imgFiltroMediana, <strong>CV_MEDIAN, 3, 3, 0, 0<\/strong>);<br \/>\n\/\/GAUSSIANO<br \/>\nIplImage* imagensinRuidoGaussiano= img;<br \/>\nIplImage *imgFiltroGaussiano = cvCloneImage(imagensinRuidoGaussiano);<br \/>\ncvSmooth( imagensinRuidoGaussiano, imgFiltroGaussiano, <strong>CV_GAUSSIAN, 7, 7, 0, 0<\/strong>);<\/p>\n<p><a href=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/sin-ruido.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-266 aligncenter\" src=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/sin-ruido.jpg\" alt=\"\" width=\"551\" height=\"528\" srcset=\"https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/sin-ruido.jpg 551w, https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/sin-ruido-300x287.jpg 300w\" sizes=\"auto, (max-width: 551px) 100vw, 551px\" \/><\/a><\/p>\n<\/div>\n<ul>\n<li>Conversi\u00f3n de Imagen en escala de grises.<\/li>\n<\/ul>\n<div>\ncvCvtColor(imgFiltroMediana, grayImg, CV_BGR2GRAY);\/\/convierte la img de entrada a img escala de grises<\/p>\n<\/div>\n<ul>\n<li>Creamos una copia de la imagen en escala de grises<\/li>\n<li>Se aplica la funci\u00f3n FiltroHomomorfico a la copia creada.<\/li>\n<\/ul>\n<div>\n\/*************************************************************\/<\/p>\n<p>\/* <strong>Funcion FiltroHomomorfico<\/strong> *\/<\/p>\n<p>\/*************************************************************\/<br \/>\nvoid FiltroHomomorfico(CvMat* dft_Filter, int D, int n, float upper, float lower)<br \/>\n{<br \/>\nCvMat* single = cvCreateMat(dft_Filter-&gt;rows, dft_Filter-&gt;cols, CV_64FC1 );<\/p>\n<p>CvPoint centre = cvPoint(dft_Filter-&gt;rows \/ 2, dft_Filter-&gt;cols \/ 2);<br \/>\ndouble radius;<br \/>\nfor(int i = 0; i &lt; dft_Filter-&gt;rows; i++)<br \/>\n{<br \/>\nfor(int j = 0; j &lt; dft_Filter-&gt;cols; j++)<br \/>\n{<br \/>\nradius = (double) sqrt(pow((i - centre.x), 2.0) + pow((double) (j - centre.y), 2.0));<br \/>\nCV_MAT_ELEM(*single, double, i, j) =<br \/>\n((upper - lower) * ( 1 \/ (1 + pow((double) (D \/ radius), (double) (2 * n))))) + lower;<br \/>\n}<br \/>\n}<br \/>\ncvMerge(single, single, NULL, NULL, dft_Filter);<br \/>\ncvReleaseMat(&amp;single);<br \/>\n}<\/p>\n<p>&nbsp;<\/p>\n<\/div>\n<ul>\n<li>Se aplica Ecualizacion de histogramas a la imagen resultante de aplicar la funci\u00f3n FiltroHomomorfico.<\/li>\n<\/ul>\n<div>cvEqualizeHist(outputImg, outputImg);<\/div>\n<div><\/div>\n<div>\n<p>creamos una barra para ajustar los par\u00e1metros<br \/>\ncon:<br \/>\ncvCreateTrackbar<\/p>\n<\/div>\n<div>\n<div id=\"attachment_268\" style=\"width: 557px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/homo.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-268\" class=\"size-full wp-image-268 \" src=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/homo.jpg\" alt=\"\" width=\"547\" height=\"738\" srcset=\"https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/homo.jpg 547w, https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/homo-222x300.jpg 222w\" sizes=\"auto, (max-width: 547px) 100vw, 547px\" \/><\/a><p id=\"caption-attachment-268\" class=\"wp-caption-text\">Imagen Ecualizada y aplicado el filtro Homomorfico<\/p><\/div>\n<\/div>\n<div><\/div>\n<\/div>\n<p>&nbsp;<\/p>\n<div id=\"attachment_276\" style=\"width: 1376px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/pantallazo.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-276\" class=\"size-full wp-image-276\" src=\"http:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/pantallazo.jpg\" alt=\"\" width=\"1366\" height=\"768\" srcset=\"https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/pantallazo.jpg 1366w, https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/pantallazo-300x168.jpg 300w, https:\/\/blog.espol.edu.ec\/ronny\/files\/2013\/05\/pantallazo-1024x575.jpg 1024w\" sizes=\"auto, (max-width: 1366px) 100vw, 1366px\" \/><\/a><p id=\"caption-attachment-276\" class=\"wp-caption-text\">Lineas De Codigo !!XD<\/p><\/div>\n<p>&nbsp;<\/p>\n<div style=\"text-align: justify\">Dentro de las conclusiones podemos decir que es fundamental la utilizaci\u00f3n de filtros frecuenciales y espaciales( su uso computacionalmente es menos costoso) ya que ayuda a los m\u00e9dicos a una mejor visualizaci\u00f3n de las im\u00e1genes para dar un mejor diagnostico y tratar enfermedades o futuras fracturas.<\/div>\n","protected":false},"excerpt":{"rendered":"<p>La aplicaci\u00f3n toma como entrada una imagen de una radiograf\u00eda con ruido\u00a0 y mediante una serie de procesamientos, lo que devolvemos como resultado es una radiograf\u00eda con un efecto de realzado a los huesos y sin mucho ruido\u00a0para facilitar al radi\u00f3logo y al doctor el diagn\u00f3stico de las enfermedades de sus pacientes Pasos de Implementaci\u00f3n: [&hellip;]<\/p>\n","protected":false},"author":2216,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1190],"tags":[137380,137381,137377,137376,137382,137379,137383,137384,137378],"class_list":["post-263","post","type-post","status-publish","format-standard","hentry","category-1190","tag-c-utilizando-librerias-opencv","tag-dip-espol","tag-eliminacion-de-ruido","tag-eliminacion-de-ruido-y-realzado-de-imagenes-medicas-rayos-x-en-c-utilizando-librerias-opencv","tag-espol-dip","tag-librerias-opencv","tag-procesamiento-digital-de-imagenes","tag-procesamiento-digital-de-imagenes-espol","tag-realzado-de-imagenes-medicas"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/posts\/263","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/users\/2216"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/comments?post=263"}],"version-history":[{"count":8,"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/posts\/263\/revisions"}],"predecessor-version":[{"id":279,"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/posts\/263\/revisions\/279"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/media?parent=263"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/categories?post=263"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/ronny\/wp-json\/wp\/v2\/tags?post=263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}