Data Search Tool For Face Recognition
Presented by
Student: Yan Gao
Student Id: u2581609
COMP6703 Demonstration
Supervisor: Professor Tom Gedeon
Overview
• What is aim for this project???
The aim of this project is to findThe aim of this project is to find
often occurring conditions in aoften occurring conditions in a
range of face images.range of face images.
Requirement
• What is requirement for this project???
The software is designed as a tool withThe software is designed as a tool withuser interface, for face recognition datauser interface, for face recognition datasearch. The tool allows users to set thesearch. The tool allows users to set thesearch condition, and the software is ablesearch condition, and the software is ableto search rapidly through a large numberto search rapidly through a large numberof images in local disk, and to keepof images in local disk, and to keeprecords of any occurrence of a definedrecords of any occurrence of a definedconditioncondition..
Center-Surround Processing
• Why we use Center-Surround processing???
Centre-surround is a simple way ofCentre-surround is a simple way ofpreprocessing an image, which is likepreprocessing an image, which is likefinding lines. Basically if a pixel hasfinding lines. Basically if a pixel hasmostly white around it, it is an emptymostly white around it, it is an emptyarea, if it’s half white and half black, thenarea, if it’s half white and half black, thenit’s probably an edge, etc.it’s probably an edge, etc.
Center-Surround Processing Example
• Example
Surround Value:S1= 255 (White), S2= 255 (White), S3= 255 (White), S4= 255 (White), S5= 255 (White), S6= 255 (White), S7= 255 (White), S8= 255 (White)Centre Value= 0 (Black)
Centre Value* 8 < S1 + S2 + S3 + S4 + S5 + S6 + S7 + S8 Conclusion: Centre < Surround(Empty area)
1
8
7 6
3
4
5
2
Key Terminology (1)
• Local Search --- In the process of local Local Search --- In the process of local search, users are able to do a search to search, users are able to do a search to find all matched pixels in different find all matched pixels in different position within the defined image. position within the defined image.
• Normal Search --- It is possible for user Normal Search --- It is possible for user to search through face images with the to search through face images with the same shot angle on the local disk, and same shot angle on the local disk, and find matched pixels at the exact same find matched pixels at the exact same position with the defined condition. In position with the defined condition. In the program, it is one types of same the program, it is one types of same location search. location search.
Key Terminology (2)
• Rough search --- It is another type of Rough search --- It is another type of same location search, the only same location search, the only difference between normal search and difference between normal search and rough search is that it is possible for rough search is that it is possible for user to search matched pixels with 0 to user to search matched pixels with 0 to ++5 pixels variation. 5 pixels variation.
• Variable search --- it means that user Variable search --- it means that user can define search type and the range of can define search type and the range of search images through parameters in search images through parameters in the user interface, then start a search to the user interface, then start a search to find the matched pixels with the defined find the matched pixels with the defined condition.condition.
File System Structure
• File System Structure
Image Data Search
Face Images in ‘‘database’’ Directory
Search Engine Record Files Read Engine
Local Search Normal Search Rough Search Variable Search
Face records in ‘‘records’’ Directory
Development Process
Five Steps in Development Five Steps in Development
• Requirement AnalysisRequirement Analysis
• ModelingModeling
• ImplementationImplementation
• Testing and DebuggingTesting and Debugging
• Deployment and MaintenanceDeployment and Maintenance
User Cases (1)
• User starts the program.User starts the program.• User starts a local search.User starts a local search.• User starts a normal search.User starts a normal search.• User starts a rough search.User starts a rough search.• User starts a variable search.User starts a variable search.• User sets the search condition as one User sets the search condition as one
or more single pixel.or more single pixel.• User sets the search condition as User sets the search condition as
pixels domain in rectangle or square pixels domain in rectangle or square shape.shape.
User Cases (2)
• User sets the search condition as pixels User sets the search condition as pixels domain in ellipse or round shape.domain in ellipse or round shape.
• User chooses the rough search pixels, aUser chooses the rough search pixels, and sets the variation parameter.nd sets the variation parameter.
• User saves the search result as a dat filUser saves the search result as a dat file.e.
• User imports the record dat file, and disUser imports the record dat file, and displays it in image mode.plays it in image mode.
• User imports the record dat file, and disUser imports the record dat file, and displays it in text mode.plays it in text mode.
Domain Chart
• Domain Chart
<<realised>>JAVA
GUI
ConditionSetting
DataImplementation
Persistence
User operates software via GUI
Images are stored in “database” folder. Search results are saved in “records” folder
Searching condition is acquired from ConditionSetting
RecordDisplaying
Record is read from “records” folder
Gui Domain (1)
• Mission Statement:
This domain provides a graphicalThis domain provides a graphical
user interface for users to access user interface for users to access
functions of the software.functions of the software.
Gui Domain (2)
• Class Diagram
MainFrame
InstructionDialog
RecordDialog ResultDialog
HelpDialog
1:1
1:1
1:1
1:1
1:1
1:1
1:11:1
ConditionsetDialog
1:1
1:1
TxtRecordDialog
1:1
1:1
SearchDialogRoughsearchDialog
1:11:1
1:1
1:11:1 1:1
Conditionsetting Domain(1)
• Mission Statement:
This domain is responsible for settingThis domain is responsible for setting
search condition. There are two sorts ofsearch condition. There are two sorts of
search condition: one is defined as one orsearch condition: one is defined as one or
more single pixel, another is defined as amore single pixel, another is defined as a
rectangle or round shape pixel domain.rectangle or round shape pixel domain.
Conditionsetting Domain(2)
• Class Diagram
ImagePanel
1:1 1:*
newPixelPoint
GetSinglePixel
countSurround () addPixSingle () mouseClicked ()
getCs() getPy()getPx()getValidFlag()
grabPixels()
DataImplementation Domain (1)
• Mission Statement:
This domain is responsible for imageThis domain is responsible for imagedata search, and the path of matcheddata search, and the path of matchedImages are displayed in a list ofImages are displayed in a list ofResultTreePanel class, and the matchedResultTreePanel class, and the matchedpixels are shown in the ResultImagePanelpixels are shown in the ResultImagePanelclass.class.
DataImplementation Domain (2)
• Class Diagram
SearchPanel
ResultTreePanel
1:1
ResultImagePanel
1:1
LocalSearch () RoughSearch () NormalSearch () VariableSearch ()
displaySLSearch () displayLSearch () displayVSearch ()
getMessage ()mouseClicked ()paintComponent ()
RecordDisplaying Domain
• Mission Statement:
This domain is used to display someThis domain is used to display some
information reading from dat file.information reading from dat file.
Next Step…
An Example About
Variable Search
THANKS FOR YOUR LISTENNING
Any Questions???