Re: Introduccion al motion capture con kinect/Blender
Publicado: Vie Mar 11, 2011 12:54 pm
No veo que openkinect te calcule el esqueleto, parece que openNI si?
La comunidad de Blender 3D en Español!
https://foro.g-blender.org/
ejecuta:ahora si ya estoy preocupado...
ya tengo el Kinect en mis manos y no lo puedo echar a andar xD
pues creo que tengo problemas al recompilar...
cada que trato de recompilar, parece que ya no hace nada...
que opciones le tengo que dar al "make" para que ignore la compilación anterior e inicie de cero???
o en su caso; como puedo eliminar la compilación pasada y tener todo desde cero???
saludos.
Pd:saludotes...
pasa que, openkinect (libfreenect) únicamente es el driver para kinect, es decir te da los datos exactamente igual que se los da el kinect al xbox, es decir no hace nada mas que mostrar los streams de video (y darte acceso al motor y al acelerometro), OpenNi es un driver similar (pero de la empresa primesense), luego se hicieron unas librerías mas (también de primesense y utilizando OpenNi) llamadas Nite, que son las que te dan la posibilidad de realizar el "Skeleton tracker".No veo que openkinect te calcule el esqueleto, parece que openNI si?
Código: Seleccionar todo
sudo ./compile.sh make: se ingresa al directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Players/Blender1» ../NiteSampleMakefile:21: ../../CommonMakefile: No existe el fichero o el directorio make: *** No hay ninguna regla para construir el objetivo «../../CommonMakefile». Alto. make: se sale del directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Players/Blender1» root@momo:~/kinect/NITE/Nite-1.3.0.17/Samples/Players/Blender1# sudo ./compile.sh make: se ingresa al directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Players/Blender1» mkdir -p Release g++ -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -M -MF Release/signal_catch.d -MT \"./Release/signal_catch.o Release/signal_catch.d\" ../Blender1/signal_catch.cpp g++ -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -M -MF Release/kbhit.d -MT \"./Release/kbhit.o Release/kbhit.d\" ../Blender1/kbhit.cpp g++ -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -M -MF Release/SceneDrawer.d -MT \"./Release/SceneDrawer.o Release/SceneDrawer.d\" ../Blender1/SceneDrawer.cpp g++ -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -M -MF Release/main.d -MT \"./Release/main.o Release/main.d\" ../Blender1/main.cpp make: se sale del directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Players/Blender1» make: se ingresa al directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Players/Blender1» g++ -c -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -o Release/main.o ../Blender1/main.cpp ../Blender1/main.cpp: In function ‘void StopCapture()’: ../Blender1/main.cpp:48: warning: ‘void xn::NodeWrapper::Unref()’ is deprecated (declared at /usr/include/ni/XnCppWrapper.h:1017) ../Blender1/main.cpp: In function ‘void DrawProjectivePoints(XnPoint3D&, int, double, double, double)’: ../Blender1/main.cpp:206: warning: format ‘%i’ expects type ‘int’, but argument 3 has type ‘double’ ../Blender1/main.cpp:206: warning: format ‘%i’ expects type ‘int’, but argument 4 has type ‘double’ ../Blender1/main.cpp: In function ‘int main(int, char**)’: ../Blender1/main.cpp:330: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’, declared with attribute warn_unused_result g++ -c -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -o Release/SceneDrawer.o ../Blender1/SceneDrawer.cpp ../Blender1/SceneDrawer.cpp: In function ‘void DrawDepthMap(const xn::DepthMetaData&, const xn::SceneMetaData&, XnUserID)’: ../Blender1/SceneDrawer.cpp:378: warning: deprecated conversion from string constant to ‘char*’ g++ -c -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -o Release/kbhit.o ../Blender1/kbhit.cpp g++ -c -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -o Release/signal_catch.o ../Blender1/signal_catch.cpp mkdir -p ../Bin g++ -o ../Bin/Blender1 ./Release/main.o ./Release/SceneDrawer.o ./Release/kbhit.o ./Release/signal_catch.o -L../Bin -lglut -lOpenNI -lXnVNite /usr/bin/ld: skipping incompatible /usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libXnVNite.so when searching for -lXnVNite /usr/bin/ld: skipping incompatible /usr/lib/../lib/libXnVNite.so when searching for -lXnVNite /usr/bin/ld: skipping incompatible /usr/lib/gcc/i686-linux-gnu/4.4.5/../../../libXnVNite.so when searching for -lXnVNite /usr/bin/ld: skipping incompatible //usr/lib/libXnVNite.so when searching for -lXnVNite /usr/bin/ld: cannot find -lXnVNite collect2: ld returned 1 exit status make: *** [../Bin/Blender1] Error 1 make: se sale del directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Players/Blender1»
Código: Seleccionar todo
root@momo:/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Blender1# ./compile.sh make: se ingresa al directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Blender1» g++ -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -M -MF Release/signal_catch.d -MT \"./Release/signal_catch.o Release/signal_catch.d\" ../Blender1/signal_catch.cpp g++ -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -M -MF Release/kbhit.d -MT \"./Release/kbhit.o Release/kbhit.d\" ../Blender1/kbhit.cpp g++ -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -M -MF Release/SceneDrawer.d -MT \"./Release/SceneDrawer.o Release/SceneDrawer.d\" ../Blender1/SceneDrawer.cpp g++ -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -M -MF Release/main.d -MT \"./Release/main.o Release/main.d\" ../Blender1/main.cpp make: se sale del directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Blender1» make: se ingresa al directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Blender1» g++ -c -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -o Release/main.o ../Blender1/main.cpp ../Blender1/main.cpp: In function ‘void StopCapture()’: ../Blender1/main.cpp:48: warning: ‘void xn::NodeWrapper::Unref()’ is deprecated (declared at /usr/include/ni/XnCppWrapper.h:1017) ../Blender1/main.cpp: In function ‘void DrawProjectivePoints(XnPoint3D&, int, double, double, double)’: ../Blender1/main.cpp:206: warning: format ‘%i’ expects type ‘int’, but argument 3 has type ‘double’ ../Blender1/main.cpp:206: warning: format ‘%i’ expects type ‘int’, but argument 4 has type ‘double’ ../Blender1/main.cpp: In function ‘int main(int, char**)’: ../Blender1/main.cpp:330: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’, declared with attribute warn_unused_result g++ -c -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -o Release/SceneDrawer.o ../Blender1/SceneDrawer.cpp ../Blender1/SceneDrawer.cpp: In function ‘void DrawDepthMap(const xn::DepthMetaData&, const xn::SceneMetaData&, XnUserID)’: ../Blender1/SceneDrawer.cpp:378: warning: deprecated conversion from string constant to ‘char*’ g++ -c -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -o Release/kbhit.o ../Blender1/kbhit.cpp g++ -c -malign-double -O3 -fno-tree-pre -fno-strict-aliasing -DNDEBUG -msse2 -I../Blender1 -I/usr/include/nite -I/usr/include/ni -DUSE_GLUT -DXN_SSE -o Release/signal_catch.o ../Blender1/signal_catch.cpp g++ -o ../Bin/Blender1 ./Release/main.o ./Release/SceneDrawer.o ./Release/kbhit.o ./Release/signal_catch.o -L../Bin -lglut -lOpenNI -lXnVNite /usr/bin/ld: skipping incompatible /usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libXnVNite.so when searching for -lXnVNite /usr/bin/ld: skipping incompatible /usr/lib/../lib/libXnVNite.so when searching for -lXnVNite /usr/bin/ld: skipping incompatible /usr/lib/gcc/i686-linux-gnu/4.4.5/../../../libXnVNite.so when searching for -lXnVNite /usr/bin/ld: skipping incompatible //usr/lib/libXnVNite.so when searching for -lXnVNite /usr/bin/ld: cannot find -lXnVNite collect2: ld returned 1 exit status make: *** [../Bin/Blender1] Error 1 make: se sale del directorio «/home/mercury/kinect/NITE/Nite-1.3.0.17/Samples/Blender1»
Código: Seleccionar todo
mercury@momo:~$ sudo echo \"/usr/lib\" > /etc/ld.so.conf.d/NITE.conf
bash: /etc/ld.so.conf.d/NITE.conf: Permiso denegado
mercury@momo:~$ sudo ldconfig
[sudo] password for mercury:
mercury@momo:~$
Código: Seleccionar todo
mercury@momo:~$ ldd /usr/lib/libXnVNite.so
no es un ejecutable dinámico
Código: Seleccionar todo
mercury@momo:~$ sudo ldconfig -v | grep \"libXnVNite\"
/sbin/ldconfig.real: No se puede efectuar `stat\' sobre /lib/i486-linux-gnu: No existe el fichero o el directorio
/sbin/ldconfig.real: No se puede efectuar `stat\' sobre /usr/lib/i486-linux-gnu: No existe el fichero o el directorio
/sbin/ldconfig.real: No se puede efectuar `stat\' sobre /lib/i686-linux-gnu: No existe el fichero o el directorio
/sbin/ldconfig.real: No se puede efectuar `stat\' sobre /lib64: No existe el fichero o el directorio
libXnVNite.so -> libXnVNite.so
Código: Seleccionar todo
#!/bin/bash
# By Xianur0 - xianur0.null@gmail.com
# Los Caballeros - http://hackingtelevision.blogspot.com/
niReg -u /usr/lib/libXnVFeatures.so
niReg -u /usr/lib/libXnVHandGenerator.so
rm /usr/lib/libXnVNite.so
rm /usr/lib/libXnVFeatures.so
rm /usr/lib/libXnVHandGenerator.so
rm -rf /usr/etc/primesense/XnVFeatures
rm -rf /usr/etc/primesense/XnVHandGenerator
rm -rf /usr/include/nite/
rm -R ~/kinect/NITE
ARQ=`uname -i`
NITE32=\"http://www.openni.org/downloadfiles/openni-compliant-middleware-binaries/stable/54-primesense-nite-beta-build-for-for-ubuntu-10-10-x86-32-bit-v1-3-0/download\"
NITE64=\"http://www.openni.org/downloadfiles/openni-compliant-middleware-binaries/stable/53-primesense-nite-beta-build-for-for-ubuntu-10-10-x64-64-bit-v1-3-0/download\"
ARQ1=\"i386\"
NITE=\"\"
OUTNITE=\"nite.tar.bz2\"
SSE3=1
cd ~/kinect/
mkdir NITE
cd NITE
uname -a | grep x86_64
if [ $? -eq 0 ]; then
ARQ=\"i386\"
fi
if [ $ARQ = $ARQ1 ]; then
NITE=$NITE32
else
NITE=$NITE64
fi
wget $NITE -O $OUTNITE
tar jvxf $OUTNITE
cd Nite-*
cat /proc/cpuinfo | grep ssse3
if [ $? -ne 0 ]; then
echo \"No hay soporte para SSSE3, parchando...\"
perl -i.back -p -e \'undef $/; s@(SSE_GENERATION =) 3@$1 2@sg\' CommonMakefile
fi
cd Data
perl -i.back -p -e \'undef $/; s@insert key here@0KOIk2JeIBYClPWVnMoRKn5cdY4=@sg\' *.xml
perl -i.back -p -e \'undef $/; s@xRes=\"320\"@xRes=\"640\"@sg\' *.xml
perl -i.back -p -e \'undef $/; s@yRes=\"240\"@yRes=\"480\"@sg\' *.xml
cd ../
perl -i.back -p -e \'undef $/; s@LIC_KEY=\"\"@LIC_KEY=\"0KOIk2JeIBYClPWVnMoRKn5cdY4=\"@sg\' install.bash
perl -i.back -p -e \'undef $/; s@ASK_LIC=\"1\"@ASK_LIC=\"0\"@sg\' install.bash
./install.bash
make && sudo make install
cd Samples/Bin
chmod 777 Sample-Players
echo \"Por favor conecte kinect y a continuacion presione cualquier tecla\"
read
./Sample-Players
echo \"Felicidades tienes Nite instalado! - By Los Caballeros\"
Código: Seleccionar todo
No hay soporte para SSSE3, parchando... cp: no se puede crear el fichero regular «/usr/lib/libXnVNite.so»: Permiso denegado
Código: Seleccionar todo
cp /usr/local/include cp: falta el operando archivo de destino después de «/usr/local/include» Pruebe `cp --help\' para más información. make: *** [install-includes] Error 1 Por favor conecte kinect y a continuacion presione cualquier tecla ./nite.sh: línea 44: 2035 Instrucción ilegal ./Sample-Players Felicidades tienes Nite instalado! - By Los Caballeros
Código: Seleccionar todo
mkdir: no se puede crear el directorio «NITE»: El fichero ya existe
Código: Seleccionar todo
niReg -u /usr/lib/libXnVFeatures.so
niReg -u /usr/lib/libXnVHandGenerator.so
rm /usr/lib/libXnVNite.so
rm /usr/lib/libXnVFeatures.so
rm /usr/lib/libXnVHandGenerator.so
rm -rf /usr/etc/primesense/XnVFeatures
rm -rf /usr/etc/primesense/XnVHandGenerator
rm -rf /usr/include/nite/
rm -R ~/kinect/NITE
Código: Seleccionar todo
sudo ./nite.sh [sudo] password for mercury: ./nite.sh: línea 4: 3129 Instrucción ilegal niReg -u /usr/lib/libXnVFeatures.so ./nite.sh: línea 5: 3130 Instrucción ilegal niReg -u /usr/lib/libXnVHandGenerator.so rm: no se puede borrar «/usr/lib/libXnVHandGenerator.so»: No existe el fichero o el directorio