Я читаю файл ppm, а затем пытаюсь его сохранить, чтобы узнать, насколько точны мой модуль загрузки и сохранения. Но в итоге я получаю разные результаты при сохранении. Я проверил значения пикселей с помощью MATLAB, поэтому я почти уверен, что мой загрузочный модуль работает хорошо. Спасительная модуль ниже:PPM-файл, чтение и письмо в C++
ofstream ofs;
ofs.open("output.ppm", ofstream::out);
ofs<<"P6"<<endl;
ofs<<"# File after convolution"<<endl;
ofs<<img_wd<<" "<<img_ht<<endl; //check if ASCII conversion is needed
ofs<<max_val<<endl;
for(int j=0; j <img_ht;j++)
{
for (int i=0; i<img_wd;i++)
{
ofs<<static_cast<char>(Pixel[j][i].r)<<static_cast<char>(Pixel[j][i].g)<<static_cast<char>(Pixel[j][i].b); //write as ascii
}
ofs<<endl;
}
Я связывающая действительный файл (https://github.com/aditisingh/Image_convolution_2D/blob/master/start_1.ppm) и сохраненный файл (https://github.com/aditisingh/Image_convolution_2D/blob/master/output.ppm), здесь. Любые предложения, материалы будут полезны. Благодаря!
http://stackoverflow.com/a/39808791/2836621 –