OpenCV 2.4.13 for Windows Phone 10

asked 2016-12-05 07:43:46 -0500

Marchius gravatar image

Greetings, I've been lurking around these forums to find a solution to my problem but there doesn't seem to be any way to solve it.

For a personal project I need to make my code work on a Windows Phone 10 (UWP). As I understand (might be mistaken here) Microsoft dropped the support for it somewhere around the last year. The pre-compiled libraries available on the OpenCV site only work for the x64/x86 builds, for the phone part I need to compile the libraries for the ARM architecture (correct me if I say anything wrong). One problem I've had lies with CMake (tried both 3.4 and 3.7 versions) when trying to compile OpenCV 2.4.13 sources with both VS2013 and VS2015 (community version) I get this warning:

CMake Warning at cmake/OpenCVPackaging.cmake:23 (message):
  CPACK_PACKAGE_VERSION does not match version provided by version.hpp
  header!
Call Stack (most recent call first):
  CMakeLists.txt:1105 (include)

and during compilation there are either some errors oo only few dll's are created (e.g. only core, flann and imgproc which aren't enough since I need also the nonfree and ml modules for my application to work).

What I'd like to know (and possibly understand) is why the compilation is failing (and possibly how to fix it) and also how to make OpenCV 2.4.13 work on a UWP (a Windows Phone 8.1 might do as well, if nothing can be done for Windows Phone 10) using C++ code.

A couple of notes:

  • I've seen there are various things for the 8.1 version but I still can't figure out how to make them work on a mobile device;
  • I've never really programmed for Windows Phone so I might be missing something important;
  • I've tried running the code (simple example only creating an OpenCV Mat) using the non-ARM libraries and the emulator crashes (no wonder, but well);
  • The libraries (non-ARM) are linked/included correctly by the project;
  • The code works just fine for a Win32 console App (using Visual Studio Community 2013) and the OpenCV 2.4.13 distribution);
  • The project is written in C++, in case someone wants to suggest using Emgu I've tried using it (downloaded via NuGet) but failed miserably (pointers are appreciated if this is your suggestion).

Another question which would solve the problem right away: do pre-compiled libraries for the ARM architecture of the OpenCV 2.4.13 build exist for either Visual Studio 2013 or 2015?

Thanks in advance for any help you guys can provide, I've been working on this project for quite some time now and I'm only missing this final step to finish it so any help is really appreciated.

I also apologize for my bad english, if anything wasn't explained in an understandable way just let me know and I'll try to re-phrase it.

Again, thanks for any help you can/will provide.

edit retag flag offensive close merge delete