因为我是用来OpenCV的类,但是无伤大雅,大家可以吧多余的删除文件夹图片以及按顺序命名,如1,2,3.......
/*
函数功能:读取文件夹下指定数目的图片*/
void ReadImage(int num)
{
float x = 1.0, y = 0.0, z = 0.0,tidu=0.0;
int m = 0;
Mat image;
// ofstream outf;
// outf.open("blurDetect_good.txt");
// outf.open("DefRto_good.txt");
for (int i = 1; i <= num; i++)
{
sprintf(filename, "/home/zp/data/faces/images_200/right/%d.jpg", i);//用这个函数来转换图片名称,存放在filename中。
image = imread(filename, 1);///data/num_bad_test/bad
//imshow(filename, image);
// double blur=0.0;
// blur = blurDetect(image);//模糊度,大于400表示清晰
// printf("%f\n",blur);
double t = DefRto(image);//清晰度
if(t > 10)
{
m++;
sprintf(DefRto_filename, "/home/zp/data/good_qingxi/%d.jpg", m);//用这个函数来转换图片名称,存放在filename中
imwrite(DefRto_filename,image);
}
}
int main()
{
// 测试
ReadImage(28499);//图片是利用数字按顺序命名的
}