{"id":1711,"date":"2021-05-11T12:00:00","date_gmt":"2021-05-11T18:00:00","guid":{"rendered":"https:\/\/tecsify.com\/blog\/?p=1711"},"modified":"2021-05-12T10:32:33","modified_gmt":"2021-05-12T16:32:33","slug":"guia-imagenes-python","status":"publish","type":"post","link":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/","title":{"rendered":"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python &#038; Pillow"},"content":{"rendered":"\n<p>A medida que la tecnolog\u00eda avanza, cada d\u00eda nos encontramos con miles de terabytes nuevos de informaci\u00f3n generada por la humanidad en su red m\u00e1s grande construida (internet), mucha de esta informaci\u00f3n viene en forma de imagenes, por lo que, hoy en d\u00eda es casi indispensable entender su funcionamiento y como podemos agregar valor a la informaci\u00f3n dentro de ellas.<\/p>\n\n\n\n<p>En est\u00e1 gu\u00eda t\u00e9cnica b\u00e1sica te ense\u00f1aremos como utilizar el filtrado de imagenes con &#8216;<strong>Pillow<\/strong>&#8216;, la biblioteca de im\u00e1genes de Python m\u00e1s adecuada para aplicaciones de procesamiento por lotes y archivos de im\u00e1genes, este paquete se puede utilizar para crear miniaturas, convertir de un formato a otro e imprimir im\u00e1genes, etc. \u00a1Es incre\u00edble! m\u00e1s adelante crearemos m\u00e1s gu\u00edas con diferentes ejemplos de las features de esta maravillosa biblioteca.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/1\/18\/Pillow.library.png\" alt=\"Pillow (biblioteca de c\u00f3digo abierto) - Wikipedia, la enciclopedia libre\" width=\"681\" height=\"340\"\/><figcaption>Pillow es una biblioteca de Python que agrega soporte para abrir, manipular y guardar muchos formatos de archivo de imagen diferentes, es gratuita y de c\u00f3digo abierto<\/figcaption><\/figure><\/div>\n\n\n\n<p>Antes de empezar con el <strong>c\u00f3digo <\/strong>(que ya sabemos que es por lo que vienes) veamos uno concepto b\u00e1sico que mejorar\u00e1 tu entendimiento sobre la tem\u00e1tica.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfQu\u00e9 es el Procesamiento digital de im\u00e1genes?<\/h2>\n\n\n\n<p>Podemos definir de manera resumida El <strong>procesamiento de im\u00e1genes digitales<\/strong> como el conjunto de t\u00e9cnicas que se aplican a las im\u00e1genes digitales con el objetivo de mejorar la calidad o facilitar la b\u00fasqueda de informaci\u00f3n.<\/p>\n\n\n\n<p>El procesamiento de im\u00e1genes tiene m\u00faltiples aplicaciones en distintos procesos tanto cient\u00edficos como industriales o de operaciones, se usa en la medicina, inteligencia artificial, sector industrial, entre otros.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/imagen.png\" alt=\"\" class=\"wp-image-1720\" width=\"610\" height=\"419\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/imagen.png 534w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/imagen-300x206.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/imagen-450x309.png 450w\" sizes=\"(max-width: 610px) 100vw, 610px\" \/><figcaption>Procesamiento de imagenes aplicado a la radiograf\u00eda de una rodilla <\/figcaption><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfQu\u00e9 es Pillow?<\/h2>\n\n\n\n<p>Pillow es una biblioteca adicional gratuita y de c\u00f3digo abierto para Python que agrega soporte para abrir, manipular y guardar muchos formatos de archivo de imagen diferentes, est\u00e1 construido sobre PIL (Biblioteca de im\u00e1genes de Python), Esta librer\u00eda es esencial para el procesamiento de im\u00e1genes con Python, admite la variabilidad de im\u00e1genes como jpeg, png, bmp, gif, ppm y tiff y Est\u00e1 disponible para Windows, Mac OS X y Linux.<\/p>\n\n\n\n<p>\u00a1Ahora s\u00ed! vamos con la gu\u00eda de <strong>Python &amp; Pillow<\/strong>!<\/p>\n\n\n\n<p><strong>Tamb\u00eden puede interesarte: <a href=\"https:\/\/tecsify.com\/blog\/lighthouse\/\">Google Lighthouse: La herramienta definitiva para An\u00e1lisis Web<\/a><\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Instalaci\u00f3n de Pillow:<\/h3>\n\n\n\n<p>Antes de comenzar a trabajar con Python, necesitamos instalar la biblioteca de Pillow en nuestra computadora, podemos hacerlo escribiendo el siguiente comando en la terminal.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>pip install pillow  <\/code><\/pre>\n\n\n\n<p>La imag\u00e9n original que utilizaremos para todos los ejemplos ser\u00e1 de cuando nos reunimos con el creador de Facebook, Marck Zuckerberg, cabe destacar que por muy real que parezca la foto, es un montaje, es decir, no es una foto real.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"585\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/Tecsify-1024x585.png\" alt=\"\" class=\"wp-image-1723\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/Tecsify-1024x585.png 1024w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/Tecsify-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/Tecsify-768x439.png 768w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/Tecsify-450x257.png 450w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/Tecsify-780x445.png 780w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/Tecsify.png 1310w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>Imagen original que utilizaremos para cada uno de los ejemplos<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Abriendo, Rotando y Mostrando una imagen:<\/h3>\n\n\n\n<p>Para nuestro primer ejemplo, veremos como <strong>abrir, rotar y mostrar<\/strong> una imagen, pon mucha atenci\u00f3n a la parte de abrir y mostrar, pues te ser\u00e1 \u00fatil en los pr\u00f3ximos ejemplos.<\/p>\n\n\n\n<p><strong>Nota Importante:<\/strong> Te recomendamos utilizar una imagen formato <strong>.jpg <\/strong>para los ejemplos, debido a que es la im\u00e1gen con m\u00e1s compatibilidad y otros formatos pueden presentar error por esta misma raz\u00f3n.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from PIL import Image #Importamos el modulo\nimg = Image.open(r'Directorio\\Tecs.jpg') #Abrimos la imagen\nnuevaimg = img.rotate(25) #Rotamos\nnuevaimg.show() #Mostramos<\/code><\/pre>\n\n\n\n<p>En este ejemplo utilizaremos el m\u00e9todo <strong>.rotate(25) <\/strong>que rotar\u00e1 la imagen en 25 grados, el grado de rotaci\u00f3n puede cambiarse por el deseado. El resultado es el siguiente:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale.png\" alt=\"\" class=\"wp-image-1725\" width=\"497\" height=\"284\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale.png 655w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-450x257.png 450w\" sizes=\"(max-width: 497px) 100vw, 497px\" \/><figcaption>Imagen original rotada 25 grados<\/figcaption><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Cambiando secuencia de colores (RGB)<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>from PIL import Image\nimg = Image.open(r'Directorio\\Tecsify.jpg')\nr,g,b = img.split() #Obtenemos los canales RGB de la imagen\nnuevaimg = Image.merge(\"RGB\", (b, r, g)) #Cambiamos el orden de los canales\nnuevaimg.show()<\/code><\/pre>\n\n\n\n<p>Aqu\u00ed cambiamos el orden del R G B (Red, Green, Blue), el resultado es el siguiente:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-1.png\" alt=\"\" class=\"wp-image-1729\" width=\"562\" height=\"321\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-1.png 655w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-1-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-1-450x257.png 450w\" sizes=\"(max-width: 562px) 100vw, 562px\" \/><figcaption>Cambiando el R G B de la imagen original<\/figcaption><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Trabajando con Filtros<\/h3>\n\n\n\n<p>El m\u00e9todo Image.filter() utilizar\u00e1 las t\u00e9cnicas de filtrado aplicado a las im\u00e1genes; veamos algunos ejemplos.<\/p>\n\n\n\n<p><strong>Nota Importante: <\/strong>Ahora debemos importar tambien el paquete <strong>ImageFilter <\/strong>de la librear\u00eda PIL.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from PIL import Image,ImageFilter #Ahora importamos 'ImageFilter\" para los filtros\nimg = Image.open(r'Directorio\\Tecsify.jpg')\nnuevaimg = img.filter(ImageFilter.BLUR) #Filtro de Blur\nnuevaimg.show()<\/code><\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-2.png\" alt=\"\" class=\"wp-image-1731\" width=\"559\" height=\"319\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-2.png 655w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-2-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-2-450x257.png 450w\" sizes=\"(max-width: 559px) 100vw, 559px\" \/><figcaption><code><code>img.filter(ImageFilter.<code>BLUR<\/code>)<\/code><\/code><\/figcaption><\/figure><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>from PIL import Image,ImageFilter\nimg = Image.open(r'Directorio\\Tecsify.jpg')\nnuevaimg = img.filter(ImageFilter.BoxBlur(50))  #Filtro de BoxBlur(50)\nnuevaimg.show()<\/code><\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-3.png\" alt=\"\" class=\"wp-image-1732\" width=\"612\" height=\"349\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-3.png 655w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-3-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-3-450x257.png 450w\" sizes=\"(max-width: 612px) 100vw, 612px\" \/><figcaption><code><code>img.filter(ImageFilter.BoxBlur(50))<\/code><\/code><\/figcaption><\/figure><\/div>\n\n\n\n<pre id=\"block-eb81c228-7acc-417b-a449-9ef4550dc1e9\" class=\"wp-block-code\"><code>from PIL import Image,ImageFilter\nimg = Image.open(r'Directorio\\Tecsify.jpg')\nnuevaimg = img.filter(ImageFilter.CONTOUR)  #Filtro de CONTOUR\nnuevaimg.show()<\/code><\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-4.png\" alt=\"\" class=\"wp-image-1733\" width=\"603\" height=\"344\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-4.png 655w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-4-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-4-450x257.png 450w\" sizes=\"(max-width: 603px) 100vw, 603px\" \/><figcaption><code>img.filter(ImageFilter.CONTOUR)<\/code><\/figcaption><\/figure><\/div>\n\n\n\n<pre id=\"block-652279ca-58df-48e2-aa3a-051d6a504803\" class=\"wp-block-code\"><code>from PIL import Image,ImageFilter\nimg = Image.open(r'Directorio\\Tecsify.jpg')\nnuevaimg = img.filter(ImageFilter.EDGE_ENHANCE)  #Filtro de EDGE_ENHANCE\nnuevaimg.show()<\/code><\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-6.png\" alt=\"\" class=\"wp-image-1735\" width=\"623\" height=\"356\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-6.png 655w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-6-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-6-450x257.png 450w\" sizes=\"(max-width: 623px) 100vw, 623px\" \/><figcaption><code>img.filter(ImageFilter.EDGE_ENHANCE)<\/code><\/figcaption><\/figure><\/div>\n\n\n\n<pre id=\"block-652279ca-58df-48e2-aa3a-051d6a504803\" class=\"wp-block-code\"><code>from PIL import Image,ImageFilter\nimg = Image.open(r'Directorio\\Tecsify.jpg')\nnuevaimg = img.filter(ImageFilter.EMBOSS)  #Filtro de EMBOSS\nnuevaimg.show()<\/code><\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-7.png\" alt=\"\" class=\"wp-image-1736\" width=\"618\" height=\"353\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-7.png 655w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-7-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-7-450x257.png 450w\" sizes=\"(max-width: 618px) 100vw, 618px\" \/><figcaption><code>img.filter(ImageFilter.EMBOSS)<\/code><\/figcaption><\/figure><\/div>\n\n\n\n<pre id=\"block-c1852ce8-e7da-4930-b34f-0056468f8cc9\" class=\"wp-block-code\"><code>from PIL import Image,ImageFilter\nimg = Image.open(r'Directorio\\Tecsify.jpg')\nnuevaimg = img.filter(ImageFilter.FIND_EDGES)  #Filtro de FIND_EDGES\nnuevaimg.show()<\/code><\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-8.png\" alt=\"\" class=\"wp-image-1737\" width=\"639\" height=\"365\" srcset=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-8.png 655w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-8-300x171.png 300w, https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/greyscale-8-450x257.png 450w\" sizes=\"(max-width: 639px) 100vw, 639px\" \/><figcaption><code>img.filter(ImageFilter.FIND_EDGES)<\/code><\/figcaption><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Guardar los resultados en una nueva imagen:<\/h2>\n\n\n\n<p>Si te gustaron los resultados obtenidos en la imagen editada, puedes guardarla en un directorio y con un formato especifico con el m\u00e9todo <strong>.save()<\/strong>, en este caso guardaremos el ultimo ejemplo donde utilizamos el filtro <strong>FIND_EDGES<\/strong>, por lo que nuestro c\u00f3digo final quedar\u00eda as\u00ed:<\/p>\n\n\n\n<pre id=\"block-db5b25c8-4fc6-433c-9ff2-08666d8bce8f\" class=\"wp-block-code\"><code>from PIL import Image,ImageFilter\nimg = Image.open(r'Directorio\\Tecsify.jpg')\nnuevaimg = img.filter(ImageFilter.FIND_EDGES)  #Filtro de FIND_EDGES\nnuevaimg.save(r'Directorio\\NuevaImagen.jpg') #Guardado en un directorio especifico<\/code><\/pre>\n\n\n\n<p>Si quieres saber m\u00e1s acerca de la librer\u00eda Pillow puedes ver la documentaci\u00f3n de la librer\u00eda en el siguiente enlace: <a href=\"https:\/\/pillow.readthedocs.io\/en\/stable\/\" target=\"_blank\" rel=\"noreferrer noopener\">Documentaci\u00f3n oficial de la librer\u00eda de pillow<\/a><\/p>\n\n\n\n<p>Tambi\u00e9n, si te gusta este tipode contenido relacionado con c\u00f3digos de programaci\u00f3n te invitamos a echarle un vistzo a nuestra secci\u00f3n &#8220;C\u00f3digos Interactivos&#8221; para que te diviertas y aprendas de la mano de mini proyectos innteresantes: <a href=\"https:\/\/tecsify.com\/blog\/codigos\/\">Visitar secci\u00f3n de C\u00f3digos Interactivos<\/a><\/p>\n\n\n\n<p>\u00bfQue te pareci\u00f3 nuestra gu\u00eda b\u00e1sica de filtrado de imagenes? \u00bfLe agregar\u00edas algo? \u00a1Cu\u00e9ntanos en los comentarios!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>El procesamiento de im\u00e1genes es un m\u00e9todo para analizar y manipular im\u00e1genes con el objetivo de extraer informaci\u00f3n \u00fatil de las mismas.<\/p>\n","protected":false},"author":2,"featured_media":1712,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[86,3,85,2],"tags":[89,64,88,87,8,77],"class_list":{"0":"post-1711","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-guias-y-tutoriales","8":"category-programacion","9":"category-python","10":"category-tech","11":"tag-guia","12":"tag-imagenes","13":"tag-pillow","14":"tag-procesamiento","15":"tag-programacion","16":"tag-python"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python &amp; Pillow | Tecsify Blog<\/title>\n<meta name=\"description\" content=\"Aprende como realizar un procesamiento de im\u00e1genes digitales mediante la biblioteca &quot;Pillow&quot; de Python con Tecsify\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python &amp; Pillow | Tecsify Blog\" \/>\n<meta property=\"og:description\" content=\"Aprende como realizar un procesamiento de im\u00e1genes digitales mediante la biblioteca &quot;Pillow&quot; de Python con Tecsify\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Tecsify Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Tecsify\" \/>\n<meta property=\"article:published_time\" content=\"2021-05-11T18:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-05-12T16:32:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/pillow.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"773\" \/>\n\t<meta property=\"og:image:height\" content=\"522\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Oscar Morales Cuellar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ozk404\" \/>\n<meta name=\"twitter:site\" content=\"@tecsify\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Oscar Morales Cuellar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/\"},\"author\":{\"name\":\"Oscar Morales Cuellar\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#\\\/schema\\\/person\\\/cba7ef409f8a0add564d28611b4b3b5a\"},\"headline\":\"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python &#038; Pillow\",\"datePublished\":\"2021-05-11T18:00:00+00:00\",\"dateModified\":\"2021-05-12T16:32:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/\"},\"wordCount\":817,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/pillow.jpg\",\"keywords\":[\"Guia\",\"Imagenes\",\"Pillow\",\"Procesamiento\",\"Programacion\",\"Python\"],\"articleSection\":[\"Gu\u00edas y Tutoriales\",\"Programaci\u00f3n y Desarrollo de Software\",\"Python\",\"Tecnolog\u00eda e innovaci\u00f3n\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/\",\"name\":\"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python & Pillow | Tecsify Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/pillow.jpg\",\"datePublished\":\"2021-05-11T18:00:00+00:00\",\"dateModified\":\"2021-05-12T16:32:33+00:00\",\"description\":\"Aprende como realizar un procesamiento de im\u00e1genes digitales mediante la biblioteca \\\"Pillow\\\" de Python con Tecsify\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/#primaryimage\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/pillow.jpg\",\"contentUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/pillow.jpg\",\"width\":773,\"height\":522,\"caption\":\"Procesamiento de Imagenes\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/guia-imagenes-python\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python &#038; Pillow\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/\",\"name\":\"Tecsify Blog\",\"description\":\"Tecnolog\u00eda, IA y Desarrollo de Software\",\"publisher\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#organization\"},\"alternateName\":\"Tecsify Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#organization\",\"name\":\"Tecsify\",\"alternateName\":\"Tecsify Blog\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/bluenew.png\",\"contentUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/bluenew.png\",\"width\":830,\"height\":443,\"caption\":\"Tecsify\"},\"image\":{\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Tecsify\",\"https:\\\/\\\/x.com\\\/tecsify\",\"https:\\\/\\\/www.instagram.com\\\/tecsify\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCalG-fWPHHWG-XTzhcCn0_A\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/tecsify\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/#\\\/schema\\\/person\\\/cba7ef409f8a0add564d28611b4b3b5a\",\"name\":\"Oscar Morales Cuellar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/20240819_203406-1-96x96.jpg\",\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/20240819_203406-1-96x96.jpg\",\"contentUrl\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/20240819_203406-1-96x96.jpg\",\"caption\":\"Oscar Morales Cuellar\"},\"description\":\"Oscar Morales Cuellar es un ingeniero en software, estratega tecnol\u00f3gico y emprendedor social, conocido principalmente por ser el fundador y CEO de Tecsify Latinoam\u00e9rica. Su trabajo ha sido reconocido internacional, incluyendo el World Summit Award (WSA) respaldado por la ONU, ITU, Huawei, su inclusi\u00f3n en la lista \\\"30 Under 30\\\" de Forbes, Personaje del a\u00f1o 2025 en innovaci\u00f3n y diversos galardones m\u00e1s.\",\"sameAs\":[\"https:\\\/\\\/oscarmoralesgt.com\",\"https:\\\/\\\/instagram.com\\\/ozk404\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/ozk404\\\/\",\"https:\\\/\\\/x.com\\\/ozk404\"],\"url\":\"https:\\\/\\\/tecsify.com\\\/blog\\\/author\\\/ozk404\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python & Pillow | Tecsify Blog","description":"Aprende como realizar un procesamiento de im\u00e1genes digitales mediante la biblioteca \"Pillow\" de Python con Tecsify","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/","og_locale":"es_ES","og_type":"article","og_title":"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python & Pillow | Tecsify Blog","og_description":"Aprende como realizar un procesamiento de im\u00e1genes digitales mediante la biblioteca \"Pillow\" de Python con Tecsify","og_url":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/","og_site_name":"Tecsify Blog","article_publisher":"https:\/\/www.facebook.com\/Tecsify","article_published_time":"2021-05-11T18:00:00+00:00","article_modified_time":"2021-05-12T16:32:33+00:00","og_image":[{"width":773,"height":522,"url":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/pillow.jpg","type":"image\/jpeg"}],"author":"Oscar Morales Cuellar","twitter_card":"summary_large_image","twitter_creator":"@ozk404","twitter_site":"@tecsify","twitter_misc":{"Written by":"Oscar Morales Cuellar","Est. reading time":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/#article","isPartOf":{"@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/"},"author":{"name":"Oscar Morales Cuellar","@id":"https:\/\/tecsify.com\/blog\/#\/schema\/person\/cba7ef409f8a0add564d28611b4b3b5a"},"headline":"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python &#038; Pillow","datePublished":"2021-05-11T18:00:00+00:00","dateModified":"2021-05-12T16:32:33+00:00","mainEntityOfPage":{"@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/"},"wordCount":817,"commentCount":0,"publisher":{"@id":"https:\/\/tecsify.com\/blog\/#organization"},"image":{"@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/#primaryimage"},"thumbnailUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/pillow.jpg","keywords":["Guia","Imagenes","Pillow","Procesamiento","Programacion","Python"],"articleSection":["Gu\u00edas y Tutoriales","Programaci\u00f3n y Desarrollo de Software","Python","Tecnolog\u00eda e innovaci\u00f3n"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/tecsify.com\/blog\/guia-imagenes-python\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/","url":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/","name":"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python & Pillow | Tecsify Blog","isPartOf":{"@id":"https:\/\/tecsify.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/#primaryimage"},"image":{"@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/#primaryimage"},"thumbnailUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/pillow.jpg","datePublished":"2021-05-11T18:00:00+00:00","dateModified":"2021-05-12T16:32:33+00:00","description":"Aprende como realizar un procesamiento de im\u00e1genes digitales mediante la biblioteca \"Pillow\" de Python con Tecsify","breadcrumb":{"@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tecsify.com\/blog\/guia-imagenes-python\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/#primaryimage","url":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/pillow.jpg","contentUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/pillow.jpg","width":773,"height":522,"caption":"Procesamiento de Imagenes"},{"@type":"BreadcrumbList","@id":"https:\/\/tecsify.com\/blog\/guia-imagenes-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Inicio","item":"https:\/\/tecsify.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Gu\u00eda b\u00e1sica de Procesamiento de im\u00e1genes con Python &#038; Pillow"}]},{"@type":"WebSite","@id":"https:\/\/tecsify.com\/blog\/#website","url":"https:\/\/tecsify.com\/blog\/","name":"Tecsify Blog","description":"Tecnolog\u00eda, IA y Desarrollo de Software","publisher":{"@id":"https:\/\/tecsify.com\/blog\/#organization"},"alternateName":"Tecsify Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/tecsify.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/tecsify.com\/blog\/#organization","name":"Tecsify","alternateName":"Tecsify Blog","url":"https:\/\/tecsify.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/tecsify.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/bluenew.png","contentUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2021\/05\/bluenew.png","width":830,"height":443,"caption":"Tecsify"},"image":{"@id":"https:\/\/tecsify.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Tecsify","https:\/\/x.com\/tecsify","https:\/\/www.instagram.com\/tecsify","https:\/\/www.youtube.com\/channel\/UCalG-fWPHHWG-XTzhcCn0_A\/","https:\/\/www.linkedin.com\/company\/tecsify\/"]},{"@type":"Person","@id":"https:\/\/tecsify.com\/blog\/#\/schema\/person\/cba7ef409f8a0add564d28611b4b3b5a","name":"Oscar Morales Cuellar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/09\/20240819_203406-1-96x96.jpg","url":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/09\/20240819_203406-1-96x96.jpg","contentUrl":"https:\/\/tecsify.com\/blog\/wp-content\/uploads\/2024\/09\/20240819_203406-1-96x96.jpg","caption":"Oscar Morales Cuellar"},"description":"Oscar Morales Cuellar es un ingeniero en software, estratega tecnol\u00f3gico y emprendedor social, conocido principalmente por ser el fundador y CEO de Tecsify Latinoam\u00e9rica. Su trabajo ha sido reconocido internacional, incluyendo el World Summit Award (WSA) respaldado por la ONU, ITU, Huawei, su inclusi\u00f3n en la lista \"30 Under 30\" de Forbes, Personaje del a\u00f1o 2025 en innovaci\u00f3n y diversos galardones m\u00e1s.","sameAs":["https:\/\/oscarmoralesgt.com","https:\/\/instagram.com\/ozk404","https:\/\/www.linkedin.com\/in\/ozk404\/","https:\/\/x.com\/ozk404"],"url":"https:\/\/tecsify.com\/blog\/author\/ozk404\/"}]}},"_links":{"self":[{"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/posts\/1711","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/comments?post=1711"}],"version-history":[{"count":13,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/posts\/1711\/revisions"}],"predecessor-version":[{"id":1752,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/posts\/1711\/revisions\/1752"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/media\/1712"}],"wp:attachment":[{"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/media?parent=1711"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/categories?post=1711"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tecsify.com\/blog\/wp-json\/wp\/v2\/tags?post=1711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}