Menú principal

martes, 9 de febrero de 2016

Formatos / Manipulación de imagen

FORMATOS DE IMAGEN

Gif:
  • Tiene la posibilidad de ser animado y puede tener zonas transparentes.
  • Está bastante comprimido.
  • Sirve para web, no tiene mucha calidad y admite menos de 256 colores.
  • Suele ser muy usado para logotipos.


Png:
  • Tiene una tasa de compresión superior al formato GIF (+10%)
  • Admite la posibilidad de emplear un numero de colores superior a 256
  • Se puede incorporar en cualquier programa. 


Jpg:
  • No puede ser animado, ni tiene zonas transparentes.
  • Admite hasta 16 millones de colores.
  • Es el formato más común junto con gif para páginas web


Tif:
  • Tasa de compresión superior al formato GiF
  • Posibilidad de emplear un número superior de colores a 256
  • Formato muy extendido porque lo genera tanto Windows como MAC y normalmente uno de sus usos más habituales es mandarlo a imprenta.





TRATAMIENTO / MANIPULACIÓN

Uno de los programas más utilizados para el tratamiento de imágenes es el GIMP, por eso os enseñare las técnicas más elementales del este.

Eliminar un objeto una foto

Eliminar un objeto de una foto puede parecer complicado, pero con la herramienta que ofrece el Gimp para clonar se hace en tan solo dos minutos. Procedimiento: http://programeva.blogspot.com.es/2016/02/como-eliminar-un-objeto-de-una-foto-gimp.html

Eliminar el reflejo de gafas

Algunas veces ya sea por el flash de la cámara o por la luz, se hacen reflejos en las gafas. Gimp nos ofrece una serie de herramientas para eliminar este reflejo. Procedimiento: http://programeva.blogspot.com.es/2016/02/quitar-reflejo-de-las-gafas-con-gimp.html

Eliminar ojos rojos

¿Quién no ha salido alguna vez en una foto con los ojos rojos? Normalmente esto se produce al utilizar el flash en sitios oscuros. Gimp nos da una solución muy rápida para remediarlo, un filtro. Procedimiento: http://programeva.blogspot.com.es/2016/02/elimina-ojos-rojos-con-gimp.html





Elimina ojos rojos con Gimp

Hay dos técnicas para eliminar los ojos rojos de una foto con Gimp y hoy os enseñare una de ellas, para ello utilizaré esta imagen:


Esta forma es la más sencilla, simplemente es aplicar un filtro, vamos a Filtros-Realzar-Quitar ojos rojos y nos saldrá una ventana emergente en la que podremos variar el umbral de variación (normalmente es el 50), le damos a aceptar y ya estaría.



Quitar reflejo de las gafas con Gimp

Para quitar el reflejo de las gafas hay varios métodos para utilizar en Gimp como puede ser el parche o el tampón de clonar... pero hoy os enseñare otra técnica.

En primer lugar abriremos nuestra imagen en Gimp y haremos zoom para ver más grandes las gafas, yo en mi caso voy a utilizar esta imagen:

A continuación con el lazo magnético seleccionamos el ojo que no tiene el reflejo.

         
Después arrastraremos la parte seleccionada al cristal que tiene reflejo, iremos a Herramientas-Herramientas de transformación-Voltear (Mayus+F) y haremos click en la parte seleccionada. Si vemos que no ha quedado muy centrada podremos utilizar la herramienta mover para ajustar bien la selección.





Como eliminar un objeto de una foto (GIMP)

Hoy aprenderemos a eliminar un objeto de una foto fácilmente gracias a la herramienta de clonación que nos ofrece el GIMP.

En primer lugar tenemos que abrir nuestra foto en GIMP en nuestro caso será esta:


Después de esto seleccionamos la herramienta clonado que  se encuentra en la caja de herramientas.
                                   

A continuación pulsamos Ctrl y hacemos click en la zona mas cercana del objeto que queremos eliminar, en este caso el balón, soltamos Ctrl y vamos pinchando sobre el balón. El resultado es el siguiente:


viernes, 5 de febrero de 2016

Cambiar número de un vector

A continuación os enseño otro ejercicio muy básico de vectores consiste en visualizar el vector cambiando datos de este.

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int i;
    int vector[5]={0,1,2,3,4};//inicializa el vector

    //Para visualizar el contenido utilizamos un for
    for(i=0; i<5; i++)
        printf("%d, ",i);
    //La salida será: 0, 1, 2, 3, 4

    //Podemos cargar cualquier valor en cualquier posicion
    vector[3]= 17; //el cuarto elemento (ojo no es el 3º) pasa a valer 17

    //Si volvemos a imprimir el vector completo
    for(i=0; i<5; i++)
        printf("%d, ",i);
    //La salida ahora sera: 0, 1, 2, 17, 4

}

Guardar el cuadrado de números en vector

Este ejercicio consiste en calcular y almacenar el cuadrado del indice del vector. Es muy sencillo y se reduce a asignar a cada elemento del vector empleando un bucle el cuadrado del indice.

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int cuadrado[10];
    int i;

    for(i=0; i<10; i++)
    {
        cuadrado[i]= i*i;
    }

    for(i=0; i<10; i++)
    {
        printf("El cuadrado de %d es %d\n", i, cuadrado[i]);

    }

}


Recorrer un vector con puntero

Hoy os muestro un ejemplo donde podéis ver la estrecha relación que hay entre vectores y punteros. En los vectores al tener los elementos contiguos en memoria podemos acceder a cada uno de ellos solo con incrementar un puntero. El puntero se incrementara automáticamente en en tantos bytes como sea necesario: si tenemos un puntero entero y le aumentamos en una unidad se incrementa en 4 bytes para apuntar al siguiente entero, mientras que si por ejemplo tenemos un puntero double esto supondría un incremento en 8 bytes debido a que este es el tamaño del double.

A continuación os mostraré un ejercicio que consiste en visualizar el vector utilizando un puntero que se incrementa y va apuntando automáticamente al siguiente elemento del vector.

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int vector[5]={0,1,2,3,4};
    int *p;
    int i;

    p=&vector[0];//puntero apunte a la dirección del primer elemento del vector

    for(i=0; i<5; i++)
    {
        printf("%d \n\n", *p);
        p++;//El puntero se incrementa para apuntar al siguiente entero
    }
}