OpenCV VideoCapture :: grab () зависает с OpenNI2, используя Asus Xtion Pro Live

Мне удалось скомпилировать и установить opencv с OpenNI2 в Lubunutu (архитектура Arm). Я протестировал пример, представленный в /samples/cpp/openni_capture.cpp, и он успешно общается с датчиком и отображает информацию о нем. Тем не менее, программа достигает точки непосредственно перед показом изображений / данных, и ничего не происходит, программа зависает в строке если (! capture.grab () .

for(;;)
{
...

if( !capture.grab() )
{
cout << "Can not grab images." << endl;
return -1;
}
else
{
if( retrievedImageFlags[0] && capture.retrieve( depthMap, CAP_OPENNI_DEPTH_MAP ) )
{
const float scaleFactor = 0.05f;
Mat show; depthMap.convertTo( show, CV_8UC1, scaleFactor );
imshow( "depth map", show );
}

...
}

Я написал несколько строк, чтобы убедиться, что проблема в этой функции, и это, я совершенно уверен. Это даже не показывает сообщение об ошибке.
Кто-нибудь знает, что происходит или как это решить?
Спасибо

0

Решение

Ну, на случай, если кто-то столкнется с той же проблемой, я решил ее, используя граббер, созданный специально для Odroid U3 (Arm), доступный на http://forum.odroid.com/viewtopic.php?f=15&т = 2090

В основном код остается тем же самым, но вместо того, чтобы использовать класс VideoCapture из OpenCV, я использовал один из приведенных выше.

Наконец я могу использовать opencv, pcl и ros с датчиком asus на плате Arm =).

ура

0

Другие решения


По вопросам рекламы [email protected]