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函数缺省值与引用学习笔记分享
Feb 10 Python
Python中实现常量(Const)功能
Jan 28 Python
python实现中文转换url编码的方法
Jun 14 Python
python使用正则表达式替换匹配成功的组
Nov 17 Python
详细分析python3的reduce函数
Dec 05 Python
基于numpy中数组元素的切片复制方法
Nov 15 Python
Python基于scipy实现信号滤波功能
May 08 Python
python多进程间通信代码实例
Sep 30 Python
使用keras实现孪生网络中的权值共享教程
Jun 11 Python
利用Vscode进行Python开发环境配置的步骤
Jun 22 Python
如何把python项目部署到linux服务器
Aug 26 Python
Django如何实现密码错误报错提醒
Sep 04 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
一个简单的PHP入门源程序
2006/10/09 PHP
PHP的autoload自动加载机制使用说明
2010/12/28 PHP
Php图像处理类代码分享
2012/01/19 PHP
一段非常简单的让图片自动切换js代码
2006/11/10 Javascript
Jquery 插件开发笔记整理
2011/01/17 Javascript
不同Jquery版本引发的问题解决
2013/10/14 Javascript
javascript 判断字符串是否包含某字符串及indexOf使用示例
2013/10/18 Javascript
AngularJS基于ui-route实现深层路由的方法【路由嵌套】
2016/12/14 Javascript
jquery使用EasyUI Tree异步加载JSON数据(生成树)
2017/02/11 Javascript
Vue.js实现按钮的动态绑定效果及实现代码
2017/08/21 Javascript
Vue2.x中利用@font-size引入字体图标报错的解决方法
2018/09/28 Javascript
微信小程序canvas绘制圆角base64图片的实现
2019/08/18 Javascript
jQuery+Ajax+js实现请求json格式数据并渲染到html页面操作示例
2020/06/02 jQuery
在vue中使用echarts(折线图的demo,markline用法)
2020/07/20 Javascript
AJAX XMLHttpRequest对象创建使用详解
2020/08/20 Javascript
用js实现放大镜效果
2020/10/28 Javascript
[01:15:45]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第一局
2016/02/26 DOTA
[05:43]VG.R战队教练Mikasa专访:为目标从未停止战斗
2016/08/02 DOTA
Python3 入门教程 简单但比较不错
2009/11/29 Python
如何用itertools解决无序排列组合的问题
2017/05/18 Python
python smtplib模块实现发送邮件带附件sendmail
2018/05/22 Python
Flask实现图片的上传、下载及展示示例代码
2018/08/03 Python
Python读取excel指定列生成指定sql脚本的方法
2018/11/28 Python
python求最大值,不使用内置函数的实现方法
2019/07/09 Python
浅谈SciPy中的optimize.minimize实现受限优化问题
2020/02/29 Python
Python常用编译器原理及特点解析
2020/03/23 Python
解决Python数据可视化中文部分显示方块问题
2020/05/16 Python
非洲NO.1网上商店:Jumia肯尼亚
2016/08/18 全球购物
微软澳洲官方网站:Microsoft Australia
2017/01/10 全球购物
介绍一下你对SOA的认识
2016/04/24 面试题
JavaScript实现页面动态验证码的实现示例
2021/03/23 Javascript
中餐厅主管的职责范文
2014/02/04 职场文书
抗洪救灾先进集体事迹材料
2014/05/26 职场文书
KTV门卫岗位职责
2014/10/09 职场文书
2016七夕情人节广告语
2016/01/28 职场文书
详解MySQL主从复制及读写分离
2021/05/07 MySQL