s-gupta / rcnn-depth

Learning Rich Features from RGB-D Images for Object Detection and Segmentation
BSD 2-Clause "Simplified" License
365 stars 150 forks source link

error in running demo: Error in jointBilateral #30

Closed hojat-kaveh closed 7 years ago

hojat-kaveh commented 7 years ago

I've completed installing "rcnn-depth" according to help on Ubuntu 16.04.4 (gcc 5.4.0) except the step that I have to run rcnn_build(); witch resulted in error and as suggested in issue #2 I run make in liblinear-1.94 and `liblinear-1.94/matlab' folders.

I've tried with both Matlab R2016b and Matlab R2012b (with editing matlab path in imagestack Makefile and liblinear-1.94/matlab Makefile), both produce this error:

result of Matlab R2012b: runname =

release

Invalid MEX-file '/home/hojat/Documents/application/rcnn-depth/eccv14-code/rgbdutils/imagestack/matlab/joint_bilateral_mex.mexa64': /usr/local/MATLAB/R2012b/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version ``GLIBCXX_3.4.21' not found (required by /home/hojat/Documents/application/rcnn-depth/eccv14-code/rgbdutils/imagestack/matlab/joint_bilateral_mex.mexa64)

Error in jointBilateral (line 16) aa = joint_bilateral_mex(single(II), single(refII), sigma1, sigma2);

Error in computeNormals>filterItChopOffIS (line 65) fFilt = jointBilateral(sp, f, 1, 1000);

Error in computeNormals (line 34) AtA = filterItChopOffIS(cat(3, AtARaw, AtbRaw), superpixels, disparity, sigmaSupport, sigmaSuperpixel, sigmaDisparity);

Error in wrapperComputeNormals (line 39) [N b] = computeNormals(X, Y, Z, disparity, missingMask, superpixels, sigmaSupport, sigmaDisparity, sigmaSuperpixel);

Error in yCues (line 11) [N, b, pc] = wrapperComputeNormals(double(D)./100, false(size(D)), 3, s, C);

Error in getAllCues (line 12) [y1, y2, y3, angl1, angl2] = yCues(D, C, 1);

Error in detectEdge (line 17) cues = getAllCues(Iin, Din, C, colorModel, opts.rgbd3opts.vars, cacheFile);

Error in run_all (line 12) [E, Es, O] = detectEdge(I, D, [], C, model, sc, [], []);

Error in demo (line 6) run_all(I, D, RD, C, out_file);

what is GLIBCXX_3.4.21? what is causing this error?

s-gupta commented 7 years ago

This is probably because the libraries that you used to compiled imagestack with are different from the one that matlab has loaded. You could try specifying LD_PRELOAD path (to point to the system libraries that were used to compile imagestack) while launching matlab to fix this.

hojat-kaveh commented 7 years ago

I used instruction in here and after a clean make of imagestack and liblinear-1.94 and liblinear-1.94/matlab, executed this: LD_PRELOAD="/usr/lib/x86_64-linux-gnu/libstdc++.so.6" mymatlab_2016b

running demo() leads to the same error as before! :( Can creating a symbolic link of the system libraries (like here)fix this?

hojat-kaveh commented 7 years ago

Ok, creating the symbolic link seems to do the trick! I finally managed to run the demo! YAY!