简体   繁体   中英

c# or python for calling C++ DLLs for hardware control

I am currently doing a project which involves controlling couple of maxon DC motors, reading from force sensors, and image processing in windows OS. I am trying to find the right programming language or combination of them in order to get high speed communication rate with hardwares as well as real-time image processing. The application needs to have GUI. It also needs to be multi-threaded. My options that I am investigating are:

1) C++ and QT for GUI - I couldn't get Qt working with Opencv. I was unable to compile Opencv for Qt.

2) C# with Emgucv - I am still struggling to get what I want using Emgucv.

3) Making DLL for the image processing part in C++ with Opencv and use in c# for GUI - all of the hardwares are working in C# through DLLs.

4) Making DLL for the maxon DC motor controls in C++ and use in python for GUI - the good about this solution is that Opencv works very well with python. But I am not sure whether python is the right language for real-time hardware communication.

5) Matlab - very slow

I very much like to use just one language, and for doing so, my only choice is number 1 which I cannot get it running. So my questions:

Do you know any other solution? If I have to choose another language as well as C++ to make GUI and also be able to have multi-threading easily (like python and backgroundworker in C#), which one do you recommend c# or python, or any other? Speed is important for this application.

Thanks in advance

Option 1 sound the best, c++ for the speed, QT for a nice UI + cross platform support. I have also had trouble with QT and OpenCV in the past. I have successfully managed to use OpenCV in Visual Studio 2010 with a QT add-in.

A good guide for OpenCV is here - http://opencv-srf.blogspot.co.uk/2013/05/installing-configuring-opencv-with-vs.html

Plenty of stuff about getting QT working in VS as well - How to build Qt for Visual Studio 2010

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM