Home | Develop | Download | Contact
PDS Digital Image Correlation

Tabla de contenidos


Autor
Fernando Pujaico Rivera
Fecha
$\mathrm{\today}$
Versión
0.1.0

1 Descargando la biblioteca

1.1 Descargando paquete *.tar.gz

La versión 0.1.0 de la biblioteca PDS Digital Image Correlation (libpdsdic) puede ser descargado en libpdsdic-0.1.0.tar.gz o usando el comando:

wget http://download.savannah.gnu.org/releases/pdsplibrary/src/libpdsdic/libpdsdic-0.1.0.tar.gz

Es necesario tener instalado wget.

1.2 Descargando el actual código fuente no versionado

El actual código fuente no oficial de PDS Digital Image Correlation puede ser descargado usando el comando:

bzr branch bzr://bzr.savannah.nongnu.org/pdsplibrary/libpdsdic

Es necesario tener instalado bazaar.

2 Compilando e instalando la biblioteca

Para compilar la biblioteca PDS Digital Image Correlation es necesario tener en cuenta el siguiente diagrama de dependencias de la biblioteca.

compilar.png
Crear/Compilar la biblioteca PDS Digital Image Correlation.

Como se puede ver, son necesarios los archivos de definiciones *.h y las bibliotecas empaquetadas en binario (*.a o *.so).

2.1 Compilando e instalando desde código

# Creando directorio de compilación
mkdir build
cd build
# Define donde se instalará la biblioteca, ejemplo: /usr/local
# Define donde está el código fuente la biblioteca, ejemplo: /path/of/source/libpdsdic
cmake -DCMAKE_INSTALL_PREFIX=/usr/local /path/of/source/libpdsdic
# Compila el codigo fuente
make
# Instala la biblioteca
sudo make install

2.2 Compilando e instalando desde *.deb

# Creando directorio de compilación
mkdir build
cd build
# Define donde está el código fuente la biblioteca, ejemplo: /path/of/source/libpdsdic
# Es obligatorio usar el el directorio de instalación en /usr
cmake -DCMAKE_INSTALL_PREFIX=/usr /path/of/source/libpdsdic
# Compilar y crea el paquete *.deb
make package
# Instala la biblioteca
sudo dpkg -i libpdsdic-0.1.0_ARCHITECTURE.deb

Donde ARCHITECTURE puede ser "i386", "amd64", etc.

3 Usando la biblioteca para compilar un programa

Una vez instalada la biblioteca PDS Digital Image Correlation, para que esta pueda ser usada por algún otro proyecto, es necesario tener en cuenta el siguiente diagrama de dependencia de la biblioteca.

enlazar.png
Usar/Enlazar dinámicamente la biblioteca PDS Digital Image Correlation.

Para usar PDS Digital Image Correlation en un proyecto (como example.c), se debe agregar la siguiente cabecera al inicio del código fuente.

#include <pds/pdsdic.h>

Esto incluirá todas las definiciones de las funciones de la biblioteca PDS Digital Image Correlation.

3.1 Código de ejemplo

#include <pds/pdsdic.h>
void auxiliar_function(PdsMatrix **M0,PdsRegionRect *R0,PdsMatrix **M1);
int main(int argc, char** argv)
{
int ID=0;
PdsMatrix *M0=NULL;
PdsMatrix *M1=NULL;
PdsRegionRect R0;
// Step 0: Creating two random matrix with the same elements in the region R0
// of M0 and other region in M1.
auxiliar_function(&M0,&R0,&M1);
// Step 1: Creating a DIC structure
if(DIC==NULL) return EXIT_FAILURE;
// Step 2: Tracking the region
PdsRegionRect Rout;
ID=pds_dic2d_tracking_region(DIC,R0,&Rout);
// Step 3: Managing the results
if(ID==PDS_DIC2D_FOUND) pds_region_rect_stylized_printf(Rout);
else printf("ERROR: In tracking.\n");
// Step 4: Releasing the memory of DIC structure and setting DIC=NULL
return 0;
}
void auxiliar_function(PdsMatrix **M0,PdsRegionRect *R0,PdsMatrix **M1)
{
// Creating the matrix M0 and the region R0
(*M0)=pds_matrix_new_rand(600,800);
(*R0)=pds_region_rect(200,250,48,64);
pds_region_rect_stylized_printf((*R0));
// Creating the matrix M1 and copying the region R0 to R1
(*M1)=pds_matrix_new_rand(600,800);
PdsRegionRect R1=pds_region_rect(210,230,48,64);
pds_matrix_copy_region_to_region((*M0),(*R0),(*M1),R1);
pds_region_rect_stylized_printf(R1);
printf("\n");
}

example.c

3.2 Compilando un ejemplo

Luego para compilar enlazando estáticamente (Statically linked) un archivo de código fuente llamado example.c, debe ser usado el siguiente comando

gcc -static -o example example.c -lpdsdic -lpdsra -lm

Por otro lado si se desea compilar enlazando dinamicamente (Dynamically linked) un archivo de código fuente llamado example.c, debe ser usado el siguiente comando

gcc -o example example.c -lpdsdic -lpdsra

3.3 Compilando un ejemplo : usando pkg-config

Adicionalmente es posible usar pkg-config para obtener los datos de configuración del proceso de compilación.

Atención
Es necesario tener instalado pkg-config
#Statically linked.
gcc -static -o example example.c `pkg-config --static --libs --cflags libpdsdic`


#Dynamically linked.
gcc -o example example.c `pkg-config --libs --cflags libpdsdic`

4 Versión

Es posible conocer la version instalada de la biblioteca libpdsdic usando el siguiente comando

pkg-config --modversion libpdsdic

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed