I wrote a code but the output file is not being written (image file), but when reading the array i am getting the bits for each pixel. Can u take a look at it?
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <string>
#define size 512
#define num_images 2
using namespace std;
int main() {
char *filename[num_images] = {"92eb.raw","92eb.raw"};
unsigned char Imagedata[2][size][size];
unsigned char outputData[size][size];
FILE *input, *output;
for (int i = 0; i < num_images; i++) {
if (!(input = fopen(filename[i],"rb"))) {
cout << "Unable to open file" <<endl;
return 0;
}
fread(Imagedata[i],sizeof(unsigned char),size * size,input);
}
int result = 1;
for (int j = 0; j < size; j++) {
for (int k = 0; k < size; k++) {
for (int i = 0; i < num_images; i++) {
result=result & Imagedata[i][j][k];
}
outputData[j][k] = result;
result = 1;
}
}
if (!(output = fopen("output.raw", "wb"))) {
cout << "Could not open file for writing" << endl;
}
int ret = fwrite(outputData,sizeof(unsigned char), size * size,output);
cout << "Number of items written" << ret << endl;
return 1;
}