Open hayoonko opened 6 years ago
Hi, I'm not sure, are you compiling on a Linux, is it 64 bits?
Send me the full make output.
Best regards,
Derzu.
yes, my os is both of ubuntu 16.04 and 14.04.
so i have trouble in ubuntu 16.04, but i change my os on ubuntu 14.04.
and another problem is image@image:~/xtion2/BodySkeletonTracker/Bin/x64-Release$ ./BodySkeletonTracker main::Compiled with Depth Couldn't open device DeviceOpen using default: no devices found
Compiled with Depth Wait failed! (timeout is 2000 ms) waitForStreams: timeout reached
Wait failed! (timeout is 2000 ms) waitForStreams: timeout reached
thanks you for your reply.
The depth camera was not detected.
Are you testing with a depth device like Orbbec Astra, or Asus Xtion, or Primesense? Did you installed the OpenNI2 driver?
yes,
i used Asus Xtion2. i installed OpenNI2 driver and then test SImpleViewer. not problem....
Did you run the source command? $ source ~/Downloads/OpenNI-Linux-x64-2.3/OpenNIDevEnvironment (set your path appropriately)
of course.
i don't understand why occur this error...
At the main.ccp file try to change: deviceURI = openni::ANY_DEVICE; to deviceURI = "/dev/yourdevice"
You need to discovery the /dev/ file of your device.
thanks you!
it work for me ! :)
but i try run ./BodySkeletonTracker image@image:~/xtion2/BodySkeletonTracker/Bin/x64-Release$ ./BodySkeletonTracker main::Compiled with Depth Video Camera at /dev/video1 Detected Depth Camera at /dev/video0 Detected
and then nothing happened ... (ex . any GUI)
Do you have any traditional webcam attached? If you are running at a notebook probably it will have a webcam. And webcam can be the /dev/video0. You said the SimpleViewer works for you, you can try to print the device string at it's code and verify if it is really the /dev/vide0 that is being used.
I am sorry that the answer is late. Currently my main.cpp is like this:
int main(int argc, char** argv) {
int rc = openni::STATUS_OK;
const char* deviceURI = "/dev/ASUS-depth" ;
int rc = 1;
const char* deviceURI = NULL;
printf("main::Compiled with Depth\n");
printf("main::Compiled witout Depth\n");
/*if (argc > 1)
{
deviceURI = argv[1];
}*/
SampleViewer sampleViewer("Body Skeleton Tracker", "/dev/ASUS-depth");
rc = sampleViewer.init();
if (rc != openni::STATUS_OK)
if (rc != 0)
{
return 1;
}
sampleViewer.run();
}
I am using an xtion2 camera and the output of $ ls / dev / video is like this: image@image:~$ ls /dev/video /dev/video0 /dev/video1
Here is the output of $ ls / dev / *. /dev/ASUS-depth /dev/ram11 /dev/tty21 /dev/ttyS12 /dev/autofs /dev/ram12 /dev/tty22 /dev/ttyS13 /dev/btrfs-control /dev/ram13 /dev/tty23 /dev/ttyS14 /dev/console /dev/ram14 /dev/tty24 /dev/ttyS15 /dev/core /dev/ram15 /dev/tty25 /dev/ttyS16 /dev/cpu_dma_latency /dev/ram2 /dev/tty26 /dev/ttyS17 /dev/cuse /dev/ram3 /dev/tty27 /dev/ttyS18 /dev/ecryptfs /dev/ram4 /dev/tty28 /dev/ttyS19 /dev/full /dev/ram5 /dev/tty29 /dev/ttyS2 /dev/fuse /dev/ram6 /dev/tty3 /dev/ttyS20 /dev/hidraw0 /dev/ram7 /dev/tty30 /dev/ttyS21 /dev/hidraw1 /dev/ram8 /dev/tty31 /dev/ttyS22 /dev/hidraw2 /dev/ram9 /dev/tty32 /dev/ttyS23 /dev/hpet /dev/random /dev/tty33 /dev/ttyS24 /dev/hwrng /dev/rfkill /dev/tty34 /dev/ttyS25 /dev/i2c-0 /dev/rtc /dev/tty35 /dev/ttyS26 /dev/i2c-1 /dev/rtc0 /dev/tty36 /dev/ttyS27 /dev/i2c-2 /dev/sda /dev/tty37 /dev/ttyS28 /dev/i2c-3 /dev/sda1 /dev/tty38 /dev/ttyS29 /dev/i2c-4 /dev/sda2 /dev/tty39 /dev/ttyS3 /dev/i2c-5 /dev/sda5 /dev/tty4 /dev/ttyS30 /dev/i2c-6 /dev/sda6 /dev/tty40 /dev/ttyS31 /dev/kmsg /dev/sdb /dev/tty41 /dev/ttyS4 /dev/kvm /dev/sdb1 /dev/tty42 /dev/ttyS5 /dev/log /dev/sdb2 /dev/tty43 /dev/ttyS6 /dev/loop0 /dev/sdb3 /dev/tty44 /dev/ttyS7 /dev/loop1 /dev/sdb5 /dev/tty45 /dev/ttyS8 /dev/loop2 /dev/sdc /dev/tty46 /dev/ttyS9 /dev/loop3 /dev/sdc1 /dev/tty47 /dev/uhid /dev/loop4 /dev/sdc2 /dev/tty48 /dev/uinput /dev/loop5 /dev/sdc3 /dev/tty49 /dev/urandom /dev/loop6 /dev/sdc4 /dev/tty5 /dev/vcs /dev/loop7 /dev/sdc5 /dev/tty50 /dev/vcs1 /dev/loop-control /dev/sg0 /dev/tty51 /dev/vcs2 /dev/mcelog /dev/sg1 /dev/tty52 /dev/vcs3 /dev/media0 /dev/sg2 /dev/tty53 /dev/vcs4 /dev/media1 /dev/snapshot /dev/tty54 /dev/vcs5 /dev/mei0 /dev/stderr /dev/tty55 /dev/vcs6 /dev/mem /dev/stdin /dev/tty56 /dev/vcs7 /dev/memory_bandwidth /dev/stdout /dev/tty57 /dev/vcsa /dev/ndctl0 /dev/tty /dev/tty58 /dev/vcsa1 /dev/network_latency /dev/tty0 /dev/tty59 /dev/vcsa2 /dev/network_throughput /dev/tty1 /dev/tty6 /dev/vcsa3 /dev/null /dev/tty10 /dev/tty60 /dev/vcsa4 /dev/nvidia0 /dev/tty11 /dev/tty61 /dev/vcsa5 /dev/nvidiactl /dev/tty12 /dev/tty62 /dev/vcsa6 /dev/nvidia-modeset /dev/tty13 /dev/tty63 /dev/vcsa7 /dev/port /dev/tty14 /dev/tty7 /dev/vga_arbiter /dev/ppp /dev/tty15 /dev/tty8 /dev/vhci /dev/psaux /dev/tty16 /dev/tty9 /dev/vhost-net /dev/ptmx /dev/tty17 /dev/ttyprintk /dev/video0 /dev/ptp0 /dev/tty18 /dev/ttyS0 /dev/video1 /dev/ram0 /dev/tty19 /dev/ttyS1 /dev/zero /dev/ram1 /dev/tty2 /dev/ttyS10 /dev/ram10 /dev/tty20 /dev/ttyS11
Here is the output of the terminal $. / BodySkeletonTracker. image@image:~/xtion2/BodySkeletonTracker/Bin/x64-Release$ ./BodySkeletonTracker main::Compiled with Depth Video Camera at /dev/video1 Detected Depth Camera at /dev/video0 Detected
No video frame will appear on the output screen. I don't know why this problem occured.
I don't know what is the problem, maybe some driver issue, you can try to reinstall the OpenNI2 driver.
I think the best set for the deviceURI is: const char* deviceURI = openni::ANY_DEVICE;
Because of this way the initOpenNI() method try to find the correct device.
hi, thanks you for your source code.
i try to make it, but /usr/bin/ld: cannot find -l64 error.
what is -l64? please help me !