当前位置:   article > 正文

【Opencv(C++)】调用Easyx单窗口显示多幅图像_基于easyx的opencv全功能实现

基于easyx的opencv全功能实现

        玩图像处理的时候发现处理结果总是单张图像单个窗口,于是封装了一个ShowImage方法实现多图单窗口输出。

        Tip:首先需要安装easyx库才能包含graphics头,easyx安装直接到easyx官网下载运行安装即可。

  1. #include <opencv2/opencv.hpp>
  2. #include <vector>
  3. #include <graphics.h>
  4. using namespace cv;
  5. using namespace std;
  6. void ShowImage(int num) { //通过改变num值改变同窗口图片数
  7. vector<IMAGE> src(num);
  8. int width = 400; //可以通过改变宽高实现改变图片显示的大小
  9. int height = 300;
  10. initgraph(width * (num > 1 ? 2 : 1) + 1, height * (num / 2 + num % 2) + 1, 1);
  11. for (int i = 0; i < num; ++i) {
  12. char dst[10];
  13. sprintf_s(dst, "%d.jpg", i+1); //此处设置图片名称为1.jpg、2.jpg
  14. loadimage(&src[i], dst, width, height);
  15. putimage((width + 1) * (i % 2), (height + 1) * (i / 2), &src[i]);
  16. }
  17. }
  18. int main() {
  19. Mat rgb, hsv;
  20. rgb = imread("1.jpg");
  21. cvtColor(rgb, hsv, COLOR_BGR2HSV);
  22. imwrite("2.jpg", hsv);
  23. ShowImage(2);
  24. while (1);
  25. closegraph();
  26. return 0;
  27. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/94230
推荐阅读
相关标签
  

闽ICP备14008679号