Change dpi of an image in OpenCV

10,047

Solution 1

You need to edit the image meta data libexif(c) or exiv2 (c++)

Solution 2

OpenCV does not support meta-data mangling like this. You need to use another tool to re-set the DPI or consider incorporating libjpeg directly.

Another option is to take the OpenCV jpeg writer code and change it according to your needs.

Share:
10,047

Related videos on Youtube

user1430186
Author by

user1430186

Updated on June 04, 2022

Comments

  • user1430186
    user1430186 about 2 years

    When I open an image in OpenCv (which may be of 300 dpi, 72 dpi etc.), the dpi of the image is automatically changed to 96 dpi. I want to variate this dpi. Please help. Thanks in advance...

    #include "stdafx.h"
    #include <cv.h>
    #include <cxcore.h>
    #include <highgui.h>
    #include <iostream>
    using namespace std;
    int _tmain(int argc, _TCHAR* argv[])
    {
        IplImage *img1=cvLoadImage("input.jpg");
        cvSaveImage("output.jpg",img1);
        return(0);
    }