python或C++读取指定文件夹下的所有图片


Posted in Python onAugust 31, 2019

本文实例为大家分享了python或C++读取指定文件夹下的所有图片,供大家参考,具体内容如下

1.python读取指定文件夹下的所有图片路径和图片文件名

import cv2
from os import walk,path

def get_fileNames(rootdir):
 data=[]
 prefix = []
 for root, dirs, files in walk(rootdir, topdown=True):
  for name in files:
   pre, ending = path.splitext(name)
   if ending != ".jpg" and ending != ".jepg" and ending != ".png":
    continue
   else:
    data.append(path.join(root, name))
    prefix.append(pre)
 return data, prefix



if __name__ == '__main__':

 images, preifx = get_fileNames('/home/yasin/target_pics') #得到指定文件夹下的图片,例如.jpg,.jepg或.png等,可根据上述代码更改
 for i in range(len(images)):
  img = cv2.imread(images[i])
  w = img.shape[1]
  l = img.shape[0]
  img_res = cv2.resize(img, (w*2,l*2)) #对图片操作后
  cv2.imwrite("./resized_wb/{}.jpg".format(preifx[i]),img_res)

2.C++得到指定文件夹下的所有图片并返回读取Mat值

#include <stdio.h>
#include <highgui.h>
#include <opencv2/opencv.hpp>
#include <cv.h>

using namespace std;
using namespace cv;


//读取指定文件下的所有图片
vector<Mat> read_images_in_folder(cv::String pattern)
{
 vector<cv::String> fn;
 glob(pattern, fn, false);

 vector<Mat> images;
 // vector<cv::String>&prefix //
 size_t count = fn.size(); //number of png files in images folder
 for (size_t i = 0; i < count; i++)
 {
  // prefix.push_back(fn[i].substr(20, 4)); // 此处可以得到文件名的子字符串,可以获取图片前缀
 images.push_back(imread(fn[i])); //直读取图片并返回Mat类型
 //imshow("img", imread(fn[i]));
 //waitKey(1000);
 }
 return images;
}

int main()
{

 cv::String pattern = "./*.jpg";

 //遍历得到目标文件中所有的.jpg文件
 vector<Mat> images = read_images_in_folder(pattern);

 for (int i = 0; i < images.size(); i++)
 {
 imshow("img", images[i]);
 waitKey(1000);
 }
 // system("pause");
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简单谈谈Python的pycurl模块
Apr 07 Python
通过python的matplotlib包将Tensorflow数据进行可视化的方法
Jan 09 Python
pandas DataFrame 删除重复的行的实现方法
Jan 29 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
Apr 06 Python
centos7之Python3.74安装教程
Aug 15 Python
Numpy的简单用法小结
Aug 28 Python
python 实现简单的FTP程序
Dec 27 Python
python tqdm 实现滚动条不上下滚动代码(保持一行内滚动)
Feb 19 Python
python简单实现最大似然估计&amp;scipy库的使用详解
Apr 15 Python
python 数据库查询返回list或tuple实例
May 15 Python
PyCharm Ctrl+Shift+F 失灵的简单有效解决操作
Jan 15 Python
用pip给python安装matplotlib库的详细教程
Feb 24 Python
解决Django删除migrations文件夹中的文件后出现的异常问题
Aug 31 #Python
Django项目后台不挂断运行的方法
Aug 31 #Python
python遍历文件目录、批量处理同类文件
Aug 31 #Python
解决Pycharm 包已经下载,但是运行代码提示找不到模块的问题
Aug 31 #Python
python批量处理文件或文件夹
Jul 28 #Python
在pycharm中显示python画的图方法
Aug 31 #Python
关于django 1.10 CSRF验证失败的解决方法
Aug 31 #Python
You might like
索尼SONY ICF-SW7600GR电路分析与改良
2021/03/02 无线电
PHP 显示客户端IP与服务器IP的代码
2010/10/12 PHP
php微信支付之公众号支付功能
2018/05/30 PHP
浏览器图片选择预览、旋转、批量上传的JS代码实现
2013/12/04 Javascript
js propertychange和oninput事件
2014/09/28 Javascript
node.js中的fs.link方法使用说明
2014/12/15 Javascript
jQuery删除一个元素后淡出效果展示删除过程的方法
2015/03/18 Javascript
底部悬浮通栏可以关闭广告位的实现方法
2016/06/01 Javascript
js格式化时间的简单实例
2016/11/27 Javascript
老生常谈jacascript DOM节点获取
2017/04/17 Javascript
基于vue2框架的机器人自动回复mini-project实例代码
2017/06/13 Javascript
js使用generator函数同步执行ajax任务
2017/09/05 Javascript
mui上拉加载更多下拉刷新数据的封装过程
2017/11/03 Javascript
基于VUE移动音乐WEBAPP跨域请求失败的解决方法
2018/01/16 Javascript
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
2018/08/17 Javascript
小程序从手动埋点到自动埋点的实现方法
2019/01/24 Javascript
vue-cli随机生成port源码的方法
2019/09/02 Javascript
如何在vue中使用kindeditor富文本编辑器
2020/12/19 Vue.js
[46:38]完美世界DOTA2联赛PWL S2 Magma vs PXG 第三场 11.28
2020/12/02 DOTA
Python 的描述符 descriptor详解
2016/02/27 Python
Python-嵌套列表list的全面解析
2016/06/08 Python
Python简单操作sqlite3的方法示例
2017/03/22 Python
Python实现的knn算法示例
2018/06/14 Python
python requests证书问题解决
2019/09/05 Python
python三引号如何输入
2020/07/06 Python
松本清官方海外旗舰店:日本最大的药妆连锁店
2017/11/21 全球购物
德国排名第一的主题公园门票网站:Attraction Tickets Direct
2019/09/09 全球购物
荷兰DOD药房中文官网:DeOnlineDrogist
2020/12/27 全球购物
工商技校毕业生自荐信
2013/11/15 职场文书
计算机通信工程专业毕业生推荐信
2013/12/24 职场文书
教师学习培训邀请函
2014/02/04 职场文书
财务学生的职业生涯发展
2014/02/11 职场文书
2014年综治宣传月活动总结
2014/04/28 职场文书
房屋分割离婚协议书范本
2014/12/01 职场文书
2015年信息宣传工作总结
2015/05/26 职场文书
游戏开发中如何使用CocosCreator进行音效处理
2021/04/14 Javascript