Ask Your Question
1

Opencv contrib modules on VS15

asked 2016-11-07 13:30:29 -0500

ThorbjornSomod gravatar image

updated 2016-11-08 03:49:30 -0500

Hi!

I have been trying to build the opencv_contrib module for OpenCV 3.1 on Visual Studio 15. These are the steps I've done so far:

1) Downloaded the OpenCV 3.1 from http://opencv.org/downloads.html and extracted the content to my chosen directory (C:\opencv).

2) Cloned the opencv_contrib repository from here https://github.com/opencv/opencv_contrib and chosen a directory for it (C:\opencv_contrib)

3) I tried running the Cmake GUI from standard command line using admin rights. I chose the VS15 as generator for this.

image description

It got me this error:

image description

Here it seems to me that Cmake is unable to find the VS C++ compiler, and thus is unable to generate the build. To fix this i tried running the cmake-gui from the developer command line for VS15.

image description

This seemed to have done the trick.

image description

I wrote in the path for the OPENCV_EXTRA_MODULES_PATH:

image description

I also ticked OFF the opencv_aruco module as I know it causes problems with my current project.

image description

After this i hit "configure" and let Cmake run. It does this with no error. I then hit "generate" and let it finish. All still good.

image description

4) I then opened the created OpenCV.sln project in the C:\opencv\build folder in VS.

5) I then tried to build the ALL_BUILD and INSTALL project files and get this error output for the building the debug solution of ALL_BUILD:

image description

It seems here to me that the problem lies in Cmake trying to generate a 32bit solution, while VS15 expects a 64bit solution. I have no idea how this happens! Any help would be appreciated!

edit retag flag offensive close merge delete

Comments

I don't do like this. I use cmake gui and select vs 14 2015 win 64 and press configure. then in name "OPENCV" I fill OPENCV_EXTRA_MODULES_PATH with my path to opencvçcontrib : f:/lib/opencv_contrib/modules press generate and open sln project with VS 2015

LBerger gravatar imageLBerger ( 2016-11-07 14:42:43 -0500 )edit

I have tried exactly what you say as well, but if I try to use the win64 compiler it just results in hundreds of errors when I try to build ALL_BUILD and INSTALL in OpenCV.sln...

ThorbjornSomod gravatar imageThorbjornSomod ( 2016-11-07 14:56:21 -0500 )edit

can you post errors? Do you succeed to build opencv with cmake and vs2015?

LBerger gravatar imageLBerger ( 2016-11-07 15:09:22 -0500 )edit

please get github master, not the prebuild 3.1 binaries(they're too old)

berak gravatar imageberak ( 2016-11-07 16:58:34 -0500 )edit

Hi, i encountered the same problem as well. I received lots of errors when i try to "built" the OpenCV.sln. Are there any working solutions? I am using OpenCV3.1.0 (downloaded from the official website), using VS2015 update 3, latest CMake version

chingwai91 gravatar imagechingwai91 ( 2016-11-07 23:58:53 -0500 )edit

like berak said don't use precompiled binaries opencv. Opencv_contrib is build using opencv master from github not with opencv binaries. You must follow readme to build it

LBerger gravatar imageLBerger ( 2016-11-08 01:35:46 -0500 )edit

LBerger, I had tried using the Opencv_contrib using opencv master from Github, but when i try to built it in VS 2015, the results is

Build: 11 succeeded, 133 failed, 1 up-to-date, 0 skipped

Most of the errors are like this

LINK : fatal error LNK1104: cannot open file '....\lib\Debug\opencv_objdetect310d.lib'

All the lib are failed to be linked. Is there anything i did wrongly during the installation?

chingwai91 gravatar imagechingwai91 ( 2016-11-08 01:59:39 -0500 )edit

Dear all, my problem had been solved. Just by disable WITH_CUDA during the CMAKE configuration, then the OpenCV.sln can be built successfully without any errors. But just one question, if CUDA is disabled, how can i use GPU to run for my project if needed?

chingwai91 gravatar imagechingwai91 ( 2016-11-08 03:39:46 -0500 )edit

I have now updated the original post with screenshots and a more understandable project text. I'll try to do this with the opencv-master branch now and see if this gets any better results. I will also try ticking OFF the WITH_CUDA during Cmake config. Thanks for the answers guys, lets hope something works!

ThorbjornSomod gravatar imageThorbjornSomod ( 2016-11-08 03:52:07 -0500 )edit

@ThorbjornSomod don't use vs 2015 in cmake but visual studio 14 2015 win64. Don't forget to delete cache in cmake and Have you downloaded opencv from github?

LBerger gravatar imageLBerger ( 2016-11-08 04:11:25 -0500 )edit

1 answer

Sort by » oldest newest most voted
0

answered 2016-11-10 02:15:33 -0500

ThorbjornSomod gravatar image

Hi again!

I am happy to say that I have now found a fix that worked for me!

What I had to do was to first generate the solution using Cmake. As generator I had to choose Visual Studio 14 2015 Win64. After I generated the first solution I chose the correct OPENCV_EXTRA_MODULES_PATH and clicked "configure". I then chose ONLY the xfeatures2d module to be generated (as this was the only one I needed) and hit generate again. I then opened the OpenCV.sln project solution in the build folder and built the ALL_BUILD and INSTALL parts in both debug and release. After correct linking the xfeatures2d module worked fine!

The reason I chose only the xfeatures2d module to be generated is that I read that alot of the opencv_contrib modules are corrupted and do not work with VS15. Thanks to all of you for your help in all of this, and I hope this answer can be of help to everyone else aswell.

edit flag offensive delete link more

Comments

No that's wrong on my computer only sfm module is disabled (ceres solver is aproblem on windows) with VS2015 and windows 10. You can check build bot to see

LBerger gravatar imageLBerger ( 2016-11-10 04:26:18 -0500 )edit

I only said that I found a "fix that works for me". Seeing as I am only interested in the xfeature2d module this was the easiest way I could get it to work. I don't know the specifics of which modules it was that were corrupted, and I didnt bother going through them all to check it :)

ThorbjornSomod gravatar imageThorbjornSomod ( 2016-11-10 06:35:55 -0500 )edit
Login/Signup to Answer

Question Tools

2 followers

Stats

Asked: 2016-11-07 13:30:29 -0500

Seen: 1,154 times

Last updated: Nov 10 '16