Sogou Do it yourself using C++ to write the image processing software (do not call the external package)

Label image processingalgorithmC++
9538 people read comment(24) Collection Report

When it comes to image processing software, what do you think? Photoshop? CorelDRAW? Tuxiuxiu? Or ACDSee image editing module?

When it comes to the realization of digital image processing algorithms, you will think of what? Matlab? OpenCV?

Can you use C++ to write a small image processing software, to achieve a number of image processing algorithms, and do not call any of the external package? This can have!

Many years ago, even when the home Jun is still in school, had tried to write the original version of the VC++ 6MagicHouse(a small image processing software). Later when I wrote my first image processing algorithm, I updated it with VC++ 2005. After a long period of time, it has been the pressure on the bottom. I fought in Matlab was, after all, lazy is to promote the human innovation is one of the two major driving forces, who have matlab then saves time and effort it. But we have to admit: first of all, Matlab compared to C++, in fact, very limited in industrial applications. Secondly, it hides the details too much. Of course, you don't have memory management and to worry about, but also no need for image file encoding and decoding, but have been using MATLAB always have sense of "import and assembly of the fortress. Can not come to a "full self-reliance" it? Using these days in my spare time, I updated my MagicHouse software in Studio Visual 2013. (hearStudio VisualHas been out of the 2015, Anyway I think there should be no injury. The following is a brief introductionMagicHouse softwareThe basic functions provided.

First come and see GUI first.

Pure C + + without calling any external package, the benefits are brick by brick completely self build, the downside is that I can't guarantee the efficiency of all the algorithms are optimal. At present, the software is still only supportedBMPandJPGThe two format (write encoding function of the child can not afford to hurt ah). Programs in the browse mode includeTen pictures in the way: downward scan, dual scan, fly right into, bilateral fly in, vertical blinds, horizontal blinds, vertical bars, horizontal bar, rectangular effect, it rains. Here are some effectsThe original Xi'an Qinglong temple is cherry blossom, bloggers shooting-) -

The following is the realization of the software part of the image processing algorithm demo:

Image geometric transformation of rotation (bilinear interpolation algorithm) (artwork is the Guangzhou Opera House, by the blogger's photographer friend shooting)To

The exponential transformation of the gray scale transformationTo

The mosaic image filter (original Guangzhou Nansha wetland, taken by the blogger)To

The effect of water mist image filter (composite direction)To

Image filterColor pen effectTo

The image of the seed filling algorithm (the original is the Burma temple, Gan Pu by bloggers shooting)To

Fast Fu Liye transform for orthogonal transformationTo

Orthogonal transform of image wavelet decomposition (two layer)

Multi region contour tracking algorithmTo

Watershed image segmentation algorithm (the original is the Great Ocean Road in Australia, by the blogger, shooting)

Image enhancement processingGauss smoothing filterTo

The median filtering method for image noise reduction by salt and pepper noise pollutionTo

Advanced image enhancement processing to protect the texture of the noise reduction algorithm: Based on the nonlinear diffusion filtering PM equation

Advanced image enhancement processing to protect the texture of the noise reduction algorithm: Based on the total variation of the TV noise reduction algorithm

Image encryption algorithm of image based on Hilbert curve set encryption (middle), and cat map based image set encryption (pictured right);

What can not see, to the effect:)

Secret graph hiding algorithm based on chaotic image fusion

The following is the density map hidden after treatment (Note that in order to allow the reader to see hidden inside the image, I deliberately adjusting parameters to let it show, in fact is can be done completely hidden, so the image will be and the original template image looks exactly the same). The image restoration after decryption.


Expansion of color image based on morphological method for image processing

The above list is only part of the function provided by the software, limited space, here is not one by one, in the future I will continue to improve the software, to achieve more interesting algorithm.

Special note: House Magic based on the VC++ 2005 version of the source code can be from my book "Digital image processing technology and the practice of C++ Visual:"Supporting the CD-ROM to get. This kind of chapter:Http://

VS 2013 version is still in the test, is now temporarily unable to provide.

Now 2013 edition upgrade process and some function there is no debugging through, now can only provide the following trial version (Note 1: some functions cannot be executed; 2) morphology of the test images in addition to corrosion and expansion to binary image, otherwise it is impossible to see the effect) because is not completely finished, the 2013 edition of the code temporarily unable to provide, the following program if unable to perform in the comments below. 2005 version of the source code online can be down, do not buy books, but also do not have to find me to learn to use Baidu, if Baidu is not used, then I guess I give you the source code, you can not understand


step on
Guess you're looking for
View comments
* the above user comments only represent their personal views, does not represent the views or position of the CSDN website
    personal data
    • Visit653606 times
    • Integral:Eleven thousand four hundred and ninety-one
    • Grade
    • Rank:658th name
    • Original224
    • Reproduced:8
    • Translation:0
    • Comments:2906 article
    Personal profile
    Absorbedimage processing,Data mining and machine learning. Cooperation please message or email to, will be replaced # @. Language is good atC/C++, Java, Prolog, Haskell, a small amount of Python and VB. Like to useRData mining and analysis, usingMatlabTo study the image algorithm.
    Blog column
    My books
    Exchange learning group for image processing
    Scan under two-dimensional code can be added
    Image processing learning group (529549320)
    "Click or scan two-dimensional code to add image processing to exchange learning group
    Latest comments