#include <afxwin.h>//project->settings->general->Use MFC in a shared DLL
#include "windows.h"
#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
#include "string"
#include "vector"
#include "iostream"
using namespace std;
void FindAllFile(string _path, vector<string>& filenames)
{
CString path = _path.c_str();
CFileFind finder;
BOOL working = finder.FindFile(path + "\\*.*");
while (working)
{
working = finder.FindNextFile();
if (finder.IsDots())
continue;
if (finder.IsDirectory())
{
//递归遍历所有文件夹
//CString::GetBuffer(0)=>string
FindAllFile(finder.GetFilePath().GetBuffer(0), filenames);
}
else
{
string filename = finder.GetFileName();
filenames.push_back(filename);
}
}
}
int main()
{
vector<string> filenames;
string filePath = "C:\\Users\\careyjiang\\Desktop\\test";
FindAllFile(filePath, filenames);
for (vector<string>::iterator itr = filenames.begin(); itr != filenames.end();itr++)
{
size_t potPose = itr->find_last_of('.'); //扩展名
if (itr->substr(potPose, string::npos) == ".jpg")///是jpg的图片
{
IplImage* curImage;
string jpgPath = filePath+ "\\" + (*itr);
curImage = cvLoadImage( jpgPath.c_str(),1);
string bmpPath =filePath+ "\\" + itr->substr(0,potPose) + ".bmp" ;
cvSaveImage(bmpPath.c_str(),curImage);
cvReleaseImage(&curImage);
}
}
}opencv 某path下 .jpg -> .bmp
最新推荐文章于 2021-01-07 20:09:12 发布
本文介绍了一个使用C++编写的程序,该程序能够遍历指定目录及其子目录下的所有文件,并将找到的.jpg格式图片转换为.bmp格式。此程序利用了OpenCV库进行图片读取与保存,展示了如何通过递归方式搜索文件并处理图像。

6844

被折叠的 条评论
为什么被折叠?



