版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
今天利用opencv批量修改文件夹中图片的大小,写了一个小小的工具类并测试运行
运行环境:java,需要引入opencv库,自己修改输入输出路径与图片大小就可以了
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Size;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
import java.io.File;
public class ChangeImgSize {
//定义输入输出路径与目标图片的宽和高,单位:像素
private static String filepath="D:/Users/street";
private static String outpath="D:/Users/output";
private static int width=250;
private static int height=210;
// 加载opencv库
static {
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
}
public static void main(String[]args){
changeImgSize(filepath,outpath,width,height);
}
//批量修改图片尺寸
public static void changeImgSize(String filepath,String outpath,int width,int height){
File file=new File(filepath);
File outfile=new File(outpath);
if(!outfile.exists()) {
outfile.mkdir();
}
if(!file.isDirectory()){
System.out.println("请输入正确的文件夹路径");
}else if(file.isDirectory()){
String[] filelist=file.list();
for(String imgname:filelist) {
Mat matin = Imgcodecs.imread(filepath+"/"+imgname);
Mat mat = new Mat();
Imgproc.resize(matin, mat, new Size(width, height), 0, 0, Imgproc.INTER_CUBIC);
Imgcodecs.imwrite(outpath+"/"+imgname, mat);
}
}
}
}