int main(int argc, char* argv[])
{
ifstream file("******.csv");
string value;
int i = 0;
int j = 0;
while (file.good())
{
getline(file, value, '\n');
//cout << string(value, 0, value.length()) << endl;
if (i > 0)
{
value.erase(0, 2);
value.erase(value.length() - 9);
//cout << string(value, 0, value.length()) << endl;
char split = ' ';
std::vector<int> matrix(2304);
int count1 = 0;
for (int numPixel = 0; numPixel < 2304; numPixel++)
{
char p[8] = { 0 };
int f;
for (int index = 0; index < value.length(); index++)
{
f = value.find_first_of(split);
if (index < f)
{
p[index] = value[index];
}
else
{
break;
}
}
if (count1 == 2303)
{
for (int index = 0; index < value.length(); index++)
{
p[index] = value[index];
}
}
value.erase(0, f + 1);
int pushData = atoi(p); //这儿做的有些脑残
//cout << "this is " << pushData << endl;
matrix[count1] = pushData;
count1++;
//cout << "this is the " << numPixel << " th number\n";
}
int count = 0;
Mat mat(48, 48, CV_8UC1, Scalar(100));
for (int matGX = 0; matGX < 48; matGX++)
{
for (int matGY = 0; matGY < 48; matGY++)
{
mat.at<char>(matGX, matGY) = matrix[count];
//cout << mat.at<char>(matGX, matGY) << "fuzhi \n";
count++;
//cout << "count" << count << endl;
}
}
namedWindow("Lena", CV_WINDOW_AUTOSIZE);
imshow("Lena", mat);
waitKey(33);
char nameJpg[8];
_itoa(j, nameJpg, 10);
printf("nameJpg = %s\n", nameJpg);
string nameJpgS = nameJpg;
string path = "D:\\Facial\\";
string imgPath = path + nameJpgS + ".jpg";
imwrite(imgPath, mat);
j++;
//cout << matrix.size() << endl;
matrix.clear();
}
i++;
cout << i << endl;
if (i==3588)
{
break;
}
}
return 0;
}