cvBlob
Acabo de crear un proyecto en Google Code para alojar una librería que programé para mi PFC.
La dirección es http://code.google.com/p/cvblob/.
Se trata de una librería de etiquetado de partes conexas en imágenes binarias (blobs) y extracción de características.
Programé esta librería como alternativa a la cvBlobsLib que no parecía funcionar muy bien. En concreto no conseguía obtener la orientación de los blobs.
Otras ventajas es que el interfaz de mi librería sigue el estilo de la OpenCV.
Cosas que no están todavía pulidas: no se tienen en cuenta los bordes de la imagen binaria para el etiquetado (aunque no es muy difícil hacerlo). Se podría optimizar el algoritmo de etiquetado. Estaría bien pasar el código a C puro para poder proponerlo como parte de OpenCV.
Hace más de un año que no toco el código. Lo hago público porque en su día me lo prometí. Espero que a alguien le sea útil ;)
La dirección es http://code.google.com/p/cvblob/.
Se trata de una librería de etiquetado de partes conexas en imágenes binarias (blobs) y extracción de características.
Programé esta librería como alternativa a la cvBlobsLib que no parecía funcionar muy bien. En concreto no conseguía obtener la orientación de los blobs.
Otras ventajas es que el interfaz de mi librería sigue el estilo de la OpenCV.
Cosas que no están todavía pulidas: no se tienen en cuenta los bordes de la imagen binaria para el etiquetado (aunque no es muy difícil hacerlo). Se podría optimizar el algoritmo de etiquetado. Estaría bien pasar el código a C puro para poder proponerlo como parte de OpenCV.
Hace más de un año que no toco el código. Lo hago público porque en su día me lo prometí. Espero que a alguien le sea útil ;)
Etiquetas: programación, software, softwarelibre


13 comentarios:
Hola me gustaria saber como se instala correctamente la lib cvblob en linux ya que estoy teniendo muchos problemas para su instalacion, al hacer el cmake me da errores en directivas de compilacion tales como __BEGIN__ o __END__ si fueras tan amable de hecharme un cable
Buenas,
Ese problema está solucionado en la versión del repositorio. Te la puedes descargar desde Linux con el comando:
svn checkout http://cvblob.googlecode.com/svn/trunk/ cvblob
El problema solo ocurre cuando compilas con las últimas versiones de OpenCV (porque han cambiado algunas cosas).
Si sigues teniendo problemas avísame. Mi correo es grendel.ccl@gmail.com
Saludos!
Hola, estoy intentando incluir tu libreria (cvBlob.h) en mi proyecto hecho en visual studio 2008, he conseguido compilar con el cmake para generar el *.lib, pero me da errores de compilacion en mi proyecto:
error C2011: 'CvBlob' : nueva definición del tipo 'struct'
error C2027: uso del tipo 'CvBlob' sin definir
error C2227: el operando izquierdo de '->centroid' debe señalar al tipo class/struct/union/generic
1>c:\documents and settings\longyu\mis documentos\bgfg\bgfg\cvblob.h(166) : error C2027: uso del tipo 'CvBlob' sin definir
y asi, etc...
sabrías el porque? podrias ayudarme a solucionarlo? gracias
Hola long,
Tiene toda la pinta de que es por el tema del "namespace" que he metido en la última versión de la librería. Prueba poniendo esta linea en el código:
using namespace cvb;
Dime que tal ;)
he estado tratando de generar el .lib para utilizar la librerai en c#builder.... pero no se como hacerlo...alguien puede guiarme para lograr esto... y descargue la cmake
Hola cristobal me gustaria hacerte una pregunta, querria saber como seleccionas los blobs, es decir que criterios son los que usas para escoger una region como blob y no seleccionar otra region en ese mismo blog, no se si me explico porq no estan en el mismo blog una seccion de la esquina derecha y otra proxima a ella pero que no se tocan.
Hola Don_gash,
Cada blob es una parte conexa de la imagen, o sea, cada grupo aislado es un blob.
Por tanto, si no se tocan dos grupos de píxeles serán dos blobs distintos ;)
Por cierto, parece que no se publica bien en el blog los comentarios, pero aquí sí aparecen... Intentaré arreglarlo...
Hola Cristobal, de antemano te felicito por tan gran aporte, mi peticion es la siguiente:
Podrias realizar un pequeño tuto, para la utilizacion de cblobs en MSVSC++2008(Microsoft visual estudio C++ 2008), con OpenCV2.1?. seria de gran ayuda entender como vincular tan potente algoritmo en visual y con las ultimas librerias de OpenCV.
Gracias.
Hola @luislamb99, muchas gracias!
Yo uso Linux así que tendré que mirar como puedo hacer algún tutorial para Windows. Pero seguramente lo haga para Microsoft Visual Studio Express, si consigo instalármelo en Linux.
Estoy terminando un máster, pero en un par de semanas espero tener tiempo para documentar mejor la librería. De todas formas si tienes alguna duda o algún problema mándame un correo o pon un comentario en http://code.google.com/p/cvblob/wiki/FAQ
Suerte!
Hola cristobal, muy buen trabajo, quiciera saber si es posible compilar y usar esta libreria en qt creator
Hola Luis,
Yo diría, que no debería haber problema para compilar con Qt Creator, porque en Linux usa los compiladores GNU y en Windows puede compilar usando MinGW y los compiladores de Microsoft.
Algunos enlaces, por si te sirven (en relación con CMake):
http://doc.qt.nokia.com/qtcreator-1.3/creator-cmake-support.html
http://www.sebruiz.net/359
Saludos!
Hola, pues nada estoy intentando usar la libreria en dev c++ pero siempre me vota errores de linker, no se si exista ya una version especifica para este entorno, me podrias ayudar? gracias
Hola, me gustaría saber como puedo instalar cvLob en windows para utilizarlo con Visual C++ 2008 y OpenCV. Lo necesito para mi trabajo fin de máster.
Gracias!!
Publicar un comentario en la entrada
Enlaces a esta entrada:
Crear un enlace
<< Página principal