[f5330a]: doc / tutorials / introduction / load_save_image / load_save_image.rst  Maximize  Restore  History

Download this file

122 lines (75 with data), 3.5 kB

Load, Modify, and Save an Image


We assume that by now you know how to load an image using :imread:`imread <>` and to display it in a window (using :imshow:`imshow <>`). Read the :ref:`Display_Image` tutorial otherwise.


In this tutorial you will learn how to:


Here it is:


  1. We begin by:

    • Creating a Mat object to store the image information
    • Load an image using :imread:`imread <>`, located in the path given by imageName. Fort this example, assume you are loading a RGB image.
  2. Now we are going to convert our image from BGR to Grayscale format. OpenCV has a really nice function to do this kind of transformations:

    cvtColor( image, gray_image, CV_BGR2GRAY );

    As you can see, :cvt_color:`cvtColor <>` takes as arguments:

    • a source image (image)
    • a destination image (gray_image), in which we will save the converted image.
    • an additional parameter that indicates what kind of transformation will be performed. In this case we use CV_BGR2GRAY (because of :imread:`imread <>` has BGR default channel order in case of color images).
  3. So now we have our new gray_image and want to save it on disk (otherwise it will get lost after the program ends). To save it, we will use a function analagous to :imread:`imread <>`: :imwrite:`imwrite <>`

    imwrite( "../../images/Gray_Image.jpg", gray_image );

    Which will save our gray_image as Gray_Image.jpg in the folder images located two levels up of my current location.

  4. Finally, let's check out the images. We create two windows and use them to show the original image as well as the new one:

    namedWindow( imageName, CV_WINDOW_AUTOSIZE );
    namedWindow( "Gray image", CV_WINDOW_AUTOSIZE );
    imshow( imageName, image );
    imshow( "Gray image", gray_image );
  5. Add the waitKey(0) function call for the program to wait forever for an user key press.


When you run your program you should get something like this:

Load Save Image Result 1

And if you check in your folder (in my case images), you should have a newly .jpg file named Gray_Image.jpg:

Load Save Image Result 2

Congratulations, you are done with this tutorial!

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks