struct pixel **read_pixel_array(FILE *image, int pixel_array_offset, int width, int height) {
 36
 37     // Step 1
 38     struct pixel **pixel_array = malloc(sizeof(struct pixel) * height);
 39
 40     // Step 2
 41     for (int i = 0; i < height; i++) {
 42         pixel_array[i] = malloc(sizeof(struct pixel) * width);
 43     }
 44
 45     // Step 3
 46     fseek(image, pixel_array_offset, SEEK_SET);
 47     for (int i = 0; i < height; i++) {
 48         for (int j = 0; j < width; j++) {
 49             struct pixel new_pixel;
 50             fread(&new_pixel, sizeof(struct pixel), 3, image);
 51             pixel_array[i][j] = new_pixel;
 52         }
 53     }
 54     return pixel_array;
 55 }
this code should read input from a binary file and add it into the pixel array