SlideShare a Scribd company logo
PREFACE 
The idea behind AKS image 
editing and processing software 
(IEPS) was to design a replica of 
a software which is synonymous 
to image editing, a software 
that can make impossible 
possible and the real unreal. 
Yes, it has been inspired from 
ADOBE PHOTOSHOP. In fact AKS inherits a major portion of 
its interface from this magical IPES. Though we may never be 
able to replicate PHOTOSHOP completely, but we intend to get 
a glimpse of the underlying processes that enables it to create 
magic.
INTRODUCTION 
Before we start delving 
deep into image 
processing, we must 
first know, what exactly 
is a digital image. A 
digital image is a 2- 
Dimensional Matrix of 
digital color units called 
Pixels.
PIXEL 
Depending on the image type, 
different formats of Pixel are 
used to represent them. A 
few of them are mentioned 
here. For example, 
MONOCHROME is used to 
represent Black and White 
images, RGB for color 
images and CMYK is used 
for printing purposes. ARGB 
is an advanced form of RGB 
which also supports ALPHA 
or TRANSPERENCY values.
AKS 
AKS, like many other image editing software, 
has a variety of Image Processing filters to 
enhance the image provided. These filters 
include Brightness, Contrast, Negative, 
Grayscale, Monochrome, Color Balance etc. 
But along with these, it also has the capability 
of editing multiple images at a time. It can also 
handle multiple layers. It can erase a portion of 
the image and can also paint them. Lets start 
with the basic tools…
BASIC IMAGE EDITING 
TOOLS 
AKS has a list of basic 
image editing tools, 
which can be pretty 
handy while editing 
images. These include, 
paint brush, eraser, fill 
tool, rotator, zoom, 
color picker etc.
PAINT BRUSH 
Paint brush is one of the 
most basic tools which 
is also one of the most 
useful one. In AKS we 
have implemented a 
variable size brush 
which can color 
images with millions of 
colors.
ZOOM 
We don’t need an introduction to this tool. This quite popular 
tool comes loaded with the capability to zoom from 1% to 
500%
ERASER 
Eraser is another basic 
tool and is as useful 
as the paint brush. 
This too has a variable 
size brush and can 
remove portions of 
images when needed. 
Let’s see the effect of 
variable size eraser on 
the image drawn in 
the previous page.
FILTER : BRIGHTNESS 
The brightness filter is one of the easiest filter 
that can be implemented. In this filter we 
add a certain value (say br) to each of R, G 
and B channel. This way the luminosity of 
the image increases. 
LOOP X: 0 to ImgHeight 
LOOP Y: 0 to ImgWidth 
PIXEL(x,y) = COL(R + br, G + br, B +br)
EFFECT : BRIGHTNESS 
Original Image Brightness enhanced by 15 units
FILTER : GRAYSCALE 
This filter averages the values of all three 
RGB channels to calculates the brightness 
of the specified PIXEL. On RGB scale, this 
level of GRAY can be represented by 
assigning the same value to all three RGB 
channels. 
LOOP X: 0 to ImgHeight 
LOOP Y: 0 to ImgWidth 
g = (R + G + B) / 3 
PIXEL(x,y) = g
EFFECT : GRAYSCALE 
Original Image After Gray scaling
FILTER : NEGATIVE 
Remember the film camera roll, sometimes also 
called the NEGATIVE. We too can create the 
same effect by using the NEGATIVE filter. To 
get things done we need to subtract the value of 
each channel from 255 (i.e the max. value) 
which will yield the negative value of the 
respective channel. 
LOOP X: 0 to ImgHeight 
LOOP Y: 0 to ImgWidth 
R = 255 – R 
G = 255 – G 
B = 255 – B 
PIXEL(x,y) = COLOR(R, G, B)
EFFECT : NEGATIVE 
Original Image After Applying Negative Filter
FILTER : MONOCHROME 
Monochrome Images have only 2 colors, 
the foreground and the background color. 
To get this type of effect first we need to 
get the grayscale value of each pixel. 
Then we check them if they are above the 
threshold value or not. If they are, then the 
corresponding monochrome pixel will have 
foreground color, else it’ll be of 
background color. In AKS, the threshold 
value is provided by the user.
MONOCHROME : ALGORITHM 
LOOP X: 0 to ImgHeight 
LOOP Y: 0 to ImgWidth 
g = toGray( pixel( X,Y ) ) 
IF( g > threshold) 
pixel(X,Y) = 1 
ELSE pixel(X,Y) = 0
EFFECT : MONOCHROME 
Original Image 
After Applying 
Level 24 
Monochrome Filter
FILTER : COLOR BALANCE 
This filter is almost same as the brightness 
filter, just that, it has the capability to modify 
individual color channels. 
LOOP X: 0 to ImgHeight 
LOOP Y: 0 to ImgWidth 
Col = pixel( X, Y ) 
pixel (X,Y) = COLOR (Col.R + inpR, 
Col.G + inpG, Col.B + inpB)
EFFECT : COLOR BALANCE
FILTER : CONTRAST 
Contrast is determined by the difference in 
the color and brightness of the object and 
other objects within the same field of view. 
This filter first checks the brightness of each 
channels of each Pixel, depending on which 
it decides whether it will be darkened or 
brightened. Then according to the contrast 
value, we can increase or decrease the 
brightness of each and every channel of all 
the pixels available.
CONTRAST ALGORITHM for 1 
channel 
contrast = (100.0 + nContrast) / 100.0 
LOOP X: 0 to ImgHeight 
LOOP Y: 0 to ImgWidth 
channel = channel – 127 
channel = channel * contrast 
channel = channel + 127 
IF(channel < 0) THEN channel = 0 
IF (channel > 255) THEN channel = 255
EFFECT : CONTRAST 
Original Image After enhancing Contrast by 10
CONTRAST vs. BRIGHTNESS 
So, Which one works better? Well actually, for the right 
amount of enhancement, as shown below we need both. 
Original 
Contrast 
Enhanced 
Contrast 
increased by 
10 
Brightness 
enhanced 
brightness 
increased by 10 
Both 
Contrast 
and 
Brightness 
enhanced 
Brightness and 
contrast 
enhanced by 10 
each
FILTER : BLUR 
Blur filter is a slightly complex filter which a 
filtered pixel, instead of depending on its own 
value, depends on the neighboring pixels. We 
have to take the average of each channel 
from all the neighboring pixels. The radius of 
the neighbors considered determines the 
amount of blur. Alternatively, one can iterate 
again and again on fixed blurring radius to 
obtain variable blur amounts.
BLUR : ALGORITHM (for radius 
3R) = 0 
G = 0 
B = 0 
LOOP X: 0 to ImgHeight 
LOOP Y: 0 to ImgWidth 
LOOP i: -1 to 1 
LOOP j: -1 to 1 
R = R + pixel (X+i, Y+j).R 
G = G + pixel (X+i, Y+j).R 
G = G + pixel (X+i, Y+j).R 
R = R / 9 
G = G/9 
B = B / 9 
pixel (X, Y) = color (R, G, B)
EFFECT : BLUR 
Original Image 
After 4th Iteration 
Of Blur Filter
FILTER : EDGE DETECTION 
So far, so good… but what about Edge Detection. 
Edge detection is the technique we use to find 
out the edges in an image. These type of filters, 
along with others, are used by computers for 
image recognition. Like BLUR filter, this filter too 
depends on its neighboring pixels. Before 
detecting edge, we need to convert the image 
into grayscale. Once converted, we can 
compare the values of its neighboring pixels, 
which would indicate an edge if its greater than 
a certain value. This value should be large 
enough to ignore the gradient and detect the 
edges. This scan can be done horizontally and 
vertically. All of the edges will be visible if both 
are done.
EDGE DETECTION (HORIZONTAL) : 
ALGORITHM 
LOOP X: 0 to ImgHeight 
LOOP Y: 0 to ImgWidth 
gl = toGray( pixel( X - 1,Y ) ) 
gr = toGray( pixel( X + 1, Y) ) 
diff = gl – gr 
IF( diff > -10 AND diff < 10) 
pixel(X,Y) = 0 
ELSE pixel(X,Y) = 1
EFFECT : EDGE DETECTION 
Vertical Edge Detection Original Image Horizontal Edge Detection
EFFECT : EDGE DETECTION 
after changing Brightness and contrast 
Original Image Vertical Edge Detection BC enhanced Edge Detection
EFFECT : EDGE DETECTION 
after a Bit of Blurring 
Original Image Vertical Edge Detection Blurred Edge Detection
REFERENCE 
Contrast and Other Filters 
http://www.codeproject.com/cs/media/csharpgraphicfilters11.asp 
Hue Saturation 
http://www.ncsu.edu/scivis/lessons/colormodels/color_models2.html 
C# Tutorials 
WROX PUBLICATION’S BEGINNING VISUAL C#
THANK YOU

More Related Content

What's hot

04 image enhancement edge detection
04 image enhancement edge detection04 image enhancement edge detection
04 image enhancement edge detection
Rumah Belajar
 
color image processing
color image processingcolor image processing
color image processing
HemanthvenkataSaiA
 
CS 354 Lighting
CS 354 LightingCS 354 Lighting
CS 354 Lighting
Mark Kilgard
 
GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)
Michael Heron
 
Canny edge detection
Canny edge detectionCanny edge detection
Canny edge detection
ahmedkhaledfayez
 
Depth Buffer Method
Depth Buffer MethodDepth Buffer Method
Depth Buffer Method
Ummiya Mohammedi
 
Histogram based enhancement
Histogram based enhancementHistogram based enhancement
Histogram based enhancement
liba manopriya.J
 
Edge detection of video using matlab code
Edge detection of video using matlab codeEdge detection of video using matlab code
Edge detection of video using matlab codeBhushan Deore
 
Hidden surface removal
Hidden surface removalHidden surface removal
Hidden surface removal
Punyajoy Saha
 
Diagonal Pixel Report
Diagonal Pixel ReportDiagonal Pixel Report
Diagonal Pixel ReportSan Man
 
EDGE DETECTION
EDGE DETECTIONEDGE DETECTION
EDGE DETECTION
VIKAS SINGH BHADOURIA
 
CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9
fungfung Chen
 
Hidden surfaces
Hidden surfacesHidden surfaces
Hidden surfacesMohd Arif
 
WEB I - 08 - Digital Media
WEB I - 08 - Digital MediaWEB I - 08 - Digital Media
WEB I - 08 - Digital Media
Randy Connolly
 
Comparative study of Salt & Pepper filters and Gaussian filters
Comparative study of Salt & Pepper filters and Gaussian filtersComparative study of Salt & Pepper filters and Gaussian filters
Comparative study of Salt & Pepper filters and Gaussian filtersAnkush Srivastava
 
Lighting and shading
Lighting and shadingLighting and shading
Lighting and shadingeshveeen
 
Image processing3 imageenhancement(histogramprocessing)
Image processing3 imageenhancement(histogramprocessing)Image processing3 imageenhancement(histogramprocessing)
Image processing3 imageenhancement(histogramprocessing)John Williams
 
Spatial and tonal resolution
Spatial and tonal resolutionSpatial and tonal resolution
Spatial and tonal resolution
SIES GST
 
Noise filtering
Noise filteringNoise filtering
Noise filteringAlaa Ahmed
 

What's hot (20)

04 image enhancement edge detection
04 image enhancement edge detection04 image enhancement edge detection
04 image enhancement edge detection
 
Edges and lines
Edges and linesEdges and lines
Edges and lines
 
color image processing
color image processingcolor image processing
color image processing
 
CS 354 Lighting
CS 354 LightingCS 354 Lighting
CS 354 Lighting
 
GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)
 
Canny edge detection
Canny edge detectionCanny edge detection
Canny edge detection
 
Depth Buffer Method
Depth Buffer MethodDepth Buffer Method
Depth Buffer Method
 
Histogram based enhancement
Histogram based enhancementHistogram based enhancement
Histogram based enhancement
 
Edge detection of video using matlab code
Edge detection of video using matlab codeEdge detection of video using matlab code
Edge detection of video using matlab code
 
Hidden surface removal
Hidden surface removalHidden surface removal
Hidden surface removal
 
Diagonal Pixel Report
Diagonal Pixel ReportDiagonal Pixel Report
Diagonal Pixel Report
 
EDGE DETECTION
EDGE DETECTIONEDGE DETECTION
EDGE DETECTION
 
CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9CG OpenGL surface detection+illumination+rendering models-course 9
CG OpenGL surface detection+illumination+rendering models-course 9
 
Hidden surfaces
Hidden surfacesHidden surfaces
Hidden surfaces
 
WEB I - 08 - Digital Media
WEB I - 08 - Digital MediaWEB I - 08 - Digital Media
WEB I - 08 - Digital Media
 
Comparative study of Salt & Pepper filters and Gaussian filters
Comparative study of Salt & Pepper filters and Gaussian filtersComparative study of Salt & Pepper filters and Gaussian filters
Comparative study of Salt & Pepper filters and Gaussian filters
 
Lighting and shading
Lighting and shadingLighting and shading
Lighting and shading
 
Image processing3 imageenhancement(histogramprocessing)
Image processing3 imageenhancement(histogramprocessing)Image processing3 imageenhancement(histogramprocessing)
Image processing3 imageenhancement(histogramprocessing)
 
Spatial and tonal resolution
Spatial and tonal resolutionSpatial and tonal resolution
Spatial and tonal resolution
 
Noise filtering
Noise filteringNoise filtering
Noise filtering
 

Similar to AKS: Image Enhancement Software

Lec_2_Digital Image Fundamentals.pdf
Lec_2_Digital Image Fundamentals.pdfLec_2_Digital Image Fundamentals.pdf
Lec_2_Digital Image Fundamentals.pdf
nagwaAboElenein
 
Image processing sw & hw
Image processing sw & hwImage processing sw & hw
Image processing sw & hw
amalalhait
 
Digital image processing - Image Enhancement (MATERIAL)
Digital image processing  - Image Enhancement (MATERIAL)Digital image processing  - Image Enhancement (MATERIAL)
Digital image processing - Image Enhancement (MATERIAL)
Mathankumar S
 
Digital Image Processing - Image Enhancement
Digital Image Processing  - Image EnhancementDigital Image Processing  - Image Enhancement
Digital Image Processing - Image Enhancement
Mathankumar S
 
Digital image processing Tool presentation
Digital image processing Tool presentationDigital image processing Tool presentation
Digital image processing Tool presentation
dikshabehl5392
 
UNIT-2 image enhancement.pdf Image Processing Unit 2 AKTU
UNIT-2 image enhancement.pdf Image Processing Unit 2 AKTUUNIT-2 image enhancement.pdf Image Processing Unit 2 AKTU
UNIT-2 image enhancement.pdf Image Processing Unit 2 AKTU
ankushspencer015
 
DSP presentation_latest
DSP presentation_latestDSP presentation_latest
DSP presentation_latestHaowei Jiang
 
Image_processing_unit2_SPPU_Syllabus.pptx
Image_processing_unit2_SPPU_Syllabus.pptxImage_processing_unit2_SPPU_Syllabus.pptx
Image_processing_unit2_SPPU_Syllabus.pptx
Mayuri Narkhede
 
IMAGE ENHANCEMENT IN CASE OF UNEVEN ILLUMINATION USING VARIABLE THRESHOLDING ...
IMAGE ENHANCEMENT IN CASE OF UNEVEN ILLUMINATION USING VARIABLE THRESHOLDING ...IMAGE ENHANCEMENT IN CASE OF UNEVEN ILLUMINATION USING VARIABLE THRESHOLDING ...
IMAGE ENHANCEMENT IN CASE OF UNEVEN ILLUMINATION USING VARIABLE THRESHOLDING ...
ijsrd.com
 
4 image enhancement in spatial domain
4 image enhancement in spatial domain4 image enhancement in spatial domain
4 image enhancement in spatial domain
Prof. Dr. Subhasis Bose
 
Simple concepts of Image Processing.pptx
Simple concepts of Image Processing.pptxSimple concepts of Image Processing.pptx
Simple concepts of Image Processing.pptx
cscv1
 
project presentation-90-MCS-200003.pptx
project presentation-90-MCS-200003.pptxproject presentation-90-MCS-200003.pptx
project presentation-90-MCS-200003.pptx
NiladriBhattacharjee10
 
Image processing
Image processingImage processing
Image processing
indiaismylove
 
DIP Lecture 7-9.pdf
DIP Lecture 7-9.pdfDIP Lecture 7-9.pdf
DIP Lecture 7-9.pdf
SAhsanShahBukhari
 
quantization and sampling presentation ppt
quantization and sampling presentation pptquantization and sampling presentation ppt
quantization and sampling presentation ppt
KNaveenKumarECE
 
Lecture 6-2023.pdf
Lecture 6-2023.pdfLecture 6-2023.pdf
Lecture 6-2023.pdf
ssuserff72e4
 
Color
ColorColor
Color
FNian
 
Image processing
Image processingImage processing
Image processingmaheshpene
 

Similar to AKS: Image Enhancement Software (20)

Lec_2_Digital Image Fundamentals.pdf
Lec_2_Digital Image Fundamentals.pdfLec_2_Digital Image Fundamentals.pdf
Lec_2_Digital Image Fundamentals.pdf
 
Image processing sw & hw
Image processing sw & hwImage processing sw & hw
Image processing sw & hw
 
Digital image processing - Image Enhancement (MATERIAL)
Digital image processing  - Image Enhancement (MATERIAL)Digital image processing  - Image Enhancement (MATERIAL)
Digital image processing - Image Enhancement (MATERIAL)
 
Digital Image Processing - Image Enhancement
Digital Image Processing  - Image EnhancementDigital Image Processing  - Image Enhancement
Digital Image Processing - Image Enhancement
 
Digital image processing Tool presentation
Digital image processing Tool presentationDigital image processing Tool presentation
Digital image processing Tool presentation
 
UNIT-2 image enhancement.pdf Image Processing Unit 2 AKTU
UNIT-2 image enhancement.pdf Image Processing Unit 2 AKTUUNIT-2 image enhancement.pdf Image Processing Unit 2 AKTU
UNIT-2 image enhancement.pdf Image Processing Unit 2 AKTU
 
DSP presentation_latest
DSP presentation_latestDSP presentation_latest
DSP presentation_latest
 
Image_processing_unit2_SPPU_Syllabus.pptx
Image_processing_unit2_SPPU_Syllabus.pptxImage_processing_unit2_SPPU_Syllabus.pptx
Image_processing_unit2_SPPU_Syllabus.pptx
 
IMAGE ENHANCEMENT IN CASE OF UNEVEN ILLUMINATION USING VARIABLE THRESHOLDING ...
IMAGE ENHANCEMENT IN CASE OF UNEVEN ILLUMINATION USING VARIABLE THRESHOLDING ...IMAGE ENHANCEMENT IN CASE OF UNEVEN ILLUMINATION USING VARIABLE THRESHOLDING ...
IMAGE ENHANCEMENT IN CASE OF UNEVEN ILLUMINATION USING VARIABLE THRESHOLDING ...
 
4 image enhancement in spatial domain
4 image enhancement in spatial domain4 image enhancement in spatial domain
4 image enhancement in spatial domain
 
Simple concepts of Image Processing.pptx
Simple concepts of Image Processing.pptxSimple concepts of Image Processing.pptx
Simple concepts of Image Processing.pptx
 
PID3474431
PID3474431PID3474431
PID3474431
 
project presentation-90-MCS-200003.pptx
project presentation-90-MCS-200003.pptxproject presentation-90-MCS-200003.pptx
project presentation-90-MCS-200003.pptx
 
Image processing
Image processingImage processing
Image processing
 
DIP Lecture 7-9.pdf
DIP Lecture 7-9.pdfDIP Lecture 7-9.pdf
DIP Lecture 7-9.pdf
 
quantization and sampling presentation ppt
quantization and sampling presentation pptquantization and sampling presentation ppt
quantization and sampling presentation ppt
 
Lecture 6-2023.pdf
Lecture 6-2023.pdfLecture 6-2023.pdf
Lecture 6-2023.pdf
 
Color
ColorColor
Color
 
Image processing
Image processingImage processing
Image processing
 
Unit3 dip
Unit3 dipUnit3 dip
Unit3 dip
 

Recently uploaded

The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
chanes7
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
Jisc
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
Israel Genealogy Research Association
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
The Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptxThe Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptx
DhatriParmar
 
Multithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race conditionMultithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race condition
Mohammed Sikander
 
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Thiyagu K
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
Levi Shapiro
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
chanes7
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
Jisc
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
Nguyen Thanh Tu Collection
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
EverAndrsGuerraGuerr
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 

Recently uploaded (20)

The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
The Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptxThe Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptx
 
Multithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race conditionMultithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race condition
 
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 

AKS: Image Enhancement Software

  • 1.
  • 2. PREFACE The idea behind AKS image editing and processing software (IEPS) was to design a replica of a software which is synonymous to image editing, a software that can make impossible possible and the real unreal. Yes, it has been inspired from ADOBE PHOTOSHOP. In fact AKS inherits a major portion of its interface from this magical IPES. Though we may never be able to replicate PHOTOSHOP completely, but we intend to get a glimpse of the underlying processes that enables it to create magic.
  • 3. INTRODUCTION Before we start delving deep into image processing, we must first know, what exactly is a digital image. A digital image is a 2- Dimensional Matrix of digital color units called Pixels.
  • 4. PIXEL Depending on the image type, different formats of Pixel are used to represent them. A few of them are mentioned here. For example, MONOCHROME is used to represent Black and White images, RGB for color images and CMYK is used for printing purposes. ARGB is an advanced form of RGB which also supports ALPHA or TRANSPERENCY values.
  • 5. AKS AKS, like many other image editing software, has a variety of Image Processing filters to enhance the image provided. These filters include Brightness, Contrast, Negative, Grayscale, Monochrome, Color Balance etc. But along with these, it also has the capability of editing multiple images at a time. It can also handle multiple layers. It can erase a portion of the image and can also paint them. Lets start with the basic tools…
  • 6. BASIC IMAGE EDITING TOOLS AKS has a list of basic image editing tools, which can be pretty handy while editing images. These include, paint brush, eraser, fill tool, rotator, zoom, color picker etc.
  • 7. PAINT BRUSH Paint brush is one of the most basic tools which is also one of the most useful one. In AKS we have implemented a variable size brush which can color images with millions of colors.
  • 8. ZOOM We don’t need an introduction to this tool. This quite popular tool comes loaded with the capability to zoom from 1% to 500%
  • 9. ERASER Eraser is another basic tool and is as useful as the paint brush. This too has a variable size brush and can remove portions of images when needed. Let’s see the effect of variable size eraser on the image drawn in the previous page.
  • 10. FILTER : BRIGHTNESS The brightness filter is one of the easiest filter that can be implemented. In this filter we add a certain value (say br) to each of R, G and B channel. This way the luminosity of the image increases. LOOP X: 0 to ImgHeight LOOP Y: 0 to ImgWidth PIXEL(x,y) = COL(R + br, G + br, B +br)
  • 11. EFFECT : BRIGHTNESS Original Image Brightness enhanced by 15 units
  • 12. FILTER : GRAYSCALE This filter averages the values of all three RGB channels to calculates the brightness of the specified PIXEL. On RGB scale, this level of GRAY can be represented by assigning the same value to all three RGB channels. LOOP X: 0 to ImgHeight LOOP Y: 0 to ImgWidth g = (R + G + B) / 3 PIXEL(x,y) = g
  • 13. EFFECT : GRAYSCALE Original Image After Gray scaling
  • 14. FILTER : NEGATIVE Remember the film camera roll, sometimes also called the NEGATIVE. We too can create the same effect by using the NEGATIVE filter. To get things done we need to subtract the value of each channel from 255 (i.e the max. value) which will yield the negative value of the respective channel. LOOP X: 0 to ImgHeight LOOP Y: 0 to ImgWidth R = 255 – R G = 255 – G B = 255 – B PIXEL(x,y) = COLOR(R, G, B)
  • 15. EFFECT : NEGATIVE Original Image After Applying Negative Filter
  • 16. FILTER : MONOCHROME Monochrome Images have only 2 colors, the foreground and the background color. To get this type of effect first we need to get the grayscale value of each pixel. Then we check them if they are above the threshold value or not. If they are, then the corresponding monochrome pixel will have foreground color, else it’ll be of background color. In AKS, the threshold value is provided by the user.
  • 17. MONOCHROME : ALGORITHM LOOP X: 0 to ImgHeight LOOP Y: 0 to ImgWidth g = toGray( pixel( X,Y ) ) IF( g > threshold) pixel(X,Y) = 1 ELSE pixel(X,Y) = 0
  • 18. EFFECT : MONOCHROME Original Image After Applying Level 24 Monochrome Filter
  • 19. FILTER : COLOR BALANCE This filter is almost same as the brightness filter, just that, it has the capability to modify individual color channels. LOOP X: 0 to ImgHeight LOOP Y: 0 to ImgWidth Col = pixel( X, Y ) pixel (X,Y) = COLOR (Col.R + inpR, Col.G + inpG, Col.B + inpB)
  • 20. EFFECT : COLOR BALANCE
  • 21. FILTER : CONTRAST Contrast is determined by the difference in the color and brightness of the object and other objects within the same field of view. This filter first checks the brightness of each channels of each Pixel, depending on which it decides whether it will be darkened or brightened. Then according to the contrast value, we can increase or decrease the brightness of each and every channel of all the pixels available.
  • 22. CONTRAST ALGORITHM for 1 channel contrast = (100.0 + nContrast) / 100.0 LOOP X: 0 to ImgHeight LOOP Y: 0 to ImgWidth channel = channel – 127 channel = channel * contrast channel = channel + 127 IF(channel < 0) THEN channel = 0 IF (channel > 255) THEN channel = 255
  • 23. EFFECT : CONTRAST Original Image After enhancing Contrast by 10
  • 24. CONTRAST vs. BRIGHTNESS So, Which one works better? Well actually, for the right amount of enhancement, as shown below we need both. Original Contrast Enhanced Contrast increased by 10 Brightness enhanced brightness increased by 10 Both Contrast and Brightness enhanced Brightness and contrast enhanced by 10 each
  • 25. FILTER : BLUR Blur filter is a slightly complex filter which a filtered pixel, instead of depending on its own value, depends on the neighboring pixels. We have to take the average of each channel from all the neighboring pixels. The radius of the neighbors considered determines the amount of blur. Alternatively, one can iterate again and again on fixed blurring radius to obtain variable blur amounts.
  • 26. BLUR : ALGORITHM (for radius 3R) = 0 G = 0 B = 0 LOOP X: 0 to ImgHeight LOOP Y: 0 to ImgWidth LOOP i: -1 to 1 LOOP j: -1 to 1 R = R + pixel (X+i, Y+j).R G = G + pixel (X+i, Y+j).R G = G + pixel (X+i, Y+j).R R = R / 9 G = G/9 B = B / 9 pixel (X, Y) = color (R, G, B)
  • 27. EFFECT : BLUR Original Image After 4th Iteration Of Blur Filter
  • 28. FILTER : EDGE DETECTION So far, so good… but what about Edge Detection. Edge detection is the technique we use to find out the edges in an image. These type of filters, along with others, are used by computers for image recognition. Like BLUR filter, this filter too depends on its neighboring pixels. Before detecting edge, we need to convert the image into grayscale. Once converted, we can compare the values of its neighboring pixels, which would indicate an edge if its greater than a certain value. This value should be large enough to ignore the gradient and detect the edges. This scan can be done horizontally and vertically. All of the edges will be visible if both are done.
  • 29. EDGE DETECTION (HORIZONTAL) : ALGORITHM LOOP X: 0 to ImgHeight LOOP Y: 0 to ImgWidth gl = toGray( pixel( X - 1,Y ) ) gr = toGray( pixel( X + 1, Y) ) diff = gl – gr IF( diff > -10 AND diff < 10) pixel(X,Y) = 0 ELSE pixel(X,Y) = 1
  • 30. EFFECT : EDGE DETECTION Vertical Edge Detection Original Image Horizontal Edge Detection
  • 31. EFFECT : EDGE DETECTION after changing Brightness and contrast Original Image Vertical Edge Detection BC enhanced Edge Detection
  • 32. EFFECT : EDGE DETECTION after a Bit of Blurring Original Image Vertical Edge Detection Blurred Edge Detection
  • 33. REFERENCE Contrast and Other Filters http://www.codeproject.com/cs/media/csharpgraphicfilters11.asp Hue Saturation http://www.ncsu.edu/scivis/lessons/colormodels/color_models2.html C# Tutorials WROX PUBLICATION’S BEGINNING VISUAL C#