im = imread("C:\Users\C010\Documents\zaamin\1.jpg");

dims = size(im);
if length(dims) == 3 then
    im_gray = rgb2gray(im);
else
    im_gray = im;
end

im_gray = im2double(im_gray);

sobel_x = [-1 0 1; -2 0 2; -1 0 1];
sobel_y = [-1 -2 -1; 0 0 0; 1 2 1];

Gx = conv2(im_gray, sobel_x, 'same');
Gy = conv2(im_gray, sobel_y, 'same');

grad = sqrt(Gx.^2 + Gy.^2);

k = 1.0;
im_sharp = im_gray + k * grad;

min_val = min(im_sharp(:));
max_val = max(im_sharp(:));
im_sharp = (im_sharp - min_val) / (max_val - min_val);

figure();
subplot(1,2,1);
imshow(im_gray);
title("Original Gray Image");

subplot(1,2,2);
imshow(im_sharp);
title("Sharpened Image (Gradient Mask)");
