作者dslin (dason)
看板C_and_CPP
标题[问题] C++读图档问题~!
时间Tue Mar 31 10:28:44 2009
小弟最近开始学C++,想要利用它来读一些图档例如:raw,tif等图档
以前有学过用fortran来读图档做一些影像处理的运算,不过最近在用
Dev-C++ 来读图档时觉得怪怪的,好像只有读到一部分的pixel值,
其他有一大部分都是O,以下是小弟写的程式:
#include<fstream>
#include <iomanip>
using namespace std;
int main()
{
ifstream fin;
const int row=480,col=640;
int i,j,bw[row][col],k[255],sum=0;
unsigned char gray[row][col] ;
fin.open("img.raw");
ofstream fout("jar.txt");
ofstream wout("kar.txt");
for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
fin>>gray[i][j];
bw[i][j]=gray[i][j];
fout<<" "<<bw[i][j];
k[bw[i][j]]=k[bw[i][j]]+1;
}
}
for(i=0;i<255;i++)
{
sum += k[i];
wout<<" " << k[i]<<endl;
}
cout<<sum;
fin.close();
fout.close();
wout.close();
system("pause");
return 0;
}
不知道这样写有没有问题,其他同学是用fortran来读图档,我读到的值
好像跟他们的不太一样,不知道是那里出了问题,
请版上的大大过目,这个问题一直困扰小弟很久了,希望版上的大大可以帮忙,
感激不尽~!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.132.97.26
1F:→ MOONRAKER:>>是formatted input,读取binary请用unformatted input 03/31 14:02
2F:→ MOONRAKER:如ifstream.get() 03/31 14:04
3F:→ dslin:感谢大大指教~!我试看看~! 03/31 19:19