[深度学习]怎样使尺寸大小不一样的图片变为统一的size的C++程序

/*******************************************************************************************************************
*文件功能:
*      1---用于用对基于caffe深度学习框架的图片进行预处理
*      2---从文件夹中连续的读取图片,然后将size和后缀名不一样的图片修改为size和后缀名一样的图片
*      3---并将修改之后的规则图片保存在aft_train文件夹下面(这些图片可直接用于训练样本)
*开发环境:
*      win10+vs2013+OpenCv2.4.8
*时间地点:
*      陕西师范大学 2016.10.28
********************************************************************************************************************/
#include<stdio.h>
#include<iostream>

#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/imgproc/imgproc.hpp>

using namespace std;
using namespace cv;

/*******************************************************************************************************************
*模块说明:
*        控制台应用程序的入口函数---Main函数
********************************************************************************************************************/
int main(int argc,char** argv)
{
	char strFilename[100];                                            //【1】定义一个字符数组保存----图片的存储路径
	char strWindowname[100];                                          //【2】定义一个字符数组保存----用于动态更新窗口的窗口名
	char strFilenameAft[100];
	for (int i = 1; i <= 50; i++)
	{
		sprintf_s(strFilename,"D:\\myself\\train\\crack%d.jpeg", i); //【3】将图片的路径名动态的写入到strFilename这个地址的内存空间
		sprintf_s(strFilenameAft, "D:\\myself\\aft_train\\crack%d.jpeg", i);
		sprintf_s(strWindowname,"Img%d", i);
		
		IplImage* pImg = cvLoadImage(strFilename);                    //【4】从指定的路径,将图片加载到内存中
		cvNamedWindow(strWindowname,CV_WINDOW_AUTOSIZE);              //【5】创建一个显示图片的窗口
		cvMoveWindow(strWindowname,200,200);                          //【6】将显示窗口固定在(200,200)这个位置显示都进来的图片
		cvShowImage(strWindowname,pImg);                              //【7】显示图片
		//cv::waitKey(10);                                            //【8】每个1s显示一张读进来的图片

		cvSetImageROI(pImg,cvRect(0,0,384,256));                      //【9】在都进来的图片pImg上设置ROI区域
		cvNamedWindow("【ROI_Img】");
		cvMoveWindow("【ROI_Img】", 700, 200);
		cvShowImage("【ROI_Img】", pImg);                             //【10】显示ROI区域的图像
		cv::waitKey(1000);
		cvSaveImage(strFilenameAft, pImg);                            //【11】将修改图片size之后的图片保存在指定的文件夹下

		cvReleaseImage(&pImg);                                        //【9】释放掉存储图片的内存
		cvDestroyWindow(strWindowname);                               //【10】销毁窗口的内存
		cvDestroyWindow("【ROI_Img】");
	}
	return 0;
}



  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值