Programa para el testeo de las funciones.Para compilar o código example_array_hog2.cpp:
g++ -static -o example_array_hog2 example_array_hog2.cpp -lpdsramm
Para executar o programa:
Retornando por consola:
Block.size(): 3
Este es la imagen de entrada.
Este es la imagen de entrada en escala de grises.
Este es la imagen Mag.
Este es la imagen Ang.
Código example_array_hog2.cpp:
#include <cmath>
#include <Pds/Ra>
#include <Pds/Sp>
int main(void)
{
std::vector<Pds::Array<unsigned char>> Block;
Pds::Array<unsigned char> Gray;
Pds::Matrix Mag;
Pds::Matrix Ang;
Block=Pds::Array<unsigned char>::ImportBmpFile("../manual/imagenes/pattern2.bmp");
std::cout<<"Block.size(): "<<Block.size()<<std::endl;
Gray=Pds::Array<unsigned char>::MeanBlock(Block);
Gray.ExportBmpFile(Pds::Colormap::Gray,"pattern_hog2_gray.bmp");
Mag.Scale(0,255).ExportBmpFile(Pds::Colormap::Gray,"pattern_hog2_magnitude.bmp");
Ang.Scale(0,255).ExportBmpFile(Pds::Colormap::Gray,"pattern_hog2_angle.bmp");
return 0;
}
bool Gradient(const Pds::Array< unsigned char > &Gray, Pds::Matrix &Mag, Pds::Matrix &Angle)
Cálculo del gradiente.