SlideShare a Scribd company logo
AN AUTOMATIC METHOD FOR RED-EYE
DETECTION AND CORRECTION IN DIGITAL
IMAGES
Presented By
Md. Mushfekur Rahman (0513)
1
OVERVIEW
○ What Is Red-Eye Effect?
○ Existing Solutions
○ Drawbacks
○ Our Approach
▪ Red-Eye Detection
▪ Red-Eye Correction
○ Results & Performance Analysis
○ Future Enhancements
○ References
2
THE RED-EYE EFFECT
○ The Red-Eye artifact of digital
images is a common problem
happens when taking photos in
a flash-lighted environment
○ The pupil (sometimes the
whole iris) appears red instead
of its natural color
Fig. The Red-Eye Problem 3
EXISTING SOLUTIONS
○ An Efficient Automatic Redeye Detection and Correction
Algorithm [1]
● Proposed by Hewlett-Packard Labs
● Uses feature based object detection algorithm to detect red-
eyes
○ Some other solutions use statistical learning based
approaches [2, 3] and neural network based learning
algorithms [4]
● Based on machine learning algorithms
● Uses face/eye detection algorithms
4
DRAWBACKS
○ Though they are widely accepted and currently being used in many
devices, they do not ensure 100% accuracy
○ Most of these solutions use machine learning which leads to higher
computations complexity
○ Most of them uses face and/or eye detection methods which
themselves are very complicated and considered as open research
problems
○ Some of the solutions (e.g. Gimp) require user intervention to point
out the red-eye region which is unpleasant and sometimes quite
tedious (what if you have hundreds of old photographs with red-eye
effect?)
For these reasons, an automatic red-eye detection and
correction system which is lightweight and fast yet
ensures higher accuracy rate is required and can make
life a lot easier 5
OUR APPROACH
○ To overcome these limitations we propose a new
solution based on iris segmentation
○ Our system contains two major sections:
▪ Red-Eye Detection and
▪ Red-Eye Correction
○ The detection phase is more challenging and consists of
four major steps
○ After determining the location and size of the red-eyes, a
correction algorithm is applied to each of them.
6
RED-EYE DETECTION
○ The detection phase contains four modules:
▪ Skin-Based Segmentation
▪ Edge Detection
▪ Iris Tracking and
▪ Red-Eye Confirmation
Skin-Based
Segmentation
Edge
Detection
Iris Tracking
Red-Eye
Confirmation
Fig. Illustration of the detection phase
7
SKIN BASED SEGMENTATION
○ The skin-based segmentation
● Reduces search space
● Extracts possible facial regions
○ We used YCbCr color model for skin segmentation
because-
● Lighting condition invariant
● RGB to YCbCr conversion is linear
○ Skin regions that cannot be a face are discarded using
some trivial checks (e.g. height-width ratio, presence of
hole etc.)
8
SKIN BASED SEGMENTATION (CONTD.)
Skin
Segmentation
Fig. Result of Skin-Based Segmentation
(a) Original Image (b) Skin Segmented Image
9
RED-EYE DETECTION (CONTD.)
○ Edge Detection
● Extracts edges and removes all other unnecessary
information from the image
● Required for iris tracking using circular Hough transform
○ We used Canny edge detector
● Very robust and the best edge detector so far
Edge Tracking
by Hysteresis
Gaussian
Smoothin
g
Sobel
Filtering
Non-
Maximum
Suppression
Double
Thresholding
Fig. Steps in Canny Edge Detector 10
CANNY EDGE DETECTOR
○ Gaussian Smoothing
● Removes noise from image using a 5x5 filtering mask
○ Sobel Filtering
● Simplest edge detector
● Uses discrete differentiation operator to calculate gradient of
the image function
○ Non-maximum Suppression
● Helps to find edges that are only one pixel wide
○ Double Thresholding
● Removes edges with lower gradient magnitude
○ Edge Tracking by Hysteresis
● Ensures that the detected edges are continuous real edges
(i.e. not noise)
11
CANNY EDGE DETECTOR (CONTD.)
(a) Original Image (b) Edge Detected Image
Fig. Result of Canny Edge Detection
Canny Edge
Detector
12
IRIS TRACKING
○ Since irises are the only circular object in human face, we
used circular Hough transform for iris localization
○ Circular Hough transform gives better performance for
iris tracking because
● Very robust algorithm (i.e. can even detect semi-circles)
● Runs quite fast
○ Circular Hough transform consists of the following two
steps-
● Accumulation into (a, b)-space
● Accumulation into r-space
13
HOUGH TRANSFORM
○ Accumulation into (a, b)-space
● Transforms each of the points of (x, y)-plane to a circle in a
parametric space called (a, b)-space or accumulator space
● Finds the center of the circle
Fig. Accumulation into (a, b)-space
14
HOUGH TRANSFORM (CONTD.)
○ Accumulation into r-space
● Finds the radius of the circle
● A search for finding maximum edge strength is conducted
using a predefined radius range (minr, maxr)
Fig. Accumulation into r-space
15
IRIS TRACKING (CONTD.)
○ Thresholding (a, b)-space
● Due to exhaustive search, Hough transform may produce so
many unwanted circles
● A thresholding method is needed for extracting only iris
circles
● Visualizing (a, b)-space shows that, the perfect circles have
highest peak values
● For this reason we will only consider only four highest peak
values and discard the rest of them
● We are considering four of them to be on the safe side
16
RED-EYE CONFIRMATION
○ Iris Confirmation
● A circle will be considered as an iris if it falls into one of the
holes in a skin region that we marked during the skin
segmentation
Fig. Result of Iris Tracking
17
RED-EYE CONFIRMATION (CONTD.)
○ Red-eye confirmation is performed using a hue based
approach in HSI color space
○ In HSI space, hue value of 0° is standard red, but red-eye
pixels may show different color tones
○ For this reason, a pixel is considered as a red-eye pixel
with a hue value with ±5° deviation which is the
continuous arc from 5° to 355°
Fig. Range of Hue for Red-Eye Pixels
18
RED-EYE CORRECTION
○ The research conducted by Patti et al. [5] shows that, during red-eye
effect only the red component of a pixel is damaged
○ We reconstructed the red component by assigning the average of
blue and green components
○ This gives the iris quite natural color (i.e. even preserves the glint in
the pupil)
Red-Eye
Correction
Fig. Result of Proposed Red-Eye Correction Method
19
RESULTS & PERFORMANCE ANALYSIS
○ We have implemented our proposed method in the
following environment:
● Platform: Mac OS X, Linux (Ubuntu)
● Language: C++
● CPU: Intel Core i5 @ 2.5 GHz
● Memory: 4 GB
○ We tested the performance of our implemented system
on 50 images collected from various openly accessible
online image databases
○ Our system achieved overall 92% accuracy in red-eye
correction
20
CONTRIBUTIONS
○ Our proposed system solves a classic problem in digital
photography using simple yet effective algorithms
○ It has achieved 92% red-eye correction accuracy while
being simple and fast
○ The system also implements a robust iris segmentation
method which can be used as a part of iris recognition
systems’ research
21
FUTURE ENHANCEMENTS
○ Our system only works with human face but red-eye
problem can also be seen in animals. New research can
be done to adapt with this situation
○ The system performance degrades when the skin
segmentation cannot perform well due to any guarding
objects (e.g. spectacles or helmets). We will try to
improve our algorithm to adapt with this too
22
REFERENCES
[1] H. Luo, J. Yen, D. Tretter, An Efficient Automatic Redeye Detection
and Correction Algorithm, IEEE International Conference on Pattern
Recognition (ICPR), Proceedings of the 17th International
Conference, Vol. 4, pp. 883-886, August 2004.
[2] J. Wan, X. Ren, G. Hu, Automatic Red-Eyes Detection Based on
AAM, Proc. IEEE Int Conf Systems, Man Cybernetics, pp. 6337-6341,
(2004)
[3] F. Volken, J. Terrier, P. Vandewalle, Automatic Red-Eye Removal
Based on Sclera and Skin Tone Detection, Proc. IS&T 3rd Eur. Conf.
Color Graphics, Imaging Vision (CGIV), pp. 359-364, (2006).
[4] L. Zhang, Y. Sun, M. Li, H. Zhang, Automated Red-Eye Detection
and Correction in Digital Photographs, Proc. IEEE Int. Conf. Image
Processing (ICIP), pp. 2363-2366, (2004).
[5] Patti, A., Kostantinides, K., Tretter, D., Lin, Q., Apparatus and A
Method for Reducing Red-Eye in A Digital Image, US6016354,
(2000).
23
Thank You
24

More Related Content

What's hot

Iris Localization - a Biometric Approach Referring Daugman's Algorithm
Iris Localization - a Biometric Approach Referring Daugman's AlgorithmIris Localization - a Biometric Approach Referring Daugman's Algorithm
Iris Localization - a Biometric Approach Referring Daugman's Algorithm
Editor IJCATR
 
Haemorrhage Detection and Classification: A Review
Haemorrhage Detection and Classification: A ReviewHaemorrhage Detection and Classification: A Review
Haemorrhage Detection and Classification: A Review
IJERA Editor
 
Automatic detection of optic disc and blood vessels from retinal images using...
Automatic detection of optic disc and blood vessels from retinal images using...Automatic detection of optic disc and blood vessels from retinal images using...
Automatic detection of optic disc and blood vessels from retinal images using...
eSAT Publishing House
 
Detection of eye disorders through retinal image analysis
Detection of eye disorders through retinal image analysisDetection of eye disorders through retinal image analysis
Detection of eye disorders through retinal image analysis
Rahul Dey
 
Review on Optic Disc Localization Techniques
Review on Optic Disc Localization TechniquesReview on Optic Disc Localization Techniques
Review on Optic Disc Localization Techniques
rahulmonikasharma
 
Defending
DefendingDefending
Defending
Sarah AL-Hzamat
 
International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...
ijcseit
 
Vessels delineation in retinal 
images using COSFIRE filters
Vessels delineation in retinal 
images using COSFIRE filtersVessels delineation in retinal 
images using COSFIRE filters
Vessels delineation in retinal 
images using COSFIRE filters
Nicola Strisciuglio
 
Iris recognition
Iris recognitionIris recognition
Iris recognition
Aditya Kamble
 
Automatic identification and classification of microaneurysms for detection o...
Automatic identification and classification of microaneurysms for detection o...Automatic identification and classification of microaneurysms for detection o...
Automatic identification and classification of microaneurysms for detection o...
eSAT Journals
 
Retinal blood vessel extraction and optical disc removal
Retinal blood vessel extraction and optical disc removalRetinal blood vessel extraction and optical disc removal
Retinal blood vessel extraction and optical disc removal
eSAT Journals
 
Diabetic Retinopathy Image Enhancement using Vessel Extraction in Retinal Fun...
Diabetic Retinopathy Image Enhancement using Vessel Extraction in Retinal Fun...Diabetic Retinopathy Image Enhancement using Vessel Extraction in Retinal Fun...
Diabetic Retinopathy Image Enhancement using Vessel Extraction in Retinal Fun...
Association of Scientists, Developers and Faculties
 
Automatic Detection of Diabetic Maculopathy from Funduas Images Using Image A...
Automatic Detection of Diabetic Maculopathy from Funduas Images Using Image A...Automatic Detection of Diabetic Maculopathy from Funduas Images Using Image A...
Automatic Detection of Diabetic Maculopathy from Funduas Images Using Image A...
Eman Al-dhaher
 
[IJET-V1I3P6]
[IJET-V1I3P6] [IJET-V1I3P6]
Ijcse13 05-01-001
Ijcse13 05-01-001Ijcse13 05-01-001
Ijcse13 05-01-001vital vital
 
Single frontal face detection by finding dark pixel group and comparing xy
Single frontal face detection by  finding dark pixel group and  comparing xySingle frontal face detection by  finding dark pixel group and  comparing xy
Single frontal face detection by finding dark pixel group and comparing xyIAEME Publication
 
(Reading Group) Saliency Detection: A Boolean Map Approach
(Reading Group) Saliency Detection: A Boolean Map Approach(Reading Group) Saliency Detection: A Boolean Map Approach
(Reading Group) Saliency Detection: A Boolean Map Approach
Mohamed Elawady
 

What's hot (19)

Iris Localization - a Biometric Approach Referring Daugman's Algorithm
Iris Localization - a Biometric Approach Referring Daugman's AlgorithmIris Localization - a Biometric Approach Referring Daugman's Algorithm
Iris Localization - a Biometric Approach Referring Daugman's Algorithm
 
Thesis presentation
Thesis presentationThesis presentation
Thesis presentation
 
Ijetcas14 315
Ijetcas14 315Ijetcas14 315
Ijetcas14 315
 
Haemorrhage Detection and Classification: A Review
Haemorrhage Detection and Classification: A ReviewHaemorrhage Detection and Classification: A Review
Haemorrhage Detection and Classification: A Review
 
Automatic detection of optic disc and blood vessels from retinal images using...
Automatic detection of optic disc and blood vessels from retinal images using...Automatic detection of optic disc and blood vessels from retinal images using...
Automatic detection of optic disc and blood vessels from retinal images using...
 
Detection of eye disorders through retinal image analysis
Detection of eye disorders through retinal image analysisDetection of eye disorders through retinal image analysis
Detection of eye disorders through retinal image analysis
 
Review on Optic Disc Localization Techniques
Review on Optic Disc Localization TechniquesReview on Optic Disc Localization Techniques
Review on Optic Disc Localization Techniques
 
Defending
DefendingDefending
Defending
 
International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...
 
Vessels delineation in retinal 
images using COSFIRE filters
Vessels delineation in retinal 
images using COSFIRE filtersVessels delineation in retinal 
images using COSFIRE filters
Vessels delineation in retinal 
images using COSFIRE filters
 
Iris recognition
Iris recognitionIris recognition
Iris recognition
 
Automatic identification and classification of microaneurysms for detection o...
Automatic identification and classification of microaneurysms for detection o...Automatic identification and classification of microaneurysms for detection o...
Automatic identification and classification of microaneurysms for detection o...
 
Retinal blood vessel extraction and optical disc removal
Retinal blood vessel extraction and optical disc removalRetinal blood vessel extraction and optical disc removal
Retinal blood vessel extraction and optical disc removal
 
Diabetic Retinopathy Image Enhancement using Vessel Extraction in Retinal Fun...
Diabetic Retinopathy Image Enhancement using Vessel Extraction in Retinal Fun...Diabetic Retinopathy Image Enhancement using Vessel Extraction in Retinal Fun...
Diabetic Retinopathy Image Enhancement using Vessel Extraction in Retinal Fun...
 
Automatic Detection of Diabetic Maculopathy from Funduas Images Using Image A...
Automatic Detection of Diabetic Maculopathy from Funduas Images Using Image A...Automatic Detection of Diabetic Maculopathy from Funduas Images Using Image A...
Automatic Detection of Diabetic Maculopathy from Funduas Images Using Image A...
 
[IJET-V1I3P6]
[IJET-V1I3P6] [IJET-V1I3P6]
[IJET-V1I3P6]
 
Ijcse13 05-01-001
Ijcse13 05-01-001Ijcse13 05-01-001
Ijcse13 05-01-001
 
Single frontal face detection by finding dark pixel group and comparing xy
Single frontal face detection by  finding dark pixel group and  comparing xySingle frontal face detection by  finding dark pixel group and  comparing xy
Single frontal face detection by finding dark pixel group and comparing xy
 
(Reading Group) Saliency Detection: A Boolean Map Approach
(Reading Group) Saliency Detection: A Boolean Map Approach(Reading Group) Saliency Detection: A Boolean Map Approach
(Reading Group) Saliency Detection: A Boolean Map Approach
 

Similar to An Automatic Method for Red-eye Detection and Correction in Digital Images

Biometric Security :Eyelid detection
Biometric Security :Eyelid detectionBiometric Security :Eyelid detection
Biometric Security :Eyelid detectionPiyush Mittal
 
E045052731
E045052731E045052731
E045052731
IJERA Editor
 
OPTICAL MICROSCOPY AND COORDINATE MEASURING MACHINE
OPTICAL MICROSCOPY AND COORDINATE MEASURING MACHINE OPTICAL MICROSCOPY AND COORDINATE MEASURING MACHINE
OPTICAL MICROSCOPY AND COORDINATE MEASURING MACHINE
sangeetkhule
 
Iris recognition for personal identification using lamstar neural network
Iris recognition for personal identification using lamstar neural networkIris recognition for personal identification using lamstar neural network
Iris recognition for personal identification using lamstar neural network
ijcsit
 
Antispoofing techniques in Facial recognition
Antispoofing techniques in Facial recognitionAntispoofing techniques in Facial recognition
Antispoofing techniques in Facial recognition
Rishabh shah
 
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
Vignesh C
 
Robotics: Vision-Aided Navigation and Motion Path Planning on Low-End Android...
Robotics: Vision-Aided Navigation and Motion Path Planning on Low-End Android...Robotics: Vision-Aided Navigation and Motion Path Planning on Low-End Android...
Robotics: Vision-Aided Navigation and Motion Path Planning on Low-End Android...
Nevada County Tech Connection
 
Eye gaze tracking
Eye gaze trackingEye gaze tracking
Eye gaze tracking
alokahuti
 
Seminar
SeminarSeminar
Seminar
ARJUN K P
 
IRJET- Survey of Iris Recognition Techniques
IRJET- Survey of Iris Recognition TechniquesIRJET- Survey of Iris Recognition Techniques
IRJET- Survey of Iris Recognition Techniques
IRJET Journal
 
Design of imaging system of fundus camera
Design of imaging system of fundus cameraDesign of imaging system of fundus camera
Design of imaging system of fundus camera
Mark Gokhler Ph. D
 
Feasibility of Using Backscattered Light to Recover Refractive Index Gradient...
Feasibility of Using Backscattered Light to Recover Refractive Index Gradient...Feasibility of Using Backscattered Light to Recover Refractive Index Gradient...
Feasibility of Using Backscattered Light to Recover Refractive Index Gradient...
Payman Rajai
 
Ijcse13 05-01-001
Ijcse13 05-01-001Ijcse13 05-01-001
Ijcse13 05-01-001vital vital
 
Implementation of face and eye detection on DM6437 board using simulink model
Implementation of face and eye detection on DM6437 board using simulink modelImplementation of face and eye detection on DM6437 board using simulink model
Implementation of face and eye detection on DM6437 board using simulink model
journalBEEI
 
Image Processing for Rapidly Eye Detection based on Robust Haar Sliding Window
Image Processing for Rapidly Eye Detection based on Robust Haar Sliding Window Image Processing for Rapidly Eye Detection based on Robust Haar Sliding Window
Image Processing for Rapidly Eye Detection based on Robust Haar Sliding Window
IJECEIAES
 
IRJET- Segmentation of Optic Disc using Bit Plane Technique for Glaucoma Scre...
IRJET- Segmentation of Optic Disc using Bit Plane Technique for Glaucoma Scre...IRJET- Segmentation of Optic Disc using Bit Plane Technique for Glaucoma Scre...
IRJET- Segmentation of Optic Disc using Bit Plane Technique for Glaucoma Scre...
IRJET Journal
 
NEURAL NETWORK APPROACH FOR EYE DETECTION
NEURAL NETWORK APPROACH FOR EYE DETECTIONNEURAL NETWORK APPROACH FOR EYE DETECTION
NEURAL NETWORK APPROACH FOR EYE DETECTION
cscpconf
 
E017443136
E017443136E017443136
E017443136
IOSR Journals
 
Self-dependent 3D face rotational alignment using the nose region
Self-dependent 3D face rotational alignment using the nose regionSelf-dependent 3D face rotational alignment using the nose region
Self-dependent 3D face rotational alignment using the nose region
Mehryar (Mike) E., Ph.D.
 
An Automatic ROI of The Fundus Photography
An Automatic ROI of The Fundus Photography An Automatic ROI of The Fundus Photography
An Automatic ROI of The Fundus Photography
IJECEIAES
 

Similar to An Automatic Method for Red-eye Detection and Correction in Digital Images (20)

Biometric Security :Eyelid detection
Biometric Security :Eyelid detectionBiometric Security :Eyelid detection
Biometric Security :Eyelid detection
 
E045052731
E045052731E045052731
E045052731
 
OPTICAL MICROSCOPY AND COORDINATE MEASURING MACHINE
OPTICAL MICROSCOPY AND COORDINATE MEASURING MACHINE OPTICAL MICROSCOPY AND COORDINATE MEASURING MACHINE
OPTICAL MICROSCOPY AND COORDINATE MEASURING MACHINE
 
Iris recognition for personal identification using lamstar neural network
Iris recognition for personal identification using lamstar neural networkIris recognition for personal identification using lamstar neural network
Iris recognition for personal identification using lamstar neural network
 
Antispoofing techniques in Facial recognition
Antispoofing techniques in Facial recognitionAntispoofing techniques in Facial recognition
Antispoofing techniques in Facial recognition
 
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
Drowsiness State Detection of Driver using Eyelid Movement- TECHgium 2019
 
Robotics: Vision-Aided Navigation and Motion Path Planning on Low-End Android...
Robotics: Vision-Aided Navigation and Motion Path Planning on Low-End Android...Robotics: Vision-Aided Navigation and Motion Path Planning on Low-End Android...
Robotics: Vision-Aided Navigation and Motion Path Planning on Low-End Android...
 
Eye gaze tracking
Eye gaze trackingEye gaze tracking
Eye gaze tracking
 
Seminar
SeminarSeminar
Seminar
 
IRJET- Survey of Iris Recognition Techniques
IRJET- Survey of Iris Recognition TechniquesIRJET- Survey of Iris Recognition Techniques
IRJET- Survey of Iris Recognition Techniques
 
Design of imaging system of fundus camera
Design of imaging system of fundus cameraDesign of imaging system of fundus camera
Design of imaging system of fundus camera
 
Feasibility of Using Backscattered Light to Recover Refractive Index Gradient...
Feasibility of Using Backscattered Light to Recover Refractive Index Gradient...Feasibility of Using Backscattered Light to Recover Refractive Index Gradient...
Feasibility of Using Backscattered Light to Recover Refractive Index Gradient...
 
Ijcse13 05-01-001
Ijcse13 05-01-001Ijcse13 05-01-001
Ijcse13 05-01-001
 
Implementation of face and eye detection on DM6437 board using simulink model
Implementation of face and eye detection on DM6437 board using simulink modelImplementation of face and eye detection on DM6437 board using simulink model
Implementation of face and eye detection on DM6437 board using simulink model
 
Image Processing for Rapidly Eye Detection based on Robust Haar Sliding Window
Image Processing for Rapidly Eye Detection based on Robust Haar Sliding Window Image Processing for Rapidly Eye Detection based on Robust Haar Sliding Window
Image Processing for Rapidly Eye Detection based on Robust Haar Sliding Window
 
IRJET- Segmentation of Optic Disc using Bit Plane Technique for Glaucoma Scre...
IRJET- Segmentation of Optic Disc using Bit Plane Technique for Glaucoma Scre...IRJET- Segmentation of Optic Disc using Bit Plane Technique for Glaucoma Scre...
IRJET- Segmentation of Optic Disc using Bit Plane Technique for Glaucoma Scre...
 
NEURAL NETWORK APPROACH FOR EYE DETECTION
NEURAL NETWORK APPROACH FOR EYE DETECTIONNEURAL NETWORK APPROACH FOR EYE DETECTION
NEURAL NETWORK APPROACH FOR EYE DETECTION
 
E017443136
E017443136E017443136
E017443136
 
Self-dependent 3D face rotational alignment using the nose region
Self-dependent 3D face rotational alignment using the nose regionSelf-dependent 3D face rotational alignment using the nose region
Self-dependent 3D face rotational alignment using the nose region
 
An Automatic ROI of The Fundus Photography
An Automatic ROI of The Fundus Photography An Automatic ROI of The Fundus Photography
An Automatic ROI of The Fundus Photography
 

More from Mushfekur Rahman

Diagnosing HotSpot JVM Memory Leaks with JFR and JMC
Diagnosing HotSpot JVM Memory Leaks with JFR and JMCDiagnosing HotSpot JVM Memory Leaks with JFR and JMC
Diagnosing HotSpot JVM Memory Leaks with JFR and JMC
Mushfekur Rahman
 
Webservices: The RESTful Approach
Webservices: The RESTful ApproachWebservices: The RESTful Approach
Webservices: The RESTful Approach
Mushfekur Rahman
 
Building a Unified Logging Layer with Fluentd, Elasticsearch and Kibana
Building a Unified Logging Layer with Fluentd, Elasticsearch and KibanaBuilding a Unified Logging Layer with Fluentd, Elasticsearch and Kibana
Building a Unified Logging Layer with Fluentd, Elasticsearch and Kibana
Mushfekur Rahman
 
Http Basics
Http BasicsHttp Basics
Http Basics
Mushfekur Rahman
 
Hands on Gradle
Hands on GradleHands on Gradle
Hands on Gradle
Mushfekur Rahman
 
Distributed Transaction Management in Spring & JEE
Distributed Transaction Management in Spring & JEEDistributed Transaction Management in Spring & JEE
Distributed Transaction Management in Spring & JEE
Mushfekur Rahman
 
Implementation of Election Algorithm of Distributed Systems in Client-Server ...
Implementation of Election Algorithm of Distributed Systems in Client-Server ...Implementation of Election Algorithm of Distributed Systems in Client-Server ...
Implementation of Election Algorithm of Distributed Systems in Client-Server ...
Mushfekur Rahman
 

More from Mushfekur Rahman (7)

Diagnosing HotSpot JVM Memory Leaks with JFR and JMC
Diagnosing HotSpot JVM Memory Leaks with JFR and JMCDiagnosing HotSpot JVM Memory Leaks with JFR and JMC
Diagnosing HotSpot JVM Memory Leaks with JFR and JMC
 
Webservices: The RESTful Approach
Webservices: The RESTful ApproachWebservices: The RESTful Approach
Webservices: The RESTful Approach
 
Building a Unified Logging Layer with Fluentd, Elasticsearch and Kibana
Building a Unified Logging Layer with Fluentd, Elasticsearch and KibanaBuilding a Unified Logging Layer with Fluentd, Elasticsearch and Kibana
Building a Unified Logging Layer with Fluentd, Elasticsearch and Kibana
 
Http Basics
Http BasicsHttp Basics
Http Basics
 
Hands on Gradle
Hands on GradleHands on Gradle
Hands on Gradle
 
Distributed Transaction Management in Spring & JEE
Distributed Transaction Management in Spring & JEEDistributed Transaction Management in Spring & JEE
Distributed Transaction Management in Spring & JEE
 
Implementation of Election Algorithm of Distributed Systems in Client-Server ...
Implementation of Election Algorithm of Distributed Systems in Client-Server ...Implementation of Election Algorithm of Distributed Systems in Client-Server ...
Implementation of Election Algorithm of Distributed Systems in Client-Server ...
 

Recently uploaded

Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Yara Milbes
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 

Recently uploaded (20)

Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 

An Automatic Method for Red-eye Detection and Correction in Digital Images

  • 1. AN AUTOMATIC METHOD FOR RED-EYE DETECTION AND CORRECTION IN DIGITAL IMAGES Presented By Md. Mushfekur Rahman (0513) 1
  • 2. OVERVIEW ○ What Is Red-Eye Effect? ○ Existing Solutions ○ Drawbacks ○ Our Approach ▪ Red-Eye Detection ▪ Red-Eye Correction ○ Results & Performance Analysis ○ Future Enhancements ○ References 2
  • 3. THE RED-EYE EFFECT ○ The Red-Eye artifact of digital images is a common problem happens when taking photos in a flash-lighted environment ○ The pupil (sometimes the whole iris) appears red instead of its natural color Fig. The Red-Eye Problem 3
  • 4. EXISTING SOLUTIONS ○ An Efficient Automatic Redeye Detection and Correction Algorithm [1] ● Proposed by Hewlett-Packard Labs ● Uses feature based object detection algorithm to detect red- eyes ○ Some other solutions use statistical learning based approaches [2, 3] and neural network based learning algorithms [4] ● Based on machine learning algorithms ● Uses face/eye detection algorithms 4
  • 5. DRAWBACKS ○ Though they are widely accepted and currently being used in many devices, they do not ensure 100% accuracy ○ Most of these solutions use machine learning which leads to higher computations complexity ○ Most of them uses face and/or eye detection methods which themselves are very complicated and considered as open research problems ○ Some of the solutions (e.g. Gimp) require user intervention to point out the red-eye region which is unpleasant and sometimes quite tedious (what if you have hundreds of old photographs with red-eye effect?) For these reasons, an automatic red-eye detection and correction system which is lightweight and fast yet ensures higher accuracy rate is required and can make life a lot easier 5
  • 6. OUR APPROACH ○ To overcome these limitations we propose a new solution based on iris segmentation ○ Our system contains two major sections: ▪ Red-Eye Detection and ▪ Red-Eye Correction ○ The detection phase is more challenging and consists of four major steps ○ After determining the location and size of the red-eyes, a correction algorithm is applied to each of them. 6
  • 7. RED-EYE DETECTION ○ The detection phase contains four modules: ▪ Skin-Based Segmentation ▪ Edge Detection ▪ Iris Tracking and ▪ Red-Eye Confirmation Skin-Based Segmentation Edge Detection Iris Tracking Red-Eye Confirmation Fig. Illustration of the detection phase 7
  • 8. SKIN BASED SEGMENTATION ○ The skin-based segmentation ● Reduces search space ● Extracts possible facial regions ○ We used YCbCr color model for skin segmentation because- ● Lighting condition invariant ● RGB to YCbCr conversion is linear ○ Skin regions that cannot be a face are discarded using some trivial checks (e.g. height-width ratio, presence of hole etc.) 8
  • 9. SKIN BASED SEGMENTATION (CONTD.) Skin Segmentation Fig. Result of Skin-Based Segmentation (a) Original Image (b) Skin Segmented Image 9
  • 10. RED-EYE DETECTION (CONTD.) ○ Edge Detection ● Extracts edges and removes all other unnecessary information from the image ● Required for iris tracking using circular Hough transform ○ We used Canny edge detector ● Very robust and the best edge detector so far Edge Tracking by Hysteresis Gaussian Smoothin g Sobel Filtering Non- Maximum Suppression Double Thresholding Fig. Steps in Canny Edge Detector 10
  • 11. CANNY EDGE DETECTOR ○ Gaussian Smoothing ● Removes noise from image using a 5x5 filtering mask ○ Sobel Filtering ● Simplest edge detector ● Uses discrete differentiation operator to calculate gradient of the image function ○ Non-maximum Suppression ● Helps to find edges that are only one pixel wide ○ Double Thresholding ● Removes edges with lower gradient magnitude ○ Edge Tracking by Hysteresis ● Ensures that the detected edges are continuous real edges (i.e. not noise) 11
  • 12. CANNY EDGE DETECTOR (CONTD.) (a) Original Image (b) Edge Detected Image Fig. Result of Canny Edge Detection Canny Edge Detector 12
  • 13. IRIS TRACKING ○ Since irises are the only circular object in human face, we used circular Hough transform for iris localization ○ Circular Hough transform gives better performance for iris tracking because ● Very robust algorithm (i.e. can even detect semi-circles) ● Runs quite fast ○ Circular Hough transform consists of the following two steps- ● Accumulation into (a, b)-space ● Accumulation into r-space 13
  • 14. HOUGH TRANSFORM ○ Accumulation into (a, b)-space ● Transforms each of the points of (x, y)-plane to a circle in a parametric space called (a, b)-space or accumulator space ● Finds the center of the circle Fig. Accumulation into (a, b)-space 14
  • 15. HOUGH TRANSFORM (CONTD.) ○ Accumulation into r-space ● Finds the radius of the circle ● A search for finding maximum edge strength is conducted using a predefined radius range (minr, maxr) Fig. Accumulation into r-space 15
  • 16. IRIS TRACKING (CONTD.) ○ Thresholding (a, b)-space ● Due to exhaustive search, Hough transform may produce so many unwanted circles ● A thresholding method is needed for extracting only iris circles ● Visualizing (a, b)-space shows that, the perfect circles have highest peak values ● For this reason we will only consider only four highest peak values and discard the rest of them ● We are considering four of them to be on the safe side 16
  • 17. RED-EYE CONFIRMATION ○ Iris Confirmation ● A circle will be considered as an iris if it falls into one of the holes in a skin region that we marked during the skin segmentation Fig. Result of Iris Tracking 17
  • 18. RED-EYE CONFIRMATION (CONTD.) ○ Red-eye confirmation is performed using a hue based approach in HSI color space ○ In HSI space, hue value of 0° is standard red, but red-eye pixels may show different color tones ○ For this reason, a pixel is considered as a red-eye pixel with a hue value with ±5° deviation which is the continuous arc from 5° to 355° Fig. Range of Hue for Red-Eye Pixels 18
  • 19. RED-EYE CORRECTION ○ The research conducted by Patti et al. [5] shows that, during red-eye effect only the red component of a pixel is damaged ○ We reconstructed the red component by assigning the average of blue and green components ○ This gives the iris quite natural color (i.e. even preserves the glint in the pupil) Red-Eye Correction Fig. Result of Proposed Red-Eye Correction Method 19
  • 20. RESULTS & PERFORMANCE ANALYSIS ○ We have implemented our proposed method in the following environment: ● Platform: Mac OS X, Linux (Ubuntu) ● Language: C++ ● CPU: Intel Core i5 @ 2.5 GHz ● Memory: 4 GB ○ We tested the performance of our implemented system on 50 images collected from various openly accessible online image databases ○ Our system achieved overall 92% accuracy in red-eye correction 20
  • 21. CONTRIBUTIONS ○ Our proposed system solves a classic problem in digital photography using simple yet effective algorithms ○ It has achieved 92% red-eye correction accuracy while being simple and fast ○ The system also implements a robust iris segmentation method which can be used as a part of iris recognition systems’ research 21
  • 22. FUTURE ENHANCEMENTS ○ Our system only works with human face but red-eye problem can also be seen in animals. New research can be done to adapt with this situation ○ The system performance degrades when the skin segmentation cannot perform well due to any guarding objects (e.g. spectacles or helmets). We will try to improve our algorithm to adapt with this too 22
  • 23. REFERENCES [1] H. Luo, J. Yen, D. Tretter, An Efficient Automatic Redeye Detection and Correction Algorithm, IEEE International Conference on Pattern Recognition (ICPR), Proceedings of the 17th International Conference, Vol. 4, pp. 883-886, August 2004. [2] J. Wan, X. Ren, G. Hu, Automatic Red-Eyes Detection Based on AAM, Proc. IEEE Int Conf Systems, Man Cybernetics, pp. 6337-6341, (2004) [3] F. Volken, J. Terrier, P. Vandewalle, Automatic Red-Eye Removal Based on Sclera and Skin Tone Detection, Proc. IS&T 3rd Eur. Conf. Color Graphics, Imaging Vision (CGIV), pp. 359-364, (2006). [4] L. Zhang, Y. Sun, M. Li, H. Zhang, Automated Red-Eye Detection and Correction in Digital Photographs, Proc. IEEE Int. Conf. Image Processing (ICIP), pp. 2363-2366, (2004). [5] Patti, A., Kostantinides, K., Tretter, D., Lin, Q., Apparatus and A Method for Reducing Red-Eye in A Digital Image, US6016354, (2000). 23