I am not familiar with C++(but I want to learn it), for image processing purposes I am use MATLAB and it is usually enough for me. For whih image processing purposes C++ can have advantage over the MATLAB?
A valuable and very detailed answer is available by following https://stackoverflow.com/questions/20513071/performance-tradeoff-when-is-matlab-better-slower-than-c-c
Others references of interest that confirm the above comparison:
Hello Vladimir, I think for image processing is more efficient from development and time effort to learn OpenCV. A lot of libraries to use and friendly enviroment. http://www.allitebooks.com/ Without no doubt, you will find interesting this website!
Based on my understanding, I think MATLAB and C++ both have their advantages; it is difficult to compare these two programming languages. For examples, when you want to build the decision tree, you need to share some space in advance before you creating the trees; for the MATLAB, you could construct the trees as you like without pre-spend some space for it. For the deep learning algorithm, C++ could directly program in GPU, but the MATLAB do not contain these functions.
C++ can be deeply optimized by yourself and can be accelerated by CUDA. Matlab is usually slower in "for" like iterations. If you want to implement your algorithm with real-time performance and smaller memory cost, C/C++ is your choice.
Every language have advantages and disadvantages. In the case of C++ and Mathlab, we can say that with Matlab it's easier start to testing your ideas, but when you want to make a real product or software, you translate you Mathlab test to a more powerful language, like C++. Mathlab is used mostly for fast prototype and when you are sure of your idea you can spend more time writing a more complex and efficient program. So, for scientific purposes, Mathlab is a beautiful language as C++ too. If you work with image processing, there are some librarys for C++ that can help you a lot, like OpenCV, CImg (for handle images formats and operations), ImageMagic, and others.
There is none. The life is too short for using low-level programming languages such as C++. Use Matlab or Python (matplotlib, numpy, scipy ... -- look at http://python-xy.github.io/). They have plenty of routines in Fortran, C, C++ written by best programmers, checked and optimized. There is no reason to re-invent the wheel.
Agree with Mohammed. For concrete realization of real time processing there could be some advantage. However, when you solve various scientific problems the speed is the speed of program development. Specialized computing languages like Matlab or Python are the best. For plenty of reasons I prefer Python.
As I already mentioned, Python (and Matlab) scientific routines are in fact compiled subroutines written in Fortran, C or C++. So they are quite fast. There are also some ways to improve already high speed of execution of Python programs, although seldom necessary.