【OpenCV归纳】4 关于HighGUI



通过HighGUI(high-level graphical user interface)可以实现打开窗口、显示图像、读出和写入图像文件,处理鼠标、光标、键盘事件。而HighGUI主要分成“视频输入/输出”、“图像输入/输出”和“GUI工具”,分别在cacap*、grfmt*和window*源文件中实现。

int cvNamedWindow 
( const char* name, 
  int flags=CV_WINDOW_AUTOSIZE 
);

int cvNamedWindow
( const char* name,
  int              flags=CV_WINDOW_AUTOSIZE
);

第一个参数用来表示新窗口的名称,这个名称显示在窗口的顶部,同时用作HighGUI中其他函数调用窗口的句柄。第二参赛是个标志,用来表示是否需要使窗口大小自动适应读入的图像大小。释放可以用cvReleaseImage()和cvDestroyWindow()来实现。

       载入图像可以用cvLoadImage(),当打开一副图像时,该函数并不分析文件扩展名,而是通过分析图像文件的前几个字节来确定图像的编码格式。注意:当cvLoadImage()读入失败时,并不会产生一个运行时错误,而是返回一个空指针。与cvLoadImage()对应的函数是cvSaveImage(),其实现了保存图像功能。

IplImage* cvLoadImage 
( const char* filename, 
  int              iscolor=CV_LOAD_IMAGE_COLOR 
); 
 
int cvSaveImage 

 const char*   filename, 
 const CvArr* image 
);  
 IplImage* cvLoadImage
( const char* filename,
  int              iscolor=CV_LOAD_IMAGE_COLOR
);

int cvSaveImage
(
  const char*   filename,
  const CvArr* image
);

代码中的CvArr是C语言的风格,功能与面向对象语言中基类类似的结构。同样的显示图像可以用cvShowImage()。我比较喜欢读代码所以在此贴一段标准的实例吧。

int main(int argc,char** argv) 

    // Create a named window with the name of the file. 
    cvNamedWindow(argv[1],1]);

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值