Inicio | Software y utilidades | Meshlab 1.3.3 (sobre Ubuntu)

Meshlab 1.3.3 (sobre Ubuntu)

Miércoles, 09 de Abril de 2014 14:04

meshlab 1.3.3Después de más de un año de espera, y la desidia de muchos usuarios hacia esta fabulosa herramienta, debido a los numerosos bugs que experimentaba, ya tenemos nueva versión (1.3.3), con algunas mejoras, pero sobretodo con una buena cantidad de bugs solucionados.

Entre las mejoras, podemos encontrarnos con soporte nativo para proyectos procedentes de VisualSfM .nvm, junto con los habituales Bundler (.out) que ya se podían cargar en la versión anterior. En la actualidad parece que ya podemos trabajar con cierta estabilidad con proyectos con el fin de regenerar texturas a partir de los raster de nuestro proyecto.

Aunque en la versión 1.3.2 este proceso de carga de proyectos Bundler funcionaba correctamente en entornos Microsoft, fallando en Unix (Apple y Linux) parece que ahora esta funcionando en Mac OsX pero el problema persiste en entornos Linux, o al menos Ubuntu, que es donde lo he probado por ahora.

En las primeras pruebas, sobre Mac OsX parece que se han solucionado graves problemas de estabilidad al realizar ciertas operaciones (edición de nubes de puntos, cargas de textura, generación de texturas, etc), y parece que al menos en mi entorno, ya seria una herramienta perfectamente operativa.

La instalación de Meshlab 1.3.3 en entornos Windows y Apple no supone un gran problema sin embargo en Linux tenemos que compilar.

Instalación de Meshlab 1.3.3 en Ubuntu:

meshlab_133Una interesante mejora de la distribución del código de Meshlab es que ya se han aportado todas o casi todas las dependencias en dicha distribución, por lo que nos ahorramos bastante tipo y quebraderos de cabeza.

Decir que Meshlab esta desarrollado sobre el framework QT y que además de necesitar de sus librerías para la compilación, podemos compilar tanto por nuestra terminal como a través de la herramienta QTCreator que veremos después.

En la distro de Meshlab nos vamos a encontrar en un primer momento con los archivos de la librería gráfica VCGLIB y el propio código fuente de Meshlab, dentro del habitual src nos vamos a encontrar dependencias y código fuente:

En el directorio external están todas las dependencias que Meshlab buscará durante la compilación, por tanto este directorio es el que primero hay que compilar, para ello nos movemos a dentro de external y hacemos un qmake:

  qmake -recursive external.pro
  make

Esto ya nos deja compilados todas nuestras dependencias, y podemos subir un nivel y compilar Meshlab. Para ello tenemos dos opciones la mini y la full, donde la mini no compilará ciertos filtros, por lo que Meshlab no nos servirá de mucho y mejor optar directamente por la full.

Simplemente con un:

  qmake meshlab_mini.pro
  make

o un:

  qmake meshlab_full.pro
  make

Una vez finalizado el proceso ya podemos ejecutar Meshlab en el directorio "distrib".

Si durante la compilación de meshlab_full nos encontramos con un error relativo a que
mpirxx.h no se encuentra. Debemos descargar mpir-2.6.0 (http://www.mpir.org/) y a continuación de dentro de su código fuente tomar los archivos mpir.h y mpirxx.h y guardarlos en el directorio:

meshlab/src/meshlabplugins/filter_csg

Luego hacemos un “make clean” y repetimos la compilación.

qt_creatorSi quieres usar QTCreator para compilar Meshlab usando un entorno completamente gráfico. Debes seguir unos pasos parecidos: primero compilar el directorio external y luego Meshlab. Si es necesario reconfigurar las rutas del proyecto ya que sino no se van a localizar las dependencias desde la ruta por defecto de QTCreator.

Para ello una vez cargado el proyecto localizando el .pro a través del QTCreator, en el icono de Projects, lo que seria Build Setings, ya sea para Release y Debug hacemos apuntar el Build Directory al directorio SRC para el caso de la compilación de Meshlab o a SRC/EXTERNAL para el caso de las dependencias. Finalmente podemos hacer un Build del proyecto.

Para instalar Meshlab simplemente guardamos el directorio “distrib” en algún lugar seguro, por ejemplo:

cp -R src/distrib/ /opt/meshlab

Y luego también podemos crear un lanzador para evitar tener que recurrir a este directorio cada vez que necesitemos ejecutar Mehslab.

Si ya tenemos la versión 1.3.2 instalada en nuestro sistema simplemente podemos editar el lanzador ubicado en:

vim /usr/share/applications/meshlab.desktop

Donde en el ejecutable “Exec” indicaremos la ruta al binario de Meshlab:

  [Desktop Entry]
  Version=1.0
  Name=MeshLab
  Name[en_GB]=MeshLab
  GenericName=Mesh processing
  GenericName[en_GB]=Mesh processing
  Comment=View and process meshes
  Type=Application
  Exec=meshlab %U
  Icon=/usr/share/pixmaps/meshlab_32x32.xpm
  Terminal=false
  MimeType=model/mesh;application/x-3ds;image/x-3ds;application/sla;
  Categories=Graphics;3DGraphics;Viewer;Qt;
  

Si no tenemos Meshlab instalado en nuestro sistema, simplemente creamos un documento vacío en dicha ruta con el nombre meshlab.desktop y copiamos los datos, teniendo en cuenta en trazar la ruta a un icono legible “Icon”

x-rite Professional LED Lighting, DSLR Support and Accessories for Photo and Video BabelColor asociacion española de imagen cientifica y forense