#include #include "libppm.h" #include using namespace std; struct image_t* S1_smoothen(struct image_t *input_image) { // TODO // remember to allocate space for smoothened_image. See read_ppm_file() in libppm.c for some help. return 0; } struct image_t* S2_find_details(struct image_t *input_image, struct image_t *smoothened_image) { // TODO return 0; } struct image_t* S3_sharpen(struct image_t *input_image, struct image_t *details_image) { // TODO return input_image; //TODO remove this line when adding your code } int main(int argc, char **argv) { if(argc != 3) { cout << "usage: ./a.out \n\n"; exit(0); } struct image_t *input_image = read_ppm_file(argv[1]); struct image_t *smoothened_image = S1_smoothen(input_image); struct image_t *details_image = S2_find_details(input_image, smoothened_image); struct image_t *sharpened_image = S3_sharpen(input_image, details_image); write_ppm_file(argv[2], sharpened_image); return 0; }