Error when calling astra::initialize() or astra_initialize()

Hi everyone,

I recently bought an Orbbec Astra sensor, but I got some issues getting started. I’m using Ubuntu 14.04.
I got this problem since Astra SDK 2.0.7, and it is still here with Astra SDK 2.0.8.

The main issue is that I can’t run any code that I develop because I always get a SIGABRT signal caused by a conflict with OpenCV (I think).
The error I get is the following:

OpenCV Error: The function/feature is not implemented (Unknown/unsupported array type) in getMat_, file /home/thibault/Documents/libs/opencv-3.4.0/modules/core/src/matrix.cpp, line 1319
terminate called after throwing an instance of ‘cv::Exception’
what(): /home/thibault/Documents/libs/opencv-3.4.0/modules/core/src/matrix.cpp:1319: error: (-213) Unknown/unsupported array type in function getMat_

Program received signal SIGABRT, Aborted.

This error is thrown inside both astra::initialize() and astra_initialize() (btw, I don’t know which one I should use).
Edit: This issue was corrected by using OpenCV 2.4.13 rather than OpenCV 3.4

Another error is now thrown (with the samples and with my own code), and I have the following trace:

INFO [astra.xs.point_processor] created point stream
TRACE [astra.stream_reader] 0x4fd6030 register_frame_ready_callback callback: 0x7f6cdaa6a520 tag: 0x4fd60e8 callbackId: 0x4fd7b60
INFO [context] client opening streamset: (null)
terminate called after throwing an instance of ‘std::logic_error’
what(): basic_string::_S_construct null not valid

Edit 2: Deleting liborbbec_hand.so from the repository did the trick…

Another info, when running with OpenNI, the device works correctly.
Does anybody have a piece of advice or can explain why I have to delete libordbbec_hand.so to make everything work?

Thanks.

1 Like