4 - Algoritmos


4.1.1 - Operator Unary

    La clase bicotiOperatorUnary se relaciona con una sola implementación de imagen y puede aplicarle cualquier operador de Pixel en Pixel.
Es decir, esta clase simplemente tiene una referencia a la imagen, el usuario selecciona un bicotiPixelOperatorUnary cualquiera, se lo pasa al operador y llama a la función Apply, la que recorre cada pixel de la imagen usando un iterador, aplicandole el operador a cada uno de los pixeles de la misma.

Para cada pixel de la imagen :
        nuevo_pixel = operador( pixel_actual )

Por ejemplo si queremos hallar el valor absoluto de una imagen de flotantes:

    Creamos el operador , pasándole un puntero a la imagen :

        bicotiOperatorUnary< float > oper ( ptr_ima );
 
    Creo el operador para el pixel

        bicotiPixelOperatorUnary< float > *  ptr_pix_oper ;
        ptr_pix_oper = new bicotiPixelOperatorUnaryAbsoluteValue< float >;

    Ahora aplico el operador :

        oper.Apply( ptr_pix_oper );

        Obs : Puede verse que este algoritmo no depende para nada de la dimensión de la imagen, pero si
               hay que saber el tipo de pixel para instanciar correctamente los templates.

    Para más detalles sobre la clase ver :

    bicotiOperatorUnary