Digital Image Processing Using Scilab Pdf File

// Get image dimensions (rows, cols, channels) size(img) gray_img = rgb2gray(img); imshow(gray_img); 3.3 Access and Modify Pixels // Access pixel at row 100, column 150 pixel = img(100, 150, :); // Set a region of interest to black img(50:100, 50:100, :) = 0; 4. Image Enhancement 4.1 Histogram Equalization Improves contrast by spreading intensity values.

// Gradient magnitude edge_magnitude = sqrt(Gx.^2 + Gy.^2); imshow(uint8(edge_magnitude)); // Prewitt prewitt_x = [-1 0 1; -1 0 1; -1 0 1]; // Laplacian (second derivative) laplacian = [0 -1 0; -1 4 -1; 0 -1 0]; edges_laplacian = imfilter(gray_img, laplacian); 7. Morphological Operations Requires binary images. digital image processing using scilab pdf

// Closing (dilation followed by erosion) closed = imclose(binary, se); 8.1 Simple Thresholding // Global threshold threshold = 120; segmented = gray_img > threshold; imshow(segmented); 8.2 Otsu’s Thresholding // Compute Otsu threshold automatically [level, intensity] = otsu_thresh(gray_img); bw_otsu = gray_img > level; 8.3 Connected Components Labeling [labeled_img, num_objects] = bwlabel(bw_otsu); disp("Number of objects detected: " + string(num_objects)); 9. Fourier Transform for Frequency Domain Processing // Compute FFT F = fft2(double(gray_img)); F_shifted = fftshift(F); // Magnitude spectrum magnitude = log(abs(F_shifted) + 1); imshow(magnitude, []); // Get image dimensions (rows, cols, channels) size(img)

// Low-pass filter in frequency domain [m, n] = size(gray_img); cx = m/2; cy = n/2; radius = 30; H = zeros(m, n); for i = 1:m for j = 1:n if sqrt((i-cx)^2 + (j-cy)^2) <= radius H(i, j) = 1; end end end Morphological Operations Requires binary images

// Install SIVP from ATOMS (Scilab’s package manager) atomsInstall("SIVP") // Restart Scilab after installation // Load the toolbox exec("SCI/modules/sivp/macros/sivp_loader.sce", -1) Alternatively, use core functions ( imread , imshow , imwrite ) available in recent Scilab versions. 3.1 Read, Display, and Write Images // Read an image img = imread('camera.jpg'); // Display image imshow(img);

digital image processing using scilab pdf