0% found this document useful (0 votes)
46 views20 pages

Image Processing Mini Project Report

Uploaded by

savitaannu07
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views20 pages

Image Processing Mini Project Report

Uploaded by

savitaannu07
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Madhav Institute of Technology and Science, Gwalior

(A Govt. Aided UGC Autonomous & NAAC Accredited Institute Affiliated to


RGPV, Bhopal) NAAC Accredited with A++ Grade

Centre for Artificial Intelligence

Skill Based Mini Project


Of
“Image Processing”
(280602)

SUBMITTED BY

Aashutosh Savita
(0901AM211001)
6th semester
Artificial Intelligence & Machine Learning
JANUARY – JUNE, 2024

SUBMITTED TO

Dr. Sunil Kumar Shukla

&

Ms. Deepti Gupta


MADHAV INSTITUTE OF TECHNOLOGY & SCIENCE
GWALIOR
(A Govt. Aided UGC Autonomous Institute Affiliated to RGPV, Bhopal)
NAAC Accredited with A++ Grade

CERTIFICATE

This is certified that Aashutosh Savita (0901AM211001), has submitted the project report
on Skill Based Mini Project under the mentorship of Dr. Sunil Kumar Shukla & Ms Deepti
Gupta in partial fulfilment of the requirement for the award of degree of Bachelor of
Technology in Artificial Intelligence and Machine Learning from Madhav Institute of
Technology and Science,Gwalior.

Dr. Sunil Kumar Shukla Ms. Deepti Gupta


Faculty Mentor Faculty Mentor
Centre for Artificial Intelligence Centre for Artificial Intelligence
ACKNOWLEDGEMENT

I would like to express my greatest appreciation to all the individuals who have helped and
supported me throughout this lab file. I am thankful to whole Centre for Artificial
Intelligence department for their ongoing support during the experiments, from initial advice
and provision ofcontact in the first stages through ongoing advice and encouragement, which
led to the finals reportof this lab file.
A special acknowledgement goes to my colleagues who help me in completing the file and
by exchanging interesting ideas to deal with problems and sharing the experience.
I wish to thank our professor Dr. Sunil Kmar Shukla as well for her undivided support and
interests whichinspired me and encouraged me to go my own way without whom I would be
unable to completemy project.
At the end, I want to thank my friends who displayed appreciation to my work and motivated
meto continue my work.

Aashutosh Savita (0901AM211001)


Table of Content

S. No. Type of Page No. Date Signature


Project

1. Micro Project

2. Macro Project

3. Mini Project
Micro Project

Aim - Write a program to implement linear point operation and clipping,

Description –
Linear point operation and clipping are fundamental techniques used in image processing for
contrast adjustment and pixel value normalization. Let's break down each concept and then
describe how they are implemented in a program:

Linear Point Operation:

A linear point operation, also known as contrast stretching or intensity mapping, is a simple
technique used to adjust the contrast and brightness of an image. It involves applying a
linear transformation to the pixel values of an image.
The general formula for a linear point operation is:
O=α⋅I+β
Where:
• O is the output pixel value.
• I is the input pixel value.
• α is the contrast control factor.
• β is the brightness control factor.

Clipping:

Clipping is a process used to ensure that pixel values remain within a specified range. In the
context of image processing, it ensures that the transformed pixel values after applying
operations such as contrast adjustment or filtering do not exceed the valid range, typically
[0, 255] for 8-bit images.

The program will read an input image, apply a linear point operation for contrast
adjustment and brightness control, and then perform clipping to ensure that pixel values
remain within the valid range. Finally, it will display both the original and adjusted images.
Program :
Output:

Adjusted Image:
Macro Project

Aim: Write a program to Implement Smoothing and Sharpening of an eight bit color image.

Description –
Smoothing and sharpening are two common techniques used in image processing to adjust
the appearance and enhance the features of an image. Let's delve into each technique and
then describe how they are implemented in a program:
Smoothing (Blurring):
Smoothing, also known as blurring, is a technique used to reduce noise and details in an
image, resulting in a more uniform appearance. It involves averaging the pixel values within
a neighbourhood around each pixel.
Common smoothing techniques include:
• Gaussian blur: Applies a weighted average to the pixels in the neighbourhood, with
the weights determined by a Gaussian kernel.
• Box blur: Applies a simple average to the pixels in the neighbourhood.
Sharpening:
Sharpening is a technique used to enhance the edges and details in an image, making it appear
more crisp and defined. It involves increasing the contrast around edges by emphasizing the
differences in pixel values.
Common sharpening techniques include:
• Laplacian sharpening: Applies a Laplacian operator to highlight abrupt intensity
changes, then adds the result back to the original image.
• Unsharp masking: Blurs the original image, then subtracts the blurred image from the
original to create a mask of the high-frequency details, which is then added back to
the original image.
The program will read an input image and implement both smoothing and sharpening
techniques. It will apply Gaussian blur for smoothing and a sharpening kernel for sharpening.
Finally, it will display the original, smoothed, and sharpened images.
Program:

Output:
Smoothing Image:

Sharpened Image:
Mini Project

Aim: Color image processing - color models, color enhancement, color thresholding.

Description:
Color image processing involves various techniques for manipulating and analyzing color
information in images. Let's describe and explain each aspect:

[Link] Models:
Color models represent colors using different sets of coordinates or parameters. Some
common color models include:

RGB (Red, Green, Blue): This is the most common color model used in digital imaging.
In RGB, each pixel is represented by its red, green, and blue components. Different
combinations of these components produce different colors.

HSV (Hue, Saturation, Value): HSV separates color information (hue) from intensity
information (value). Hue represents the type of color (e.g., red, green, blue), saturation
represents the purity or vividness of the color, and value represents the brightness of the
color.

CMYK (Cyan, Magenta, Yellow, Black): CMYK is primarily used in printing. Cyan,
magenta, and yellow are subtractive primary colors, and black (K) is added to improve the
color reproduction and provide better control over color reproduction in printing.

YUV/YCbCr: These models separate the luminance (Y) from the chrominance (U and V or
Cb and Cr) components. They are commonly used in video compression and transmission.

Lab (CIELAB): Lab color space is designed to approximate human vision. It consists of
three components: L (lightness), a (green-red axis), and b (blue-yellow axis). It is often used
in color-based image segmentation tasks.

2. Color Enhancement:
Color enhancement techniques aim to improve the visual quality or appearance of colors in
an image. Some common color enhancement techniques include:

Contrast Adjustment: Adjusting the contrast of an image to improve the difference in


intensity between the brightest and darkest areas. This can make the image appear more
vibrant and visually appealing.

Color Balance Adjustment: Adjusting the balance of colors in an image to correct for
color casts or to achieve a desired color effect. This involves manipulating the levels of
different color channels to achieve the desired color balance.
Histogram Equalization: A technique used to improve the contrast of an image by
redistributing the intensity values across the entire range of pixel values. This can help bring
out details in both bright and dark areas of the image.

3. Color Thresholding:
Color thresholding is the process of segmenting an image based on color information. It
involves setting thresholds for color components (e.g., RGB, HSV) to classify pixels into
different regions or objects.

Binary Thresholding: Simple thresholding method where pixels are classified as either
foreground or background based on a single threshold value for each color channel. This is
often used for tasks such as object detection and segmentation.

Multi-level Thresholding: Using multiple threshold values to segment objects with more
nuanced color variations. This allows for finer control over the segmentation process and
can be useful for tasks such as segmenting objects with multiple colors or shades.
1. Color Models

Program:
Output:

Gray Scale Image:


HSV Image:

LAB Image:
2. Color Enhancement:

Program:
Output:

original Image Gray Scale Image

Contrast Stretched Image


Histogram Stretched Image
3. Color Thresholding

Program:
Output:

Blue Region

Common questions

Powered by AI

Gaussian blur has a key advantage over box blur due to its use of a Gaussian function to calculate pixel weights, which results in a more natural and visually pleasing distribution of pixel values, smoothing away noise while preserving structural details better. It is preferable in scenarios where noise reduction must maintain the image's realism, such as in photography and film editing. Box blur, however, being simpler and faster to compute, might be preferable for real-time applications or where computational resources are limited, though it tends to introduce more artifacts and result in less aesthetically pleasing blurring .

Linear point operations, also known as contrast stretching or intensity mapping, are used in image processing to adjust the contrast and brightness of an image. They involve applying a linear transformation to the pixel values of an image with the formula O=α⋅I+β, where O is the output pixel value, I is the input pixel value, α is the contrast control factor, and β is the brightness control factor. This technique enhances the visual perception of the image by adjusting its dynamism .

Smoothing, such as using a Gaussian blur, reduces noise and detail in an image, leading to a more uniform and soft appearance by averaging pixel values within a neighborhood around each pixel. For instance, smoothing is often used to reduce visual noise in a high ISO photograph, making it appear less grainy. In contrast, sharpening techniques, such as unsharp masking, enhance the edges and details of an image by increasing the contrast around edges, making them appear more defined. This can make a blurred photograph look sharper and more detailed .

Color models facilitate digital image processing by providing structured frameworks to map physical colors into numerical values understandable by computing systems. Different models offer unique benefits, such as RGB for direct digital display manipulation, HSV for intuitive color manipulation and image segmentation, and CMYK for printing tasks where color separation is crucial. The choice of model depends on the task requirements: RGB is direct for display screens, HSV is user-friendly for artistic design or effects that emphasize color manipulation, while CMYK is needed for print-focused production processes where color fidelity through separation is essential .

Color thresholding is a critical technique in image segmentation, where pixels are classified into different regions based on their color information. The process involves setting thresholds for color components to classify pixels within an image as belonging to different regions or objects. The primary techniques for implementing color thresholding include binary thresholding, where a single threshold value is used per color channel to discern foreground from background, and multi-level thresholding, which utilizes multiple thresholds to handle complex objects with a range of color variations, thus allowing nuanced segmentations .

Unsharp masking is an image sharpening technique that involves creating a blurred version of the original image, subtracting it to create a mask of high-frequency details, and then adding this mask back to the original image, thereby enhancing edges and details. This process sharpens the image by increasing the contrast of the edges without affecting the overall brightness or color balance. In contrast, Laplacian sharpening applies a Laplacian operator directly to highlight abrupt intensity changes at edges and then adds these changes back to the original, which can increase noise alongside edge detail as it specifically targets regions with rapid intensity change without the initial smoothing step used in unsharp masking .

Clipping is used in image processing to ensure that pixel values remain within a specified range, typically [0, 255] for 8-bit images, after operations such as contrast adjustment or filtering. By confining pixel values within valid limits, clipping helps maintain the integrity of an image by preventing overexposure or underexposure artifacts. Its limitation, however, is that excessive clipping can lead to loss of detail in highlight or shadow areas of an image, reducing the dynamic range .

The RGB color model uses three components – Red, Green, and Blue – each representing a primary color of light, which combine in various ways to produce a broad spectrum of colors. It is primarily used in digital imaging and displays. The HSV color model, on the other hand, represents color with three different components: Hue, which represents the color type; Saturation, which indicates the intensity or purity of the color; and Value, which describes the brightness of the color. HSV is often used in applications requiring color-based image segmentation and manipulation, as it separates color information from intensity, making it easier to manipulate images based on visible color traits .

The Lab color space is significant in image processing due to its ability to approximate human vision more accurately than models like RGB or CMYK. It separates color into lightness (L) and two color-opponent dimensions (a and b), allowing for changes in perceptual lightness and without affecting the color balance. Unlike RGB, which mixes three color components, Lab can adjust each of these attributes separately. In contrast to CMYK, which is designed for subtractive color mixing in printing, Lab is often used for tasks like precise color correction and image comparisons where perceptual uniformity is key .

Histogram equalization enhances the contrast of an image by redistributing its pixel intensity values across the entire available range. During the process, the histogram of the input image is transformed such that its intensity values are spread more evenly across the spectrum, resulting in improved contrast. This is particularly effective for images having poor contrast and where details in both dark and bright regions are not visible. The process involves the computing of a cumulative distribution function from the histogram of the image, then using this function to transform the input image to a new contrast-enhanced image .

You might also like