Ask Your Question

AndyL's profile - activity

2013-04-15 08:51:30 -0600 commented answer Confirm that Intel IPP loads in OpenCV 2x

Ok. Well so as I understand it, I need to compile 64 bit binaries because I want my eventual code to use both OpenCV as well as third party precompiled 64 bit binaries for a hardware framegrabber I have. Thanks, though.

2013-04-15 07:14:37 -0600 received badge  Autobiographer
2013-04-15 07:13:27 -0600 commented answer Confirm that Intel IPP loads in OpenCV 2x

Thanks StevenPuttermans, I do appreciate the post. Hope I didn't sound unappreciative. :) Its a good lead. Hopefully I can find out more. For the moment I'm stuck on an even more frustrating problem, see: http://answers.opencv.org/question/11600/can-opencv-2x-be-compiled-with-mingw-w64-through/

2013-04-14 15:50:04 -0600 commented question Recompile OpenCV 1.1 for 64 bit Windows 7

Thanks @Kirill, I am already downgraded to 2.4. However, I am have all sorts of problems getting cmake to use mingw-w64, see this question: http://answers.opencv.org/question/11600/can-opencv-2x-be-compiled-with-mingw-w64-through/

2013-04-14 15:48:46 -0600 asked a question Can OpenCV 2.x be compiled with mingw-w64 through cmake?

I am having all sorts of trouble compiling OpenCV 2.4 with mingw-w64 and cmake on 64bit Windows 7. Has anyone else run into this problem?

My toolchain.cmake file looks like:

set(CMAKE_SYSTEM_NAME Windows)
set(CMAKE_RC_COMPILER C:/mingw64/bin/windres.exe)
set(CMAKE_C_COMPILER C:/mingw64/bin/x86_64-w64-mingw32-gcc.exe)
set(CMAKE_CXX_COMPILER C:/mingw64/bin/x86_64-w64-mingw32-g++.exe)
set(CMAKE_LINKER C:/mingw64/bin/ld.exe)
set(CMAKE_FIND_ROOT_PATH C:/mingw64)
set(CMAKE_AR C:/mingw64/bin/ar.exe)
set(CMAKE_MAKE_PROGRAM C:/mingw64/bin/mingw32-make.exe)
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

When I click configure I get something like this ( maybe a linker problem?):

The C compiler identification is GNU 4.8.0
Check for working C compiler: C:/mingw64/bin/x86_64-w64-mingw32-gcc.exe
Check for working C compiler: C:/mingw64/bin/x86_64-w64-mingw32-gcc.exe -- broken
CMake Error at C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:61 (message):
  The C compiler "C:/mingw64/bin/x86_64-w64-mingw32-gcc.exe" is not able to
  compile a simple test program.

  It fails with the following output:

   Change Dir: C:/OpenCV2x/build_mingw64/CMakeFiles/CMakeTmp



  Run Build Command:C:/mingw64/bin/mingw32-make.exe
  "cmTryCompileExec4112305880/fast"

  C:/mingw64/bin/mingw32-make.exe -f
  CMakeFiles\cmTryCompileExec4112305880.dir\build.make
  CMakeFiles/cmTryCompileExec4112305880.dir/build

  mingw32-make.exe[1]: Entering directory
  `C:/OpenCV2x/build_mingw64/CMakeFiles/CMakeTmp'

  "C:\Program Files (x86)\CMake 2.8\bin\cmake.exe" -E cmake_progress_report
  C:\OpenCV2x\build_mingw64\CMakeFiles\CMakeTmp\CMakeFiles 1

  Building C object
  CMakeFiles/cmTryCompileExec4112305880.dir/testCCompiler.c.obj

  C:\mingw64\bin\x86_64-w64-mingw32-gcc.exe -o
  CMakeFiles\cmTryCompileExec4112305880.dir\testCCompiler.c.obj -c
  C:\OpenCV2x\build_mingw64\CMakeFiles\CMakeTmp\testCCompiler.c

  Linking C executable cmTryCompileExec4112305880.exe

  "C:\Program Files (x86)\CMake 2.8\bin\cmake.exe" -E cmake_link_script
  CMakeFiles\cmTryCompileExec4112305880.dir\link.txt --verbose=1

  "C:\Program Files (x86)\CMake 2.8\bin\cmake.exe" -E remove -f
  CMakeFiles\cmTryCompileExec4112305880.dir/objects.a

  "" cr CMakeFiles\cmTryCompileExec4112305880.dir/objects.a
  @CMakeFiles\cmTryCompileExec4112305880.dir\objects1.rsp

  Error running link command: The parameter is incorrect

  CMakeFiles\cmTryCompileExec4112305880.dir\build.make:91: recipe for target
  `cmTryCompileExec4112305880.exe' failed

  mingw32-make.exe[1]: *** [cmTryCompileExec4112305880.exe] Error 2

  mingw32-make.exe[1]: Leaving directory
  `C:/OpenCV2x/build_mingw64/CMakeFiles/CMakeTmp'

  makefile:116: recipe for target `cmTryCompileExec4112305880/fast' failed

  mingw32-make.exe: *** [cmTryCompileExec4112305880/fast] Error 2





  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:61 (project)


Configuring incomplete, errors occurred!

Other potential confounders: I also have 32bit mingw.org mingw installed at c:/mingw/ and I have msys installed in c:/mingw/msys/1.0/. When I run cmake I have been selecting "mingw make" as my generator and I have been clicking on the dialog to select a cross-compiler toolchain at which point I specify the about toolchain.cmake file.

Has anyone else compiled OpenCV with mingw-w64 on Windows before?

2013-04-14 15:40:03 -0600 commented answer Confirm that Intel IPP loads in OpenCV 2x

And how do they "use it when the system supports it?" IPP for example no longer seems to use DLL's that are loaded at runtime as they were in OpenCV 1.1?

2013-04-14 15:39:25 -0600 commented answer Confirm that Intel IPP loads in OpenCV 2x

You say this is for OpenCV 2.4.4 Does it apply for 2.4.3? Also Intel's IPPs aren't just for parallelization. Under OpenCV 1.1 they implemented many functions much more quickly including some of the contour finding algorithms. Do these other things that you mention actually rival IPP in terms of performance enhancements?

2013-04-14 15:36:59 -0600 received badge  Supporter (source)
2013-04-12 00:25:47 -0600 received badge  Student (source)
2013-04-11 14:16:12 -0600 received badge  Editor (source)
2013-04-11 14:08:08 -0600 asked a question Confirm that Intel IPP loads in OpenCV 2x

What is the preferred method of confirming that Intel's Integrated Performance Primitives were correctly linked and available at runtime?

For OpenCV 1.x I used to run:

cvGetModuleInfo()

Which would display intel's integrated performance primitive DLLs that were loaded at runtime and I would therefore know that IPP was correctly installed. Now though, I am using OpenCV 2.4.3 statically linked against Intel's Integrated Performance Primitives 7.1. cvGetModuleInfo() doesn't indicate that IPP 7.1 is available.

Is that because this is no longer the right way to check? Or is something else going on?

2013-04-11 07:10:38 -0600 commented question Recompile OpenCV 1.1 for 64 bit Windows 7

Now I'm thinking it might be worth learning cmake, since OpenCV seems to play really nicely with it. Maybe I can reimplement my make file in cmake since i'm going to have to change it all up anyway.

2013-04-10 15:48:49 -0600 commented question Recompile OpenCV 1.1 for 64 bit Windows 7

Thanks @berak. I just git cloned the most recent OpenCV 2.4.9 and am still figuring out how the heading structure works. It seems like the legacy opencv headers that I am familiar with are in: opencv/include/opencv/ but that then just point to other headers that are not where I would expect. Seems like core_c.h for example is in: opencv/modules/core/include/ opencv2/core/ I may have to seriously redo my makefile.

2013-04-10 14:48:40 -0600 commented question Recompile OpenCV 1.1 for 64 bit Windows 7

It seems here: http://docs.opencv.org/trunk/doc/tutorials/core/interoperability_with_OpenCV_1/interoperability_with_OpenCV_1.html that you they dropped the "cv" from the beginning of all the functions? Does that mean I will have to go through and rename every opencv function I call?

2013-04-10 14:45:17 -0600 commented question Recompile OpenCV 1.1 for 64 bit Windows 7

Yeah. That makes sense.

2013-04-10 10:50:40 -0600 answered a question OpenCV 1.x Documentation

I use this OpenCV 1x documentation. Its very useful.

http://www.cs.indiana.edu/cgi-pub/oleykin/website/OpenCVHelp/

2013-04-10 10:41:26 -0600 asked a question Recompile OpenCV 1.1 for 64 bit Windows 7

I have a large code base that I wrote to use OpenCV 1.1. Originally I wrote this for a 32 bit Windows XP box. Now I would like to compile the code for 64 bit Windows 7. Here are some questions:

  • Are there pre-comipiled 64 bit binaries for OpenCV 1.1 that I can link against? If so where?
  • How possible would it be to recompile OpenCV 1.1 from source using mingw-w64 or some other compiler that could target 64bit?
  • How difficult would recompiling be compared to updating my code to run with OpenCV2.x?

My code is hefty, maybe ten thousand lines or so. (For those interested the code is here: http://github.com/samuellab/mindcontrol )

Why am I bothering? Why not run this as a 32 bit binary on 64 bit Windows? Well with the migration to newer hardware I must now link my code against 64 bit binaries. As I understand it, I cannot generate 32 bit code that is statically linked to third party 64 bit libraries. So my conclusion is to recompile everything for 64 bit including OpenCV.

I am on Windows 7 64 bit. I have been using 32bit mingw from mingw.org for compiling for 32 bit targets and the mingw-w64 cross compiler for compiling to 64 bit targets.

Any help would be appreciated.

Thank you.