批量处理图像
来源:互联网 发布:天刀人生至此知何似 编辑:程序博客网 时间:2024/06/01 20:09
在机器学习算法中,有时需要对图像进行resize等操作,如果一张一张图像操作,显然不现实。
下面介绍一下如何处理:
一、获取当前文件夹下的图像名称
比如当前文件夹中有几百上千幅图像,获取全部图像的名字就需要用到 批处理
步骤很简单:
1.新建一个txt文档
2.在文档中输入 DIR *.* /B >list.txt ,复制粘贴即可
3.更改txt文件的后缀名为.bat(更改后缀名后的文件图标是一大一小两个齿轮)
4.将bat文件放在当前文件夹下,然后双击该bat
5.生成文件 list.txt,该txt文件中记录了当前文件夹所有图像的名字,如图
其中list.txt中的内容如图:
二、resize图像尺寸
1、获取list.txt中的图像名称
getline(finHardSam, ImgName)
2、resize即可
不多说,上代码
#include "stdafx.h"#include <opencv2/opencv.hpp>#include<fstream>using namespace cv;using namespace std;void main(){String path = "E:\\haar\\Pos\\";string ImgName; //图片名(绝对路径)ifstream finHardSam(path + "list.txt");//HardExample负样本的文件名列表int num = 411;for (int i = 0; i < num && getline(finHardSam, ImgName); i++){std::cout << "难样本--处理图像:" << ImgName << endl;ImgName = path + ImgName;//加上正样本的路径名Mat src = imread(ImgName);//读取图片Mat trainImage;resize(src, trainImage, Size(24, 48));//调整尺寸大小Size(w, h)imwrite("E:\\haar\\Posnom\\" + to_string(i) + ".jpg", trainImage);}}
补充:
1、在 一 中的批处理命令是获取当前文件夹中的图像名称的,如果获取当前文件中所有图像的路径,则需要将批处理命令改为
@echo off & setlocal EnableDelayedExpansionfor /f "delims=" %%i in ('"dir /a/s/b/on *.*"') do (set file=%%~fiset file=!file:/=/!echo !file! >>list.txt)
其余操作,相同。
2、今天又了解到一个名为 Editplus的软件(请原谅我孤陋寡闻),此软件功能强大,如果我们想在list文件中图像名称后面添加其他图像信息,可利用此软件:
用EditPlus打开该文件,search-->replace-->在'find what‘’(查找项)里输入"\n" (不包含引号)-->在replace(替换)里输入" 24*24\nimage/"(不包含引号),同时记得勾选regular expression(正则表达式)一项-->点击‘replace all’。
结果如图:
阅读全文
0 0
- 批量处理图像
- 批量处理图像
- PS批量处理图像
- 批量处理图像
- 图像大小批量切分处理
- 批量处理图像的大小-MATLAB
- python数字图像处理(6):图像的批量处理
- python数字图像处理(6):图像的批量处理
- python数字图像处理(6):图像的批量处理
- Matlab实现批量处理图像的两种方法
- MATLAB实现批量处理图像图片的两种方法
- Matlab实现批量处理图像的两种方法
- Matlab实现批量处理图像的两种方法
- opencv3.0 批量对图像进行处理(C++版)
- Python学习06_图像的批量处理
- Matlab图像处理常用语句(1)--批量读取文件夹内图像
- 批量处理
- 批量处理
- 重装主机去安全加固
- iOS GCD概要
- android学习笔记之碎片
- iOS不同版本适配问题(#ifdef __IPHONE_7_0)
- Atitit q2016 qa doc list on home ntpc.docx
- 批量处理图像
- CodeForces
- Launcher 读取第三方图标颜色添加相应的背景
- Python 2.7 中文处理
- 64位Windows 7 安装配置CUDA7.5/8.0+cuDNN5.0图文详解
- 值得看的十大机器学习公开课
- hadoop笔记
- canvas基础命令
- JavaScript判断浏览器版本