c++结合opencv如何实现读取多张图片并显示
更新时间:2022年11月11日 17:02 点击:243 作者:大神之路@CV
方法一
主要函数
void cv::glob(String pattern,std::vector<string>&result,bool recursive=false)
分析
String pattern:绝对路径下的照片
pattern = "/home/Data/data/*.jpg"
: 选择*.jpg这一类的图片std::vector< cv::String > & result
:这里必须为CV的String,即路径被存在string类型的vector中bool recursive
:可省去,当recursive为false时,仅仅遍历指定文件夹内符合模式的文件;当recursive为true时,会同时遍历指定文件夹的子文件夹
头文件AI.h
#pragma once #include <opencv2/opencv.hpp> using namespace cv; using namespace std; class Ve { public: vector<Mat> ReadImage(cv::String pattern); };
cpp文件:
#include "AI.h" #include <iostream> #include <opencv2/opencv.hpp> using namespace cv; using namespace std; int main() { cv::String pattern = "E:\\VSprojeect\\test\\test\\images\\*.png"; Ve ve; vector<Mat> img = ve.ReadImage(pattern); return 0; } vector<Mat> Ve::ReadImage(cv::String pattern) { vector<cv::String> fn; glob(pattern, fn, false); vector<Mat> images; size_t count = fn.size(); //number of png files in images folder for (size_t i = 0; i < count; i++) { images.emplace_back(cv::imread(fn[i])); imshow("img", imread(fn[i])); //imwrite("E:\\VSprojeect\\testyolo\\saveimg\\",images); waitKey(1000); destroyAllWindows(); } return images; }
方法二
当文件夹的图片名称没有规律或者有规律时(通用方法,万能模板)
#include<stdio.h> #include "opencv2/opencv.hpp" #include <opencv2\highgui\highgui.hpp> #include<string> #include<vector> #include<iostream> using namespace cv; using namespace std; void main() { String path = "E:\\VSprojeect\\get_muti_images\\images";//文件夹路径 vector<String>src_test; glob(path, src_test, false);//将文件夹路径下的所有图片路径保存到src_test中 if (src_test.size() == 0) {//判断文件夹里面是否有图片 printf("error!!!\n"); exit(1); } for (int i = 0; i < src_test.size(); i++) {//依照顺序读取问价下面的每张图片,并显示 Mat image = imread(src_test[i]); imshow("image", image); waitKey(1000); image.release();//将Mat释放 destroyAllWindows(); } }
方法三
文件夹下图片有序时,OpenCV读取方法
#include<stdio.h> #include "opencv2/opencv.hpp" #include <opencv2\highgui\highgui.hpp> #include<string> #include<iostream> using namespace cv; using namespace std; void main(){ char fileName[500]; Mat pic; for (int i = 0; i < 110; i++) {//文件夹下面一共有110张图片 printf("start deal:%d\n", i + 1); sprintf_s(fileName, ".//picture//%d.bmp", i);//提取出文价夹下面的每张图片路径,放到fileName pic = imread(fileName);//读取fileName路径下面的图片 imshow("tpian", pic);//显示图像 waitKey(1000);//显示延时 } pic.release();//将Mat释放 }
以上为个人经验,希望能给大家一个参考,也希望大家多多支持猪先飞。
原文出处:https://blog.csdn.net/wxy2020915/article/details/126869408
相关文章
- 这篇文章主要介绍了python-opencv-画外接矩形框的实例代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-09-04
- vector是表示可以改变大小的数组的序列容器,本文主要介绍了C++STL标准库std::vector的使用详解,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2022-03-06
使用PHP+JavaScript将HTML页面转换为图片的实例分享
这篇文章主要介绍了使用PHP+JavaScript将HTML元素转换为图片的实例分享,文后结果的截图只能体现出替换的字体,也不能说将静态页面转为图片可以加快加载,只是这种做法比较interesting XD需要的朋友可以参考下...2016-04-19- 这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
- 今天小编在这里就来给各位Photoshop的这一款软件的使用者们来说说把古装美女图片转为细腻的工笔画效果的制作教程,各位想知道方法的使用者们,那么下面就快来跟着小编一...2016-09-14
- 这篇文章主要介绍了C++中取余运算的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-23
- 这篇文章主要介绍了Python 图片转数组,二进制互转操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-09
- 这篇文章主要介绍了C++ string常用截取字符串方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-25
- 本文通过例子,讲述了C++调用C#的DLL程序的方法,作出了以下总结,下面就让我们一起来学习吧。...2020-06-25
- php如何实现抓取网页图片,相较于手动的粘贴复制,使用小程序要方便快捷多了,喜欢编程的人总会喜欢制作一些简单有用的小软件,最近就参考了网上一个php抓取图片代码,封装了一个php远程抓取图片的类,测试了一下,效果还不错分享...2015-10-30
- 本篇文章主要介绍了C++中四种加密算法之AES源代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。...2020-04-25
jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮
jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮...2013-10-13- 整数拆分,指把一个整数分解成若干个整数的和。本文重点给大家介绍C++ 整数拆分方法详解,非常不错,感兴趣的朋友一起学习吧...2020-04-25
- 在php中解析xml文档用专门的函数domdocument来处理,把json在php中也有相关的处理函数,我们要把数据xml 数据存到一个数据再用json_encode直接换成json数据就OK了。...2016-11-25
- 下面小编就为大家带来一篇利用JS实现点击按钮后图片自动切换的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-10-25
- 这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
- 这篇文章主要介绍了C++万能库头文件在vs中的安装步骤(图文),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-23
- Photoshop的这一款软件小编相信很多的人都已经是使用过了吧,那么今天小编在这里就给大家带来了用Photoshop软件制作枪战电影海报的教程,想知道制作步骤的玩家们,那么下面...2016-09-14
- 这篇文章主要为大家详细介绍了js实现上传图片及时预览的相关资料,具有一定的参考价值,感兴趣的朋友可以参考一下...2016-05-09
- 图片剪裁是常用的方法,那么如何通过4坐标剪裁图片,本文就详细的来介绍一下,感兴趣的小伙伴们可以参考一下...2021-06-04