Ask Your Question
2

Master branch 2.4.9 is it stable? How to check it? Gpu functionality not building...

asked 2013-05-31 02:27:40 -0600

In my previous topic I got my first tries at building openCV from scratch myself on Windows, since I need GPU functionality.

As seen in the solution of the topic, building has been working out and was busy when I left the office. However, since then, it seems that all functionality seems to build, except for the GPU module.

I have read in some topics that master branch could be unstable, but the downloadable packets (2.4.5) don't seem to work for building manually.

It all starts by the following error in my building output, followed by errors that other libraries or build parts cannot link versus this GPU module :

Build started 31/05/2013 9:25:03.
3>InitializeBuildStatus:
3>  Touching "opencv_gpu.dir\Debug\opencv_gpu.unsuccessfulbuild".
3>CustomBuild:
3>  All outputs are up-to-date.
3>ClCompile:
3>  All outputs are up-to-date.
3>  stereocsbp.cpp
3>..\..\..\OpenCV_source\modules\gpu\src\stereocsbp.cpp(199): error C3861: 'assert': identifier not found
3>          ..\..\..\OpenCV_source\modules\gpu\src\stereocsbp.cpp(303) : see reference to function template instantiation 'void csbp_operator<short>(cv::gpu::StereoConstantSpaceBP &,cv::gpu::GpuMat &,cv::gpu::GpuMat &,cv::gpu::GpuMat &,const cv::gpu::GpuMat &,const cv::gpu::GpuMat &,cv::gpu::GpuMat &,cv::gpu::Stream &)' being compiled
3>..\..\..\OpenCV_source\modules\gpu\src\stereocsbp.cpp(199): error C3861: 'assert': identifier not found
3>          ..\..\..\OpenCV_source\modules\gpu\src\stereocsbp.cpp(303) : see reference to function template instantiation 'void csbp_operator<float>(cv::gpu::StereoConstantSpaceBP &,cv::gpu::GpuMat &,cv::gpu::GpuMat &,cv::gpu::GpuMat &,const cv::gpu::GpuMat &,const cv::gpu::GpuMat &,cv::gpu::GpuMat &,cv::gpu::Stream &)' being compiled
3>
3>Build FAILED.

Could a solution to this be to use the GPU module of the 2.4.5 branch, prebuilt, or won't this work?

edit retag flag offensive close merge delete

Comments

2

The release package 2.4.5 can be built with CUDA 5.0 using cmake,

Gianluigi gravatar imageGianluigi ( 2013-05-31 03:11:58 -0600 )edit
1

Which version of Visual Studio do you use?

Actually you can solve this issue by removing this line (it's just an assert for debug build).

Vladislav Vinogradov gravatar imageVladislav Vinogradov ( 2013-05-31 03:13:10 -0600 )edit

This is visual studio 2010. I will try to built the 2.4.5 package with cuda 5.0 and try the solution of removing the line of code, like vladislav suggested. However, the question still remains, is there possibility to check if the master branch is stable or not on a specific moment?

StevenPuttemans gravatar imageStevenPuttemans ( 2013-05-31 03:23:33 -0600 )edit
1

OpenCV master branch is a develop branch. It contains all new features that will be included to the next OpenCV major release (2.5 or even 3.0). At the moment master branch contains many global changes (API changes, module reorganization, etc.), and it will be more such changes. If you want to use stable version use 2.4 branch or 2.4.x tarballs.

Vladislav Vinogradov gravatar imageVladislav Vinogradov ( 2013-05-31 04:11:06 -0600 )edit

Ok thanks for the information. On the other hand, when getting the masterbranch, what i do is using Tortoise GIT and link it to the https://github.com/Itseez/opencv.git. Is there a way of specifying which branch you want to download?

StevenPuttemans gravatar imageStevenPuttemans ( 2013-05-31 04:25:06 -0600 )edit

Nevermind, have found it. You can specify the branch you want tot sync.

StevenPuttemans gravatar imageStevenPuttemans ( 2013-05-31 04:40:57 -0600 )edit
1

git downloads full repository with all branches. You can switch to 2.4 branch after cloning:

git checkout 2.4
Vladislav Vinogradov gravatar imageVladislav Vinogradov ( 2013-05-31 04:41:15 -0600 )edit

With VS2010, W7x64 I use OpenCV 2.4.9 built with CUDA support (juste check the cuda line in cmake GUI). I don't had any errors... But my project changed and I never used the GPU module.

Sooo I don't know if it really helps you but : Just installing the CUDA sdk from NVIDIA website, build works.

I can search in my install which packages I included if you want.

One more thing : building with CUDA took 4-5h for debug + release on intel Xeon W3565 + 4Gb memory + Quadro 600. It's long !

Rogeeeer gravatar imageRogeeeer ( 2013-05-31 04:44:03 -0600 )edit

I know that building takes a long time. However, you can reduce it by specifying your CUDA architecture. Thanks for the input nevertheless!

StevenPuttemans gravatar imageStevenPuttemans ( 2013-05-31 04:56:21 -0600 )edit

1 answer

Sort by ยป oldest newest most voted
0

answered 2013-06-04 02:29:03 -0600

Quoting @Vladislav Vinogradov for the solution so this can be marked as solved:

It downloads full repository with all branches. You can switch to 2.4 branch after cloning:

git checkout 2.4

edit flag offensive delete link more

Question Tools

Stats

Asked: 2013-05-31 02:27:40 -0600

Seen: 928 times

Last updated: Jun 04 '13