Explanation of IplImage* img



我刚开始学习OpenCV,学习的是"使用OpenCV库学习OpenCV计算机视觉"。

在演示如何显示图片的第一个例子中,它有一条线

IplImage* img = cvLoadImage("name.type")

尽管书中对此进行了解释,但我仍然不完全知道IplImage* img到底是做什么的。

cvLoadImage是否将图像加载到IplImage所指向的img?有人能向我解释一下吗?感谢

  • img是变量的名称,也可以是blahblahblah

  • IplImage是变量的类型,它只是一个struct,它包含图像数据本身以及图像上的一些信息(大小、颜色深度等);

    typedef struct _IplImage {
    int                  nSize;
    int                  ID;
    int                  nChannels;
    int                  alphaChannel;
    int                  depth;
    char                 colorModel[4];
    char                 channelSeq[4];
    int                  dataOrder;
    int                  origin;
    int                  align;
    int                  width;
    int                  height;
    struct _IplROI*      roi;
    struct _IplImage*    maskROI;
    void*                imageId;
    struct _IplTileInfo* tileInfo;
    int                  imageSize;
    char*                imageData;
    int                  widthStep;
    int                  BorderMode[4];
    int                  BorderConst[4];
    char*                imageDataOrigin;
    } IplImage;
    

有关IplImage的更多信息:关于IplImage 的其他问题

  • cvLoadImage提供了一个指向IplImage的指针,这意味着它在加载它并返回它的位置时会创建一个IplImage

如果您不想内存泄漏,请不要忘记在完成cvReleaseImage(&img)之后再执行它。

相关内容

  • 没有找到相关文章