Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

A Framework in C# for Fingerprint Verification

In this article, we introduce a framework in C# for fingerprint verification, we briefly explain how to perform fingerprint verification experiments and how to integrate your algorithms to the framework.
Prize winner in Competition "Best C# article of July 2010"
fingerprintrecognition.zip
FingerprintRecognition
FingerprintRecognition.suo
FR.Core
FR.Core.csproj.user
Properties
FR.FeatureDisplay
Properties
Settings.settings
FR.FVCExperimenter
Properties
Settings.settings
FR.FVCExperiments
Properties
FR.Jiang2000
Properties
FR.Parziale2004
Properties
FR.Qi2005
Properties
FR.Ratha1995
Properties
FR.Tico2003
Properties
ImageProcessingTools
ConvolutionFilters
Properties
ROC
Properties
ROC.csproj.user
ROCBuilders
FingerprintRecognition_v2.2.zip
FingerprintRecognition v2.2
FingerprintRecognition.sln.DotSettings.user
FingerprintRecognition.v11.suo
FR.Core
ClassDiagram1.cd
ClassDiagram2.cd
FR.Core.csproj.user
Properties
FR.FeatureDisplay
FR.FeatureDisplay.csproj.user
Properties
Settings.settings
FR.FMExperimenter
FR.FMExperimenter.csproj.user
Properties
Settings.settings
FR.FVCExperiments
FR.FVCExperiments.csproj.user
Properties
FR.Jiang2000
FR.Jiang2000.csproj.user
Properties
FR.Medina2011
FR.Medina2011.csproj.user
Properties
FR.Medina2012
FR.Medina2012.csproj.user
Properties
FR.Parziale2004
FR.Parziale2004.csproj.user
Properties
FR.Qi2005
FR.Qi2005.csproj.user
Properties
FR.Ratha1995
FR.Ratha1995.csproj.user
Properties
FR.Sherlock1994
Properties
FR.Tico2003
FR.Tico2003.csproj.user
Properties
ImageProcessingTools
bin
Release
ConvolutionFilters
ImageProcessingTools.csproj.user
Properties
ROC
bin
Release
Properties
ROC.csproj.user
ROCBuilders
SHullDelaunayTriangulation
bin
Release
Properties
SHullDelaunayTriangulation.csproj.user
help.zip
Help
bc_s.png
bdwn.png
class_image_processing_tools_1_1_convolution_filter.png
class_image_processing_tools_1_1_gaussian_blur.png
class_image_processing_tools_1_1_sobel_horizontal_filter.png
class_image_processing_tools_1_1_sobel_vertical_filter.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_feature_display-g.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_feature_extractor-g.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_fingerprint_image_provider.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_matcher-g.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_resource_provider-g.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2000___d_b1___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2000___d_b2___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2000___d_b3___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2000___d_b4___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2002___d_b1_a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2002___d_b1___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2002___d_b2_a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2002___d_b2___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2002___d_b3_a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2002___d_b3___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2002___d_b4_a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2002___d_b4___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b1___a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b1___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b2___a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b2___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b3___a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b3___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b4___a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b4___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c2004___d_b___a.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_experiments_1_1_f_v_c___d_b___b.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_display_1_1_orientation_image_display.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_display_1_1_skeleton_image_display.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_extractors_1_1_dalaunay_m_tps_extractor.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_extractors_1_1_j_y_feature_extractor.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_extractors_1_1_p_n_feature_extractor.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_extractors_1_1_qi2005_feature_extractor.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_extractors_1_1_ratha1995_or_img_extractor.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_extractors_1_1_ratha1995_ske_img_extractor.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_extractors_1_1_sherlock1994_or_img_extractor.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_feature_extractors_1_1_tico2003_feature_extractor.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_j_y.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_m_j_y.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_m_p_n.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_m_q_y_w.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_m_t_k.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_p_n.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_q_y_w.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_t_k.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_matchers_1_1_w_l_c.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_resource_providers_1_1_delaunay_mtps_provider.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_resource_providers_1_1_j_y_features_provider.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_resource_providers_1_1_orientation_image_provider.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_resource_providers_1_1_p_n_feature_provider.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_resource_providers_1_1_qi2005_feature_provider.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_resource_providers_1_1_skeleton_image_provider.png
class_pattern_recognition_1_1_fingerprint_recognition_1_1_resource_providers_1_1_tico2003_feature_provider.png
class_pattern_recognition_1_1_r_o_c_1_1_f_n_m_rvs_f_m_r.png
class_pattern_recognition_1_1_r_o_c_1_1_t_p_rvs_f_p_r.png
closed.png
doxygen.png
ftv2blank.png
ftv2cl.png
ftv2doc.png
ftv2folderclosed.png
ftv2folderopen.png
ftv2lastnode.png
ftv2link.png
ftv2mlastnode.png
ftv2mnode.png
ftv2mo.png
ftv2node.png
ftv2ns.png
ftv2plastnode.png
ftv2pnode.png
ftv2splitbar.png
ftv2vertline.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_experiment.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_feature_display-g.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_feature_display.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_feature_extractor-g.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_feature_extractor.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_f_v_c_matching_experiment.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_matcher-g.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_matcher.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_minutia_matcher.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_resource_provider-g.png
interface_pattern_recognition_1_1_fingerprint_recognition_1_1_core_1_1_i_resource_provider.png
interface_pattern_recognition_1_1_r_o_c_1_1_i_r_o_c_builder.png
nav_f.png
nav_g.png
nav_h.png
open.png
search
close.png
mag_sel.png
search_l.png
search_m.png
search_r.png
tab_a.png
tab_b.png
tab_h.png
tab_s.png
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="classes_74.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
createResults();
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
--></script>
</div>
</body>
</html>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Authors

Octavio Loyola González received the B.S. and M.S. degrees from the University of Ciego de Ávila, Cuba, in 2010 and 2012 respectively. He is a PhD student at Instituto Nacional de Astrofísica, Óptica y Electrónica (México). His research interests include pattern recognition, fingerprint recognition, and data mining in imbalanced databases.
 
Relevant papers:
 
- J.C. Lorenzo,M. Varela, M. Hernández, A. Gutiérrez, A. Pérez, O. Loyola González, “Integrated criteria to identify the best treatment in plant biotechnology experiments”, Acta Physiologia Plantarum, 2013, pp. 1-4.
 
- O. Loyola-González, M. García-Borroto, M. A. Medina-Pérez, J. F. Martínez-Trinidad, J. A. Carrasco-Ochoa, and G. De Ita, “An Empirical Study of Oversampling and Undersampling Methods for LCMine an Emerging Pattern Based Classifier,” in 5th Mexican Conference on Pattern Recognition MCPR2013, Springer LNCS 7914,2013, pp. 264–273.
 
- Loyola González, Octavio; Gutiérrez, Andrés E.; García, Milton. "Inducción de árboles de decisión: Inducción de árboles de decisión basada en índices de validación de clúster", Editorial Académica Española. Academic Publishing GmbH & Co. KG. ISBN: 978-3-659-00468-1. 2012, pp. 1-88.

Miguel Angel Medina Pérez received the B.S. and M.S. degrees from the University of Ciego de Ávila, Cuba, in 2007. He is a PhD student at the National Institute of Astrophysics, Optics and Electronics (México). His research interests include pattern recognition and fingerprint recognition.
 
https://sites.google.com/site/miguelmedinaperez/

Andres Eduardo Gutierrez Rodriguez is graduated from Las Villas Central University, Cuba, in 2006. He received the M.S. degree in 2009 from the University of Ciego de Ávila, Cuba. His research interests are pattern recognition and biometry.
 
Relevant papers:
 
-M. A. Medina-Pérez, A. Gutiérrez-Rodríguez, and M. García-Borroto, "Improving Fingerprint Matching Using an Orientation-Based Minutia Descriptor," Lecture Notes in Computer Science, vol. 5856, pp. 121-128, 2009.
-A. E. Gutierrez-Rodriguez, M. A. Medina-Perez, J. F. Martinez-Trinidad, J. A. Carrasco-Ochoa, and M. Garcia-Borroto, "New Dissimilarity Measures for Ultraviolet Spectra Identification," Lecture Notes in Computer Science, vol. 6256, pp. 220-229, 2010.

Milton García-Borroto is graduated from Las Villas Central University, Cuba, in 2000. He received the M.S. degree in 2007 from the National Institute of Astrophisics, Optics and Electronics, Mexico, where he continues his studies toward a Ph.D. degree. His research interests are pattern recognition and biometry.
 
Relevant papers:
1. M. García-Borroto, J. F. Martinez Trinidad, J. A. Carrasco Ochoa, M. A. Medina-Pérez, and J. Ruiz-Shulcloper. LCMine: An efficient algorithm for mining discriminative regularities and its application in supervised classification. Pattern Recognition vol. 43, pp. 3025-3034, 2010.
2. M. García-Borroto, J. F. Martinez Trinidad, J. A. Carrasco Ochoa. A New Emerging Pattern Mining Algorithm and Its Application in Supervised Classification. M.J. Zaki et al. (Eds.): PAKDD 2010, Part I, Lecture Notes in Artificial Intelligence, vol. 6118, pp. 150–157, 2010.
3. M. A. Medina-Pérez, A. Gutiérrez-Rodríguez, and M. García-Borroto, "Improving Fingerprint Matching Using an Orientation-Based Minutia Descriptor," Lecture Notes in Computer Science, vol. 5856, pp. 121-128, 2009.
4. M. García-Borroto, Y. Villuendas-Rey, J. A. Carrasco-Ochoa, and J. F. Martínez-Trinidad, "Finding Small Consistent Subset for the Nearest Neighbor Classifier Based on Support Graphs," Lecture Notes in Computer Science, vol. 5856, pp. 465-472, 2009.
5. M. García-Borroto, Y. Villuendas-Rey, J. A. Carrasco-Ochoa, and J. F. Martínez-Trinidad, "Using Maximum Similarity Graphs to Edit Nearest Neighbor Classifiers," Lecture Notes in Computer Science, vol. 5856, pp. 489-496, 2009.
6. M. A. Medina-Pérez, M. García-Borroto, and J. Ruiz-Shulcloper, "Object Selection Based on Subclass Error Correcting for ALVOT," Lecture Notes in Computer Science, vol. 4756, pp. 496-505, 2007.

| Advertise | Privacy | Mobile
Web02 | 2.8.140721.1 | Last Updated 18 Apr 2014
Article Copyright 2010 by Octavio Loyola-González, Miguel Angel Medina Pérez, Andres Eduardo Gutierrez Rodriguez, Milton García Borroto
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid