IplImage的解释*img

use*_*723 17 opencv iplimage

我刚刚开始学习OpenCV"使用OpenCV库学习OpenCV计算机视觉".

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

IplImage* img = cvLoadImage("name.type")
Run Code Online (Sandbox Code Playgroud)

虽然这本书解释了它,但我仍然不完全知道究竟是IplImage* img做什么的.

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

Sma*_*ash 25

  • 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;
    
    Run Code Online (Sandbox Code Playgroud)

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

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

cvReleaseImage(&img)如果您不想让内存泄漏,请不要忘记在完成后再做.