├── .gitignore ├── Databases ├── ATM_Data └── ATM_Fingerprint ├── Fingerprint_Authentication ├── Fingerprint_Authentication.sln └── Fingerprint_Authentication │ ├── C# Global Classes │ ├── DB_ATM_Data_Connection.cs │ └── DB_ATM_Fingerprint_Connection.cs │ ├── Fingerprint_Authentication.csproj │ ├── Images │ ├── 10010101.bmp │ ├── ATM Keys │ │ ├── 0.jpg │ │ ├── 1.jpg │ │ ├── 2.jpg │ │ ├── 3.jpg │ │ ├── 4.jpg │ │ ├── 5.jpg │ │ ├── 6.jpg │ │ ├── 7.jpg │ │ ├── 8.jpg │ │ ├── 9.jpg │ │ ├── Backspace.jpg │ │ ├── Cancel Button.jpg │ │ ├── Correction Button.jpg │ │ ├── Enter Button.jpg │ │ ├── Next Button.jpg │ │ └── Registration.jpg │ ├── ATM.jpg │ ├── Original │ │ ├── 10010101.bmp │ │ ├── 10010102.bmp │ │ ├── 10010103.bmp │ │ └── 10010104.bmp │ ├── Temp │ │ ├── 10010101.bmp │ │ ├── 10010104.bmp │ │ └── 10010105.bmp │ ├── scanning image.jpg │ └── sensor light.jpg │ ├── Program.cs │ ├── Properties │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ ├── Resources.resx │ ├── Settings.Designer.cs │ └── Settings.settings │ └── Windows Forms │ ├── ATM_Machine.cs │ ├── ATM_Machine.designer.cs │ ├── ATM_Machine.resx │ ├── Finger_Registration.Designer.cs │ ├── Finger_Registration.cs │ ├── Finger_Registration.resx │ ├── Registration_Advance.Designer.cs │ ├── Registration_Advance.cs │ └── Registration_Advance.resx ├── LICENSE ├── Matlab ├── Matlab '.m' Files │ ├── Database_Connectivity.m │ ├── Fingerprint_Authentication_Menu.m │ ├── Fingerprint_Matching.m │ └── Matching.m └── Matlab GUI │ ├── FingerGUI.prj │ ├── FingerGUI │ ├── distrib │ │ ├── FingerGUI.exe │ │ └── readme.txt │ └── src │ │ ├── FingerGUI.exe │ │ └── readme.txt │ ├── FingerNewGUI.prj │ ├── FingerNewGUI │ ├── distrib │ │ ├── FingerNewGUI.exe │ │ └── readme.txt │ └── src │ │ ├── FingerNewGUI.exe │ │ └── readme.txt │ ├── Fingerprint_Authentication_Menu.fig │ └── Fingerprint_Authentication_Menu.m ├── README.md └── Reports ├── Presentation.pdf ├── Project Report.pdf └── Project Synopsis.pdf /.gitignore: -------------------------------------------------------------------------------- 1 | ## Ignore Visual Studio temporary files, build results, and 2 | ## files generated by popular Visual Studio add-ons. 3 | 4 | # User-specific files 5 | *.suo 6 | *.user 7 | *.userosscache 8 | *.sln.docstates 9 | 10 | # User-specific files (MonoDevelop/Xamarin Studio) 11 | *.userprefs 12 | 13 | # Build results 14 | [Dd]ebug/ 15 | [Dd]ebugPublic/ 16 | [Rr]elease/ 17 | [Rr]eleases/ 18 | x64/ 19 | x86/ 20 | bld/ 21 | [Bb]in/ 22 | [Oo]bj/ 23 | [Ll]og/ 24 | 25 | # Visual Studio 2015 cache/options directory 26 | .vs/ 27 | # Uncomment if you have tasks that create the project's static files in wwwroot 28 | #wwwroot/ 29 | 30 | # MSTest test Results 31 | [Tt]est[Rr]esult*/ 32 | [Bb]uild[Ll]og.* 33 | 34 | # NUNIT 35 | *.VisualState.xml 36 | TestResult.xml 37 | 38 | # Build Results of an ATL Project 39 | [Dd]ebugPS/ 40 | [Rr]eleasePS/ 41 | dlldata.c 42 | 43 | # DNX 44 | project.lock.json 45 | artifacts/ 46 | 47 | *_i.c 48 | *_p.c 49 | *_i.h 50 | *.ilk 51 | *.meta 52 | *.obj 53 | *.pch 54 | *.pdb 55 | *.pgc 56 | *.pgd 57 | *.rsp 58 | *.sbr 59 | *.tlb 60 | *.tli 61 | *.tlh 62 | *.tmp 63 | *.tmp_proj 64 | *.log 65 | *.vspscc 66 | *.vssscc 67 | .builds 68 | *.pidb 69 | *.svclog 70 | *.scc 71 | 72 | # Chutzpah Test files 73 | _Chutzpah* 74 | 75 | # Visual C++ cache files 76 | ipch/ 77 | *.aps 78 | *.ncb 79 | *.opendb 80 | *.opensdf 81 | *.sdf 82 | *.cachefile 83 | *.VC.db 84 | *.VC.VC.opendb 85 | 86 | # Visual Studio profiler 87 | *.psess 88 | *.vsp 89 | *.vspx 90 | *.sap 91 | 92 | # TFS 2012 Local Workspace 93 | $tf/ 94 | 95 | # Guidance Automation Toolkit 96 | *.gpState 97 | 98 | # ReSharper is a .NET coding add-in 99 | _ReSharper*/ 100 | *.[Rr]e[Ss]harper 101 | *.DotSettings.user 102 | 103 | # JustCode is a .NET coding add-in 104 | .JustCode 105 | 106 | # TeamCity is a build add-in 107 | _TeamCity* 108 | 109 | # DotCover is a Code Coverage Tool 110 | *.dotCover 111 | 112 | # NCrunch 113 | _NCrunch_* 114 | .*crunch*.local.xml 115 | nCrunchTemp_* 116 | 117 | # MightyMoose 118 | *.mm.* 119 | AutoTest.Net/ 120 | 121 | # Web workbench (sass) 122 | .sass-cache/ 123 | 124 | # Installshield output folder 125 | [Ee]xpress/ 126 | 127 | # DocProject is a documentation generator add-in 128 | DocProject/buildhelp/ 129 | DocProject/Help/*.HxT 130 | DocProject/Help/*.HxC 131 | DocProject/Help/*.hhc 132 | DocProject/Help/*.hhk 133 | DocProject/Help/*.hhp 134 | DocProject/Help/Html2 135 | DocProject/Help/html 136 | 137 | # Click-Once directory 138 | publish/ 139 | 140 | # Publish Web Output 141 | *.[Pp]ublish.xml 142 | *.azurePubxml 143 | # TODO: Comment the next line if you want to checkin your web deploy settings 144 | # but database connection strings (with potential passwords) will be unencrypted 145 | *.pubxml 146 | *.publishproj 147 | 148 | # Microsoft Azure Web App publish settings. Comment the next line if you want to 149 | # checkin your Azure Web App publish settings, but sensitive information contained 150 | # in these scripts will be unencrypted 151 | PublishScripts/ 152 | 153 | # NuGet Packages 154 | *.nupkg 155 | # The packages folder can be ignored because of Package Restore 156 | **/packages/* 157 | # except build/, which is used as an MSBuild target. 158 | !**/packages/build/ 159 | # Uncomment if necessary however generally it will be regenerated when needed 160 | #!**/packages/repositories.config 161 | # NuGet v3's project.json files produces more ignoreable files 162 | *.nuget.props 163 | *.nuget.targets 164 | 165 | # Microsoft Azure Build Output 166 | csx/ 167 | *.build.csdef 168 | 169 | # Microsoft Azure Emulator 170 | ecf/ 171 | rcf/ 172 | 173 | # Windows Store app package directories and files 174 | AppPackages/ 175 | BundleArtifacts/ 176 | Package.StoreAssociation.xml 177 | _pkginfo.txt 178 | 179 | # Visual Studio cache files 180 | # files ending in .cache can be ignored 181 | *.[Cc]ache 182 | # but keep track of directories ending in .cache 183 | !*.[Cc]ache/ 184 | 185 | # Others 186 | ClientBin/ 187 | ~$* 188 | *~ 189 | *.dbmdl 190 | *.dbproj.schemaview 191 | *.pfx 192 | *.publishsettings 193 | node_modules/ 194 | orleans.codegen.cs 195 | 196 | # Since there are multiple workflows, uncomment next line to ignore bower_components 197 | # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) 198 | #bower_components/ 199 | 200 | # RIA/Silverlight projects 201 | Generated_Code/ 202 | 203 | # Backup & report files from converting an old project file 204 | # to a newer Visual Studio version. Backup files are not needed, 205 | # because we have git ;-) 206 | _UpgradeReport_Files/ 207 | Backup*/ 208 | UpgradeLog*.XML 209 | UpgradeLog*.htm 210 | 211 | # SQL Server files 212 | *.mdf 213 | *.ldf 214 | 215 | # Business Intelligence projects 216 | *.rdl.data 217 | *.bim.layout 218 | *.bim_*.settings 219 | 220 | # Microsoft Fakes 221 | FakesAssemblies/ 222 | 223 | # GhostDoc plugin setting file 224 | *.GhostDoc.xml 225 | 226 | # Node.js Tools for Visual Studio 227 | .ntvs_analysis.dat 228 | 229 | # Visual Studio 6 build log 230 | *.plg 231 | 232 | # Visual Studio 6 workspace options file 233 | *.opt 234 | 235 | # Visual Studio LightSwitch build output 236 | **/*.HTMLClient/GeneratedArtifacts 237 | **/*.DesktopClient/GeneratedArtifacts 238 | **/*.DesktopClient/ModelManifest.xml 239 | **/*.Server/GeneratedArtifacts 240 | **/*.Server/ModelManifest.xml 241 | _Pvt_Extensions 242 | 243 | # Paket dependency manager 244 | .paket/paket.exe 245 | paket-files/ 246 | 247 | # FAKE - F# Make 248 | .fake/ 249 | 250 | # JetBrains Rider 251 | .idea/ 252 | *.sln.iml 253 | -------------------------------------------------------------------------------- /Databases/ATM_Data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Databases/ATM_Data -------------------------------------------------------------------------------- /Databases/ATM_Fingerprint: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Databases/ATM_Fingerprint -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Fingerprint_Authentication", "Fingerprint_Authentication\Fingerprint_Authentication.csproj", "{626B3C4D-1E25-4704-B3BE-30193BD17D57}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|x86 = Debug|x86 9 | Release|x86 = Release|x86 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {626B3C4D-1E25-4704-B3BE-30193BD17D57}.Debug|x86.ActiveCfg = Debug|x86 13 | {626B3C4D-1E25-4704-B3BE-30193BD17D57}.Debug|x86.Build.0 = Debug|x86 14 | {626B3C4D-1E25-4704-B3BE-30193BD17D57}.Release|x86.ActiveCfg = Release|x86 15 | {626B3C4D-1E25-4704-B3BE-30193BD17D57}.Release|x86.Build.0 = Release|x86 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/C# Global Classes/DB_ATM_Data_Connection.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Data; 6 | using System.Data.SqlClient; 7 | 8 | namespace Fingerprint_Authentication 9 | { 10 | class DB_ATM_Data_Connection 11 | { 12 | 13 | SqlConnection conn_data; 14 | 15 | public SqlConnection Connect_Details() 16 | { 17 | conn_data = new SqlConnection("uid=; pwd=; server=PARASGARG-HP; database=ATM_Data; Trusted_connection=yes;"); 18 | conn_data.Open(); 19 | return conn_data; 20 | 21 | } 22 | 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/C# Global Classes/DB_ATM_Fingerprint_Connection.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Data; 6 | using System.Data.SqlClient; 7 | 8 | namespace Fingerprint_Authentication 9 | { 10 | class DB_ATM_Fingerprint_Connection 11 | { 12 | 13 | SqlConnection conn_finger; 14 | 15 | public SqlConnection Connect_Fingerprint() 16 | { 17 | conn_finger = new SqlConnection("uid=; pwd=; server=PARASGARG-HP; database=ATM_Fingerprint; Trusted_connection=yes;"); 18 | conn_finger.Open(); 19 | return conn_finger; 20 | 21 | } 22 | 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Fingerprint_Authentication.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Debug 5 | x86 6 | 8.0.30703 7 | 2.0 8 | {626B3C4D-1E25-4704-B3BE-30193BD17D57} 9 | WinExe 10 | Properties 11 | Fingerprint_Authentication 12 | Fingerprint_Authentication 13 | v4.0 14 | Client 15 | 512 16 | 17 | 18 | x86 19 | true 20 | full 21 | false 22 | bin\Debug\ 23 | DEBUG;TRACE 24 | prompt 25 | 4 26 | 27 | 28 | x86 29 | pdbonly 30 | true 31 | bin\Release\ 32 | TRACE 33 | prompt 34 | 4 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | Form 55 | 56 | 57 | ATM_Machine.cs 58 | 59 | 60 | ResXFileCodeGenerator 61 | Resources.Designer.cs 62 | Designer 63 | 64 | 65 | True 66 | Resources.resx 67 | 68 | 69 | ATM_Machine.cs 70 | 71 | 72 | SettingsSingleFileGenerator 73 | Settings.Designer.cs 74 | 75 | 76 | True 77 | Settings.settings 78 | True 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 110 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/10010101.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/10010101.bmp -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/0.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/1.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/2.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/3.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/4.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/5.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/6.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/7.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/8.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/9.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Backspace.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Backspace.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Cancel Button.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Cancel Button.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Correction Button.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Correction Button.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Enter Button.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Enter Button.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Next Button.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Next Button.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Registration.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM Keys/Registration.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/ATM.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/Original/10010101.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/Original/10010101.bmp -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/Original/10010102.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/Original/10010102.bmp -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/Original/10010103.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/Original/10010103.bmp -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/Original/10010104.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/Original/10010104.bmp -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/Temp/10010101.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/Temp/10010101.bmp -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/Temp/10010104.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/Temp/10010104.bmp -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/Temp/10010105.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/Temp/10010105.bmp -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/scanning image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/scanning image.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Images/sensor light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Fingerprint_Authentication/Fingerprint_Authentication/Images/sensor light.jpg -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Windows.Forms; 5 | 6 | namespace Fingerprint_Authentication 7 | { 8 | static class Program 9 | { 10 | /// 11 | /// The main entry point for the application. 12 | /// 13 | [STAThread] 14 | static void Main() 15 | { 16 | Application.EnableVisualStyles(); 17 | Application.SetCompatibleTextRenderingDefault(false); 18 | Application.Run(new ATM_Machine()); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Fingerprint_Authentication")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Hewlett-Packard")] 12 | [assembly: AssemblyProduct("Fingerprint_Authentication")] 13 | [assembly: AssemblyCopyright("Copyright © Hewlett-Packard 2013")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("c0589ffb-7beb-4c2a-8321-298bb490f204")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.296 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace Fingerprint_Authentication.Properties 12 | { 13 | 14 | 15 | /// 16 | /// A strongly-typed resource class, for looking up localized strings, etc. 17 | /// 18 | // This class was auto-generated by the StronglyTypedResourceBuilder 19 | // class via a tool like ResGen or Visual Studio. 20 | // To add or remove a member, edit your .ResX file then rerun ResGen 21 | // with the /str option, or rebuild your VS project. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources 26 | { 27 | 28 | private static global::System.Resources.ResourceManager resourceMan; 29 | 30 | private static global::System.Globalization.CultureInfo resourceCulture; 31 | 32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 33 | internal Resources() 34 | { 35 | } 36 | 37 | /// 38 | /// Returns the cached ResourceManager instance used by this class. 39 | /// 40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 41 | internal static global::System.Resources.ResourceManager ResourceManager 42 | { 43 | get 44 | { 45 | if ((resourceMan == null)) 46 | { 47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Fingerprint_Authentication.Properties.Resources", typeof(Resources).Assembly); 48 | resourceMan = temp; 49 | } 50 | return resourceMan; 51 | } 52 | } 53 | 54 | /// 55 | /// Overrides the current thread's CurrentUICulture property for all 56 | /// resource lookups using this strongly typed resource class. 57 | /// 58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 59 | internal static global::System.Globalization.CultureInfo Culture 60 | { 61 | get 62 | { 63 | return resourceCulture; 64 | } 65 | set 66 | { 67 | resourceCulture = value; 68 | } 69 | } 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.296 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace Fingerprint_Authentication.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Windows Forms/ATM_Machine.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Data; 5 | using System.Drawing; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Windows.Forms; 9 | using System.Data.SqlClient; 10 | 11 | namespace Fingerprint_Authentication 12 | { 13 | public partial class ATM_Machine : Form 14 | { 15 | public ATM_Machine() 16 | { 17 | InitializeComponent(); 18 | } 19 | 20 | int flag = 1, click = 0, count = 1; 21 | 22 | DB_ATM_Data_Connection db_data = new DB_ATM_Data_Connection(); 23 | DB_ATM_Fingerprint_Connection db_finger = new DB_ATM_Fingerprint_Connection(); 24 | 25 | private void ATM_Machine_Load(object sender, EventArgs e) 26 | { 27 | //Hiding unnecessary fields. 28 | txtb_input.Visible = false; 29 | pic_swipe.Visible = false; 30 | 31 | lbl_middle.Text = "WELCOME TO ATM MACHINE"; 32 | } 33 | 34 | private void btn_key_1_Click(object sender, EventArgs e) 35 | { 36 | txtb_input.Text += 1; 37 | } 38 | 39 | private void btn_key_2_Click(object sender, EventArgs e) 40 | { 41 | txtb_input.Text += 2; 42 | } 43 | 44 | private void btn_key_3_Click(object sender, EventArgs e) 45 | { 46 | txtb_input.Text += 3; 47 | } 48 | 49 | private void btn_key_4_Click(object sender, EventArgs e) 50 | { 51 | txtb_input.Text += 4; 52 | } 53 | 54 | private void btn_key_5_Click(object sender, EventArgs e) 55 | { 56 | txtb_input.Text += 5; 57 | } 58 | 59 | private void btn_key_6_Click(object sender, EventArgs e) 60 | { 61 | txtb_input.Text += 6; 62 | } 63 | 64 | private void btn_key_7_Click(object sender, EventArgs e) 65 | { 66 | txtb_input.Text += 7; 67 | } 68 | 69 | private void btn_key_8_Click(object sender, EventArgs e) 70 | { 71 | txtb_input.Text += 8; 72 | } 73 | 74 | private void btn_key_9_Click(object sender, EventArgs e) 75 | { 76 | txtb_input.Text += 9; 77 | } 78 | 79 | private void btn_key_0_Click(object sender, EventArgs e) 80 | { 81 | txtb_input.Text += 0; 82 | } 83 | 84 | private void btn_cancel_Click(object sender, EventArgs e) 85 | { 86 | lbl_upper.Visible = false; 87 | lbl_lower.Visible = false; 88 | txtb_input.Visible = false; 89 | lbl_name.Visible = false; 90 | lbl_acc.Visible = false; 91 | 92 | lbl_middle.Text = "THANKS TO VISIT TO ATM MACHINE"; 93 | } 94 | 95 | private void btn_correction_Click(object sender, EventArgs e) 96 | { 97 | txtb_input.Text = ""; 98 | } 99 | 100 | private void btn_next_Click(object sender, EventArgs e) 101 | { 102 | click = 1; 103 | 104 | if (click == 1) 105 | { 106 | lbl_middle.Text = "ENTER YOUR CARD NUMBER"; 107 | txtb_input.Visible = true; 108 | } 109 | } 110 | 111 | private void btn_enter_Click(object sender, EventArgs e) 112 | { 113 | if (click == 1) 114 | { 115 | if (flag == 1) 116 | { 117 | DataSet ds = new DataSet(); 118 | 119 | string query = "SELECT * FROM tbl_acc_details WHERE Acc_No='" + txtb_input.Text + "'"; 120 | SqlDataAdapter da = new SqlDataAdapter(query, db_data.Connect_Details()); 121 | da.Fill(ds); 122 | 123 | if (ds.Tables[0].Rows.Count > 0) 124 | { 125 | //lbl_upper.Text = "Welcome" + " " + ds.Tables[0].Rows[0][1].ToString(); 126 | lbl_upper.Text = "PIN REQUEST MENU"; 127 | lbl_middle.Text = "ENTER YOUR PIN-CODE"; 128 | 129 | lbl_acc.Text = txtb_input.Text; 130 | 131 | txtb_input.Text = ""; 132 | lbl_name.Text = ds.Tables[0].Rows[0][1].ToString(); 133 | 134 | flag = 2; 135 | } 136 | 137 | else 138 | { 139 | if (count <= 3) 140 | { 141 | lbl_upper.Text = "SORRY YOU HAD DONE A WRONG ATTEMPT"; 142 | lbl_middle.Text = "Please Re-Insert The Card"; 143 | txtb_input.Text = ""; 144 | count++; 145 | } 146 | 147 | else 148 | { 149 | flag = 4; 150 | } 151 | } 152 | } 153 | 154 | else if (flag == 2) 155 | { 156 | DataSet ds = new DataSet(); 157 | 158 | string query1 = "SELECT * FROM tbl_acc_details WHERE Name= '" + lbl_name.Text + "' AND Password='" + txtb_input.Text + "'"; 159 | SqlDataAdapter da1 = new SqlDataAdapter(query1, db_data.Connect_Details()); 160 | da1.Fill(ds); 161 | 162 | count = 1; 163 | 164 | if (ds.Tables[0].Rows.Count > 0) 165 | { 166 | //lbl_upper.Text = "Congrats" + " " + ds.Tables[0].Rows[0][1].ToString(); 167 | lbl_upper.Text = "FINGERPRINT SECURITY MENU"; 168 | lbl_middle.Text = "SWIPE YOUR FINGER"; 169 | pic_swipe.Visible = true; 170 | txtb_input.Visible = false; 171 | flag = 3; 172 | } 173 | 174 | else 175 | { 176 | if (count <= 3) 177 | { 178 | lbl_upper.Text = "SORRY YOU HAD DONE A WRONG ATTEMPT"; 179 | lbl_middle.Text = "Please Re-Insert The PIN-CODE"; 180 | txtb_input.Text = ""; 181 | count++; 182 | } 183 | 184 | else 185 | { 186 | flag = 4; 187 | } 188 | } 189 | } 190 | 191 | else if (flag == 3) 192 | { 193 | pic_swipe.Visible = false; 194 | lbl_lower.Visible = true; 195 | lbl_upper.Text = "Thanks to visiting here"; 196 | lbl_middle.Text = "Now you are ready for your further \n Transaction with Details \n"; 197 | lbl_lower.Text = "Name:" + " " + lbl_name.Text + "\n" + "accont no:" + lbl_acc.Text; 198 | } 199 | 200 | else if (flag == 4) 201 | { 202 | pic_swipe.Visible = false; 203 | lbl_lower.Visible = true; 204 | lbl_upper.Text = "You HAVE ENTERED WRONG AUTHENTICATION \nMORE THAN THRICE"; 205 | } 206 | } 207 | } 208 | } 209 | } 210 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Windows Forms/ATM_Machine.designer.cs: -------------------------------------------------------------------------------- 1 | namespace Fingerprint_Authentication 2 | { 3 | partial class ATM_Machine 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ATM_Machine)); 32 | this.lstbx_details = new System.Windows.Forms.ListBox(); 33 | this.btn_key_1 = new System.Windows.Forms.Button(); 34 | this.btn_key_2 = new System.Windows.Forms.Button(); 35 | this.btn_key_3 = new System.Windows.Forms.Button(); 36 | this.btn_key_4 = new System.Windows.Forms.Button(); 37 | this.btn_key_5 = new System.Windows.Forms.Button(); 38 | this.btn_key_6 = new System.Windows.Forms.Button(); 39 | this.btn_key_7 = new System.Windows.Forms.Button(); 40 | this.btn_key_8 = new System.Windows.Forms.Button(); 41 | this.btn_key_9 = new System.Windows.Forms.Button(); 42 | this.btn_key_0 = new System.Windows.Forms.Button(); 43 | this.btn_cancel = new System.Windows.Forms.Button(); 44 | this.btn_correction = new System.Windows.Forms.Button(); 45 | this.btn_registration = new System.Windows.Forms.Button(); 46 | this.btn_enter = new System.Windows.Forms.Button(); 47 | this.lbl_upper = new System.Windows.Forms.Label(); 48 | this.lbl_lower = new System.Windows.Forms.Label(); 49 | this.lbl_middle = new System.Windows.Forms.Label(); 50 | this.txtb_input = new System.Windows.Forms.TextBox(); 51 | this.lbl_name = new System.Windows.Forms.Label(); 52 | this.lbl_acc = new System.Windows.Forms.Label(); 53 | this.pic_swipe = new System.Windows.Forms.PictureBox(); 54 | ((System.ComponentModel.ISupportInitialize)(this.pic_swipe)).BeginInit(); 55 | this.SuspendLayout(); 56 | // 57 | // lstbx_details 58 | // 59 | this.lstbx_details.BackColor = System.Drawing.SystemColors.HotTrack; 60 | this.lstbx_details.FormattingEnabled = true; 61 | this.lstbx_details.Location = new System.Drawing.Point(227, 165); 62 | this.lstbx_details.Name = "lstbx_details"; 63 | this.lstbx_details.Size = new System.Drawing.Size(337, 251); 64 | this.lstbx_details.TabIndex = 1; 65 | // 66 | // btn_key_1 67 | // 68 | this.btn_key_1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btn_key_1.BackgroundImage"))); 69 | this.btn_key_1.ImageKey = "(none)"; 70 | this.btn_key_1.Location = new System.Drawing.Point(287, 530); 71 | this.btn_key_1.Name = "btn_key_1"; 72 | this.btn_key_1.Size = new System.Drawing.Size(39, 28); 73 | this.btn_key_1.TabIndex = 5; 74 | this.btn_key_1.UseVisualStyleBackColor = true; 75 | this.btn_key_1.Click += new System.EventHandler(this.btn_key_1_Click); 76 | // 77 | // btn_key_2 78 | // 79 | this.btn_key_2.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_2.Image"))); 80 | this.btn_key_2.Location = new System.Drawing.Point(330, 530); 81 | this.btn_key_2.Name = "btn_key_2"; 82 | this.btn_key_2.Size = new System.Drawing.Size(39, 28); 83 | this.btn_key_2.TabIndex = 6; 84 | this.btn_key_2.UseVisualStyleBackColor = true; 85 | this.btn_key_2.Click += new System.EventHandler(this.btn_key_2_Click); 86 | // 87 | // btn_key_3 88 | // 89 | this.btn_key_3.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_3.Image"))); 90 | this.btn_key_3.Location = new System.Drawing.Point(372, 530); 91 | this.btn_key_3.Name = "btn_key_3"; 92 | this.btn_key_3.Size = new System.Drawing.Size(39, 28); 93 | this.btn_key_3.TabIndex = 7; 94 | this.btn_key_3.UseVisualStyleBackColor = true; 95 | this.btn_key_3.Click += new System.EventHandler(this.btn_key_3_Click); 96 | // 97 | // btn_key_4 98 | // 99 | this.btn_key_4.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_4.Image"))); 100 | this.btn_key_4.Location = new System.Drawing.Point(287, 563); 101 | this.btn_key_4.Name = "btn_key_4"; 102 | this.btn_key_4.Size = new System.Drawing.Size(39, 28); 103 | this.btn_key_4.TabIndex = 8; 104 | this.btn_key_4.UseVisualStyleBackColor = true; 105 | this.btn_key_4.Click += new System.EventHandler(this.btn_key_4_Click); 106 | // 107 | // btn_key_5 108 | // 109 | this.btn_key_5.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_5.Image"))); 110 | this.btn_key_5.Location = new System.Drawing.Point(330, 563); 111 | this.btn_key_5.Name = "btn_key_5"; 112 | this.btn_key_5.Size = new System.Drawing.Size(39, 28); 113 | this.btn_key_5.TabIndex = 9; 114 | this.btn_key_5.UseVisualStyleBackColor = true; 115 | this.btn_key_5.Click += new System.EventHandler(this.btn_key_5_Click); 116 | // 117 | // btn_key_6 118 | // 119 | this.btn_key_6.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_6.Image"))); 120 | this.btn_key_6.Location = new System.Drawing.Point(371, 563); 121 | this.btn_key_6.Name = "btn_key_6"; 122 | this.btn_key_6.Size = new System.Drawing.Size(39, 28); 123 | this.btn_key_6.TabIndex = 10; 124 | this.btn_key_6.UseVisualStyleBackColor = true; 125 | this.btn_key_6.Click += new System.EventHandler(this.btn_key_6_Click); 126 | // 127 | // btn_key_7 128 | // 129 | this.btn_key_7.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_7.Image"))); 130 | this.btn_key_7.Location = new System.Drawing.Point(286, 596); 131 | this.btn_key_7.Name = "btn_key_7"; 132 | this.btn_key_7.Size = new System.Drawing.Size(39, 30); 133 | this.btn_key_7.TabIndex = 11; 134 | this.btn_key_7.UseVisualStyleBackColor = true; 135 | this.btn_key_7.Click += new System.EventHandler(this.btn_key_7_Click); 136 | // 137 | // btn_key_8 138 | // 139 | this.btn_key_8.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_8.Image"))); 140 | this.btn_key_8.Location = new System.Drawing.Point(329, 595); 141 | this.btn_key_8.Name = "btn_key_8"; 142 | this.btn_key_8.Size = new System.Drawing.Size(39, 30); 143 | this.btn_key_8.TabIndex = 12; 144 | this.btn_key_8.UseVisualStyleBackColor = true; 145 | this.btn_key_8.Click += new System.EventHandler(this.btn_key_8_Click); 146 | // 147 | // btn_key_9 148 | // 149 | this.btn_key_9.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_9.Image"))); 150 | this.btn_key_9.Location = new System.Drawing.Point(370, 595); 151 | this.btn_key_9.Name = "btn_key_9"; 152 | this.btn_key_9.Size = new System.Drawing.Size(39, 30); 153 | this.btn_key_9.TabIndex = 13; 154 | this.btn_key_9.UseVisualStyleBackColor = true; 155 | this.btn_key_9.Click += new System.EventHandler(this.btn_key_9_Click); 156 | // 157 | // btn_key_0 158 | // 159 | this.btn_key_0.Image = ((System.Drawing.Image)(resources.GetObject("btn_key_0.Image"))); 160 | this.btn_key_0.Location = new System.Drawing.Point(328, 630); 161 | this.btn_key_0.Name = "btn_key_0"; 162 | this.btn_key_0.Size = new System.Drawing.Size(39, 30); 163 | this.btn_key_0.TabIndex = 14; 164 | this.btn_key_0.UseVisualStyleBackColor = true; 165 | this.btn_key_0.Click += new System.EventHandler(this.btn_key_0_Click); 166 | // 167 | // btn_cancel 168 | // 169 | this.btn_cancel.Image = ((System.Drawing.Image)(resources.GetObject("btn_cancel.Image"))); 170 | this.btn_cancel.Location = new System.Drawing.Point(428, 530); 171 | this.btn_cancel.Name = "btn_cancel"; 172 | this.btn_cancel.Size = new System.Drawing.Size(75, 28); 173 | this.btn_cancel.TabIndex = 15; 174 | this.btn_cancel.UseVisualStyleBackColor = true; 175 | this.btn_cancel.Click += new System.EventHandler(this.btn_cancel_Click); 176 | // 177 | // btn_correction 178 | // 179 | this.btn_correction.Image = ((System.Drawing.Image)(resources.GetObject("btn_correction.Image"))); 180 | this.btn_correction.Location = new System.Drawing.Point(428, 563); 181 | this.btn_correction.Name = "btn_correction"; 182 | this.btn_correction.Size = new System.Drawing.Size(75, 28); 183 | this.btn_correction.TabIndex = 16; 184 | this.btn_correction.UseVisualStyleBackColor = true; 185 | this.btn_correction.Click += new System.EventHandler(this.btn_correction_Click); 186 | // 187 | // btn_registration 188 | // 189 | this.btn_registration.Location = new System.Drawing.Point(428, 596); 190 | this.btn_registration.Name = "btn_registration"; 191 | this.btn_registration.Size = new System.Drawing.Size(77, 30); 192 | this.btn_registration.TabIndex = 17; 193 | this.btn_registration.UseVisualStyleBackColor = true; 194 | this.btn_registration.Click += new System.EventHandler(this.btn_next_Click); 195 | // 196 | // btn_enter 197 | // 198 | this.btn_enter.Image = ((System.Drawing.Image)(resources.GetObject("btn_enter.Image"))); 199 | this.btn_enter.Location = new System.Drawing.Point(428, 630); 200 | this.btn_enter.Name = "btn_enter"; 201 | this.btn_enter.Size = new System.Drawing.Size(77, 30); 202 | this.btn_enter.TabIndex = 18; 203 | this.btn_enter.UseVisualStyleBackColor = true; 204 | this.btn_enter.Click += new System.EventHandler(this.btn_enter_Click); 205 | // 206 | // lbl_upper 207 | // 208 | this.lbl_upper.AutoSize = true; 209 | this.lbl_upper.BackColor = System.Drawing.SystemColors.HotTrack; 210 | this.lbl_upper.Location = new System.Drawing.Point(312, 183); 211 | this.lbl_upper.Name = "lbl_upper"; 212 | this.lbl_upper.Size = new System.Drawing.Size(0, 13); 213 | this.lbl_upper.TabIndex = 19; 214 | // 215 | // lbl_lower 216 | // 217 | this.lbl_lower.AutoSize = true; 218 | this.lbl_lower.BackColor = System.Drawing.SystemColors.HotTrack; 219 | this.lbl_lower.Location = new System.Drawing.Point(327, 354); 220 | this.lbl_lower.Name = "lbl_lower"; 221 | this.lbl_lower.Size = new System.Drawing.Size(0, 13); 222 | this.lbl_lower.TabIndex = 20; 223 | // 224 | // lbl_middle 225 | // 226 | this.lbl_middle.AutoSize = true; 227 | this.lbl_middle.BackColor = System.Drawing.SystemColors.HotTrack; 228 | this.lbl_middle.Location = new System.Drawing.Point(312, 261); 229 | this.lbl_middle.Name = "lbl_middle"; 230 | this.lbl_middle.Size = new System.Drawing.Size(0, 13); 231 | this.lbl_middle.TabIndex = 21; 232 | // 233 | // txtb_input 234 | // 235 | this.txtb_input.BackColor = System.Drawing.SystemColors.HotTrack; 236 | this.txtb_input.Location = new System.Drawing.Point(346, 305); 237 | this.txtb_input.Name = "txtb_input"; 238 | this.txtb_input.Size = new System.Drawing.Size(100, 20); 239 | this.txtb_input.TabIndex = 22; 240 | this.txtb_input.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; 241 | // 242 | // lbl_name 243 | // 244 | this.lbl_name.AutoSize = true; 245 | this.lbl_name.BackColor = System.Drawing.SystemColors.HotTrack; 246 | this.lbl_name.Location = new System.Drawing.Point(344, 210); 247 | this.lbl_name.Name = "lbl_name"; 248 | this.lbl_name.Size = new System.Drawing.Size(0, 13); 249 | this.lbl_name.TabIndex = 23; 250 | // 251 | // lbl_acc 252 | // 253 | this.lbl_acc.AutoSize = true; 254 | this.lbl_acc.BackColor = System.Drawing.SystemColors.HotTrack; 255 | this.lbl_acc.Location = new System.Drawing.Point(344, 236); 256 | this.lbl_acc.Name = "lbl_acc"; 257 | this.lbl_acc.Size = new System.Drawing.Size(0, 13); 258 | this.lbl_acc.TabIndex = 24; 259 | // 260 | // pic_swipe 261 | // 262 | this.pic_swipe.Image = ((System.Drawing.Image)(resources.GetObject("pic_swipe.Image"))); 263 | this.pic_swipe.Location = new System.Drawing.Point(346, 290); 264 | this.pic_swipe.Name = "pic_swipe"; 265 | this.pic_swipe.Size = new System.Drawing.Size(100, 86); 266 | this.pic_swipe.TabIndex = 25; 267 | this.pic_swipe.TabStop = false; 268 | // 269 | // ATM_Machine 270 | // 271 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 272 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 273 | this.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImage"))); 274 | this.ClientSize = new System.Drawing.Size(755, 750); 275 | this.Controls.Add(this.pic_swipe); 276 | this.Controls.Add(this.lbl_acc); 277 | this.Controls.Add(this.lbl_name); 278 | this.Controls.Add(this.txtb_input); 279 | this.Controls.Add(this.lbl_middle); 280 | this.Controls.Add(this.lbl_lower); 281 | this.Controls.Add(this.lbl_upper); 282 | this.Controls.Add(this.btn_enter); 283 | this.Controls.Add(this.btn_registration); 284 | this.Controls.Add(this.btn_correction); 285 | this.Controls.Add(this.btn_cancel); 286 | this.Controls.Add(this.btn_key_0); 287 | this.Controls.Add(this.btn_key_9); 288 | this.Controls.Add(this.btn_key_8); 289 | this.Controls.Add(this.btn_key_7); 290 | this.Controls.Add(this.btn_key_6); 291 | this.Controls.Add(this.btn_key_5); 292 | this.Controls.Add(this.btn_key_4); 293 | this.Controls.Add(this.btn_key_3); 294 | this.Controls.Add(this.btn_key_2); 295 | this.Controls.Add(this.btn_key_1); 296 | this.Controls.Add(this.lstbx_details); 297 | this.Name = "ATM_Machine"; 298 | this.Text = "ATM_Machine"; 299 | this.Load += new System.EventHandler(this.ATM_Machine_Load); 300 | ((System.ComponentModel.ISupportInitialize)(this.pic_swipe)).EndInit(); 301 | this.ResumeLayout(false); 302 | this.PerformLayout(); 303 | 304 | } 305 | 306 | #endregion 307 | 308 | private System.Windows.Forms.ListBox lstbx_details; 309 | private System.Windows.Forms.Button btn_key_1; 310 | private System.Windows.Forms.Button btn_key_2; 311 | private System.Windows.Forms.Button btn_key_3; 312 | private System.Windows.Forms.Button btn_key_4; 313 | private System.Windows.Forms.Button btn_key_5; 314 | private System.Windows.Forms.Button btn_key_6; 315 | private System.Windows.Forms.Button btn_key_7; 316 | private System.Windows.Forms.Button btn_key_8; 317 | private System.Windows.Forms.Button btn_key_9; 318 | private System.Windows.Forms.Button btn_key_0; 319 | private System.Windows.Forms.Button btn_cancel; 320 | private System.Windows.Forms.Button btn_correction; 321 | private System.Windows.Forms.Button btn_registration; 322 | private System.Windows.Forms.Button btn_enter; 323 | private System.Windows.Forms.Label lbl_upper; 324 | private System.Windows.Forms.Label lbl_lower; 325 | private System.Windows.Forms.Label lbl_middle; 326 | private System.Windows.Forms.TextBox txtb_input; 327 | private System.Windows.Forms.Label lbl_name; 328 | private System.Windows.Forms.Label lbl_acc; 329 | private System.Windows.Forms.PictureBox pic_swipe; 330 | } 331 | } -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Windows Forms/Finger_Registration.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace Fingerprint_Authentication 2 | { 3 | partial class Finger_Registration 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | this.label1 = new System.Windows.Forms.Label(); 32 | this.lbl_acc = new System.Windows.Forms.Label(); 33 | this.lbl_name = new System.Windows.Forms.Label(); 34 | this.lbl_pin = new System.Windows.Forms.Label(); 35 | this.lbl_finger_option = new System.Windows.Forms.Label(); 36 | this.txt_acc = new System.Windows.Forms.TextBox(); 37 | this.txt_name = new System.Windows.Forms.TextBox(); 38 | this.txt_pin = new System.Windows.Forms.TextBox(); 39 | this.chkb_finger_option = new System.Windows.Forms.CheckBox(); 40 | this.btn_submit = new System.Windows.Forms.Button(); 41 | this.btn_clear = new System.Windows.Forms.Button(); 42 | this.btn_del = new System.Windows.Forms.Button(); 43 | this.SuspendLayout(); 44 | // 45 | // label1 46 | // 47 | this.label1.AutoSize = true; 48 | this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 18F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Underline))), System.Drawing.GraphicsUnit.Point, ((byte)(0))); 49 | this.label1.Location = new System.Drawing.Point(46, 18); 50 | this.label1.Name = "label1"; 51 | this.label1.Size = new System.Drawing.Size(528, 29); 52 | this.label1.TabIndex = 0; 53 | this.label1.Text = "Fingerprint Authentication Registration Form"; 54 | // 55 | // lbl_acc 56 | // 57 | this.lbl_acc.AutoSize = true; 58 | this.lbl_acc.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 59 | this.lbl_acc.Location = new System.Drawing.Point(48, 146); 60 | this.lbl_acc.Name = "lbl_acc"; 61 | this.lbl_acc.Size = new System.Drawing.Size(122, 17); 62 | this.lbl_acc.TabIndex = 1; 63 | this.lbl_acc.Text = "Account Number *"; 64 | // 65 | // lbl_name 66 | // 67 | this.lbl_name.AutoSize = true; 68 | this.lbl_name.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 69 | this.lbl_name.Location = new System.Drawing.Point(48, 206); 70 | this.lbl_name.Name = "lbl_name"; 71 | this.lbl_name.Size = new System.Drawing.Size(54, 17); 72 | this.lbl_name.TabIndex = 2; 73 | this.lbl_name.Text = "Name *"; 74 | // 75 | // lbl_pin 76 | // 77 | this.lbl_pin.AutoSize = true; 78 | this.lbl_pin.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 79 | this.lbl_pin.Location = new System.Drawing.Point(48, 262); 80 | this.lbl_pin.Name = "lbl_pin"; 81 | this.lbl_pin.Size = new System.Drawing.Size(76, 17); 82 | this.lbl_pin.TabIndex = 3; 83 | this.lbl_pin.Text = "PIN Code *"; 84 | // 85 | // lbl_finger_option 86 | // 87 | this.lbl_finger_option.AutoSize = true; 88 | this.lbl_finger_option.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 89 | this.lbl_finger_option.Location = new System.Drawing.Point(48, 90); 90 | this.lbl_finger_option.Name = "lbl_finger_option"; 91 | this.lbl_finger_option.Size = new System.Drawing.Size(140, 17); 92 | this.lbl_finger_option.TabIndex = 4; 93 | this.lbl_finger_option.Text = "Fingerprint Security *"; 94 | // 95 | // txt_acc 96 | // 97 | this.txt_acc.Location = new System.Drawing.Point(334, 143); 98 | this.txt_acc.Name = "txt_acc"; 99 | this.txt_acc.Size = new System.Drawing.Size(240, 20); 100 | this.txt_acc.TabIndex = 5; 101 | // 102 | // txt_name 103 | // 104 | this.txt_name.Location = new System.Drawing.Point(334, 203); 105 | this.txt_name.Name = "txt_name"; 106 | this.txt_name.Size = new System.Drawing.Size(240, 20); 107 | this.txt_name.TabIndex = 6; 108 | // 109 | // txt_pin 110 | // 111 | this.txt_pin.Location = new System.Drawing.Point(334, 259); 112 | this.txt_pin.Name = "txt_pin"; 113 | this.txt_pin.Size = new System.Drawing.Size(240, 20); 114 | this.txt_pin.TabIndex = 7; 115 | // 116 | // chkb_finger_option 117 | // 118 | this.chkb_finger_option.AutoSize = true; 119 | this.chkb_finger_option.Location = new System.Drawing.Point(334, 90); 120 | this.chkb_finger_option.Name = "chkb_finger_option"; 121 | this.chkb_finger_option.Size = new System.Drawing.Size(195, 17); 122 | this.chkb_finger_option.TabIndex = 8; 123 | this.chkb_finger_option.Text = "(Check if you want to add a feature)"; 124 | this.chkb_finger_option.UseVisualStyleBackColor = true; 125 | this.chkb_finger_option.CheckedChanged += new System.EventHandler(this.chkb_finger_option_CheckedChanged); 126 | // 127 | // btn_submit 128 | // 129 | this.btn_submit.Location = new System.Drawing.Point(334, 310); 130 | this.btn_submit.Name = "btn_submit"; 131 | this.btn_submit.Size = new System.Drawing.Size(75, 23); 132 | this.btn_submit.TabIndex = 9; 133 | this.btn_submit.Text = "Submit"; 134 | this.btn_submit.UseVisualStyleBackColor = true; 135 | this.btn_submit.Click += new System.EventHandler(this.btn_submit_Click); 136 | // 137 | // btn_clear 138 | // 139 | this.btn_clear.Location = new System.Drawing.Point(498, 309); 140 | this.btn_clear.Name = "btn_clear"; 141 | this.btn_clear.Size = new System.Drawing.Size(75, 23); 142 | this.btn_clear.TabIndex = 10; 143 | this.btn_clear.Text = "Clear"; 144 | this.btn_clear.UseVisualStyleBackColor = true; 145 | this.btn_clear.Click += new System.EventHandler(this.btn_clear_Click); 146 | // 147 | // btn_del 148 | // 149 | this.btn_del.Location = new System.Drawing.Point(417, 309); 150 | this.btn_del.Name = "btn_del"; 151 | this.btn_del.Size = new System.Drawing.Size(75, 23); 152 | this.btn_del.TabIndex = 11; 153 | this.btn_del.Text = "Delete"; 154 | this.btn_del.UseVisualStyleBackColor = true; 155 | this.btn_del.Click += new System.EventHandler(this.btn_del_Click); 156 | // 157 | // Finger_Registration 158 | // 159 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 160 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 161 | this.ClientSize = new System.Drawing.Size(622, 355); 162 | this.Controls.Add(this.btn_del); 163 | this.Controls.Add(this.btn_clear); 164 | this.Controls.Add(this.btn_submit); 165 | this.Controls.Add(this.chkb_finger_option); 166 | this.Controls.Add(this.txt_pin); 167 | this.Controls.Add(this.txt_name); 168 | this.Controls.Add(this.txt_acc); 169 | this.Controls.Add(this.lbl_finger_option); 170 | this.Controls.Add(this.lbl_pin); 171 | this.Controls.Add(this.lbl_name); 172 | this.Controls.Add(this.lbl_acc); 173 | this.Controls.Add(this.label1); 174 | this.Name = "Finger_Registration"; 175 | this.Text = "Finger_Registration"; 176 | this.Load += new System.EventHandler(this.Finger_Registration_Load); 177 | this.ResumeLayout(false); 178 | this.PerformLayout(); 179 | 180 | } 181 | 182 | #endregion 183 | 184 | private System.Windows.Forms.Label label1; 185 | private System.Windows.Forms.Label lbl_acc; 186 | private System.Windows.Forms.Label lbl_name; 187 | private System.Windows.Forms.Label lbl_pin; 188 | private System.Windows.Forms.Label lbl_finger_option; 189 | private System.Windows.Forms.TextBox txt_acc; 190 | private System.Windows.Forms.TextBox txt_name; 191 | private System.Windows.Forms.TextBox txt_pin; 192 | private System.Windows.Forms.CheckBox chkb_finger_option; 193 | private System.Windows.Forms.Button btn_submit; 194 | private System.Windows.Forms.Button btn_clear; 195 | private System.Windows.Forms.Button btn_del; 196 | } 197 | } -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Windows Forms/Finger_Registration.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Data; 5 | using System.Drawing; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Windows.Forms; 9 | using System.Data.SqlClient; 10 | 11 | namespace Fingerprint_Authentication 12 | { 13 | public partial class Finger_Registration : Form 14 | { 15 | DB_ATM_Data_Connection db_data = new DB_ATM_Data_Connection(); //Declaring the Database Connection Class 16 | DB_ATM_Fingerprint_Connection db_finger = new DB_ATM_Fingerprint_Connection(); //Declaring the Database Connection Class 17 | 18 | public Finger_Registration() 19 | { 20 | InitializeComponent(); 21 | } 22 | 23 | private void Finger_Registration_Load(object sender, EventArgs e) //Event run when the form is loaded or refreshed 24 | { 25 | chkb_finger_option.Checked = false; //Use to check the checkbox 26 | } 27 | 28 | private void chkb_finger_option_CheckedChanged(object sender, EventArgs e) //Event of checked box when any event is generated 29 | { 30 | if (chkb_finger_option.Checked == true) //Checking the checkbox condition. 31 | { 32 | Registration_Advance ra = new Registration_Advance(); //Creating object of Registration_Advance form. 33 | ra.Show(); //Use to run the called form. 34 | this.Hide(); //Use to hide the current running form. 35 | } 36 | } 37 | 38 | private void btn_clear_Click(object sender, EventArgs e) //Event of checked box when any event is generated 39 | { 40 | //Clearing the fields of all the textboxs. 41 | txt_acc.Text = ""; //Clear text field by entering NULL value. 42 | txt_name.Text = ""; //Clear text field by entering NULL value. 43 | txt_pin.Text = ""; //Clear text field by entering NULL value. 44 | chkb_finger_option.Checked = false; //Changing the checked value. 45 | } 46 | 47 | private void btn_del_Click(object sender, EventArgs e) //Event of delete button when any event is generated 48 | { 49 | DataSet ds = new DataSet(); //Creatind object of predefined class for disconnected mode connection. 50 | 51 | string query_del_data, query_del_finger; //Declaring the STRING datatype fields. 52 | //Entering the query in both datatype fields 53 | query_del_data = "DELETE FROM tbl_acc_details WHERE Acc_No = '" + txt_acc.Text + "' "; 54 | query_del_finger = "DELETE FROM tbl_acc_finger WHERE Acc_No = '" + txt_acc.Text + "' "; 55 | 56 | SqlDataAdapter da_data, da_finger; //Initializing the disconnected mode connection. 57 | 58 | da_data = new SqlDataAdapter(query_del_data, db_data.Connect_Details()); 59 | da_finger = new SqlDataAdapter(query_del_finger, db_finger.Connect_Fingerprint()); 60 | 61 | da_data.Fill(ds); 62 | da_finger.Fill(ds); 63 | 64 | //Clearing the fields of all the textboxs. 65 | txt_acc.Text = ""; //Clear text field by entering NULL value. 66 | txt_name.Text = ""; //Clear text field by entering NULL value. 67 | txt_pin.Text = ""; //Clear text field by entering NULL value. 68 | chkb_finger_option.Checked = false; //Changing the checked value. 69 | } 70 | 71 | private void btn_submit_Click(object sender, EventArgs e) 72 | { 73 | DataSet ds = new DataSet(); //Creatind object of predefined class for disconnected mode connection. 74 | string option, query; //Declaring the STRING datatype fields. 75 | 76 | if (chkb_finger_option.Checked == true) //Checking for the checkbox for gaining the value for database. 77 | { 78 | option = "Yes"; 79 | } 80 | 81 | else 82 | { 83 | option = "No"; 84 | } 85 | 86 | //Entering the query in fields 87 | query = "INSERT INTO tbl_acc_details (Acc_No, Name, Password, Fingerprint_Option) VALUES('" + txt_acc.Text.Trim() + "', '" + txt_name.Text.Trim() + "', '" + txt_pin.Text.Trim() + "', '" + option.Trim() + "')"; 88 | 89 | //Initializing the disconnected mode connection. 90 | SqlDataAdapter da = new SqlDataAdapter(query, db_data.Connect_Details()); 91 | da.Fill(ds); 92 | 93 | //Clearing the fields of all the textboxs. 94 | txt_acc.Text = ""; //Clear text field by entering NULL value. 95 | txt_name.Text = ""; //Clear text field by entering NULL value. 96 | txt_pin.Text = ""; //Clear text field by entering NULL value. 97 | chkb_finger_option.Checked = false; //Changing the checked value. 98 | } 99 | 100 | } 101 | } 102 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Windows Forms/Finger_Registration.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Windows Forms/Registration_Advance.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace Fingerprint_Authentication 2 | { 3 | partial class Registration_Advance 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | this.btn_del = new System.Windows.Forms.Button(); 32 | this.btn_clear = new System.Windows.Forms.Button(); 33 | this.btn_submit = new System.Windows.Forms.Button(); 34 | this.chkb_finger_option = new System.Windows.Forms.CheckBox(); 35 | this.txt_pin = new System.Windows.Forms.TextBox(); 36 | this.txt_name = new System.Windows.Forms.TextBox(); 37 | this.txt_acc = new System.Windows.Forms.TextBox(); 38 | this.lbl_finger_option = new System.Windows.Forms.Label(); 39 | this.lbl_pin = new System.Windows.Forms.Label(); 40 | this.lbl_name = new System.Windows.Forms.Label(); 41 | this.lbl_acc = new System.Windows.Forms.Label(); 42 | this.label1 = new System.Windows.Forms.Label(); 43 | this.lbl_enroll = new System.Windows.Forms.Label(); 44 | this.txt_finger = new System.Windows.Forms.TextBox(); 45 | this.btn_enroll = new System.Windows.Forms.Button(); 46 | this.SuspendLayout(); 47 | // 48 | // btn_del 49 | // 50 | this.btn_del.Location = new System.Drawing.Point(414, 385); 51 | this.btn_del.Name = "btn_del"; 52 | this.btn_del.Size = new System.Drawing.Size(75, 23); 53 | this.btn_del.TabIndex = 23; 54 | this.btn_del.Text = "Delete"; 55 | this.btn_del.UseVisualStyleBackColor = true; 56 | this.btn_del.Click += new System.EventHandler(this.btn_del_Click); 57 | // 58 | // btn_clear 59 | // 60 | this.btn_clear.Location = new System.Drawing.Point(495, 385); 61 | this.btn_clear.Name = "btn_clear"; 62 | this.btn_clear.Size = new System.Drawing.Size(75, 23); 63 | this.btn_clear.TabIndex = 22; 64 | this.btn_clear.Text = "Clear"; 65 | this.btn_clear.UseVisualStyleBackColor = true; 66 | this.btn_clear.Click += new System.EventHandler(this.btn_clear_Click); 67 | // 68 | // btn_submit 69 | // 70 | this.btn_submit.Location = new System.Drawing.Point(331, 386); 71 | this.btn_submit.Name = "btn_submit"; 72 | this.btn_submit.Size = new System.Drawing.Size(75, 23); 73 | this.btn_submit.TabIndex = 21; 74 | this.btn_submit.Text = "Submit"; 75 | this.btn_submit.UseVisualStyleBackColor = true; 76 | this.btn_submit.Click += new System.EventHandler(this.btn_submit_Click); 77 | // 78 | // chkb_finger_option 79 | // 80 | this.chkb_finger_option.AutoSize = true; 81 | this.chkb_finger_option.Location = new System.Drawing.Point(331, 90); 82 | this.chkb_finger_option.Name = "chkb_finger_option"; 83 | this.chkb_finger_option.Size = new System.Drawing.Size(195, 17); 84 | this.chkb_finger_option.TabIndex = 20; 85 | this.chkb_finger_option.Text = "(Check if you want to add a feature)"; 86 | this.chkb_finger_option.UseVisualStyleBackColor = true; 87 | this.chkb_finger_option.CheckedChanged += new System.EventHandler(this.chkb_finger_option_CheckedChanged); 88 | // 89 | // txt_pin 90 | // 91 | this.txt_pin.Location = new System.Drawing.Point(331, 259); 92 | this.txt_pin.Name = "txt_pin"; 93 | this.txt_pin.Size = new System.Drawing.Size(240, 20); 94 | this.txt_pin.TabIndex = 19; 95 | // 96 | // txt_name 97 | // 98 | this.txt_name.Location = new System.Drawing.Point(331, 203); 99 | this.txt_name.Name = "txt_name"; 100 | this.txt_name.Size = new System.Drawing.Size(240, 20); 101 | this.txt_name.TabIndex = 18; 102 | // 103 | // txt_acc 104 | // 105 | this.txt_acc.Location = new System.Drawing.Point(331, 143); 106 | this.txt_acc.Name = "txt_acc"; 107 | this.txt_acc.Size = new System.Drawing.Size(240, 20); 108 | this.txt_acc.TabIndex = 17; 109 | // 110 | // lbl_finger_option 111 | // 112 | this.lbl_finger_option.AutoSize = true; 113 | this.lbl_finger_option.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 114 | this.lbl_finger_option.Location = new System.Drawing.Point(45, 90); 115 | this.lbl_finger_option.Name = "lbl_finger_option"; 116 | this.lbl_finger_option.Size = new System.Drawing.Size(140, 17); 117 | this.lbl_finger_option.TabIndex = 16; 118 | this.lbl_finger_option.Text = "Fingerprint Security *"; 119 | // 120 | // lbl_pin 121 | // 122 | this.lbl_pin.AutoSize = true; 123 | this.lbl_pin.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 124 | this.lbl_pin.Location = new System.Drawing.Point(45, 262); 125 | this.lbl_pin.Name = "lbl_pin"; 126 | this.lbl_pin.Size = new System.Drawing.Size(76, 17); 127 | this.lbl_pin.TabIndex = 15; 128 | this.lbl_pin.Text = "PIN Code *"; 129 | // 130 | // lbl_name 131 | // 132 | this.lbl_name.AutoSize = true; 133 | this.lbl_name.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 134 | this.lbl_name.Location = new System.Drawing.Point(45, 206); 135 | this.lbl_name.Name = "lbl_name"; 136 | this.lbl_name.Size = new System.Drawing.Size(54, 17); 137 | this.lbl_name.TabIndex = 14; 138 | this.lbl_name.Text = "Name *"; 139 | // 140 | // lbl_acc 141 | // 142 | this.lbl_acc.AutoSize = true; 143 | this.lbl_acc.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 144 | this.lbl_acc.Location = new System.Drawing.Point(45, 146); 145 | this.lbl_acc.Name = "lbl_acc"; 146 | this.lbl_acc.Size = new System.Drawing.Size(122, 17); 147 | this.lbl_acc.TabIndex = 13; 148 | this.lbl_acc.Text = "Account Number *"; 149 | // 150 | // label1 151 | // 152 | this.label1.AutoSize = true; 153 | this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 18F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Underline))), System.Drawing.GraphicsUnit.Point, ((byte)(0))); 154 | this.label1.Location = new System.Drawing.Point(43, 18); 155 | this.label1.Name = "label1"; 156 | this.label1.Size = new System.Drawing.Size(528, 29); 157 | this.label1.TabIndex = 12; 158 | this.label1.Text = "Fingerprint Authentication Registration Form"; 159 | // 160 | // lbl_enroll 161 | // 162 | this.lbl_enroll.AutoSize = true; 163 | this.lbl_enroll.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); 164 | this.lbl_enroll.Location = new System.Drawing.Point(452, 329); 165 | this.lbl_enroll.Name = "lbl_enroll"; 166 | this.lbl_enroll.Size = new System.Drawing.Size(118, 17); 167 | this.lbl_enroll.TabIndex = 24; 168 | this.lbl_enroll.Text = "Finger is Enrolled"; 169 | // 170 | // txt_finger 171 | // 172 | this.txt_finger.Location = new System.Drawing.Point(495, 349); 173 | this.txt_finger.Name = "txt_finger"; 174 | this.txt_finger.Size = new System.Drawing.Size(76, 20); 175 | this.txt_finger.TabIndex = 25; 176 | // 177 | // btn_enroll 178 | // 179 | this.btn_enroll.Location = new System.Drawing.Point(48, 329); 180 | this.btn_enroll.Name = "btn_enroll"; 181 | this.btn_enroll.Size = new System.Drawing.Size(358, 23); 182 | this.btn_enroll.TabIndex = 26; 183 | this.btn_enroll.Text = "Enroll Finger"; 184 | this.btn_enroll.UseVisualStyleBackColor = true; 185 | this.btn_enroll.Click += new System.EventHandler(this.btn_enroll_Click); 186 | // 187 | // Registration_Advance 188 | // 189 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 190 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 191 | this.ClientSize = new System.Drawing.Size(623, 433); 192 | this.Controls.Add(this.btn_enroll); 193 | this.Controls.Add(this.txt_finger); 194 | this.Controls.Add(this.lbl_enroll); 195 | this.Controls.Add(this.btn_del); 196 | this.Controls.Add(this.btn_clear); 197 | this.Controls.Add(this.btn_submit); 198 | this.Controls.Add(this.chkb_finger_option); 199 | this.Controls.Add(this.txt_pin); 200 | this.Controls.Add(this.txt_name); 201 | this.Controls.Add(this.txt_acc); 202 | this.Controls.Add(this.lbl_finger_option); 203 | this.Controls.Add(this.lbl_pin); 204 | this.Controls.Add(this.lbl_name); 205 | this.Controls.Add(this.lbl_acc); 206 | this.Controls.Add(this.label1); 207 | this.Name = "Registration_Advance"; 208 | this.Text = "Registration_Advance"; 209 | this.Load += new System.EventHandler(this.Registration_Advance_Load); 210 | this.ResumeLayout(false); 211 | this.PerformLayout(); 212 | 213 | } 214 | 215 | #endregion 216 | 217 | private System.Windows.Forms.Button btn_del; 218 | private System.Windows.Forms.Button btn_clear; 219 | private System.Windows.Forms.Button btn_submit; 220 | private System.Windows.Forms.CheckBox chkb_finger_option; 221 | private System.Windows.Forms.TextBox txt_pin; 222 | private System.Windows.Forms.TextBox txt_name; 223 | private System.Windows.Forms.TextBox txt_acc; 224 | private System.Windows.Forms.Label lbl_finger_option; 225 | private System.Windows.Forms.Label lbl_pin; 226 | private System.Windows.Forms.Label lbl_name; 227 | private System.Windows.Forms.Label lbl_acc; 228 | private System.Windows.Forms.Label label1; 229 | private System.Windows.Forms.Label lbl_enroll; 230 | private System.Windows.Forms.TextBox txt_finger; 231 | private System.Windows.Forms.Button btn_enroll; 232 | 233 | } 234 | } -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Windows Forms/Registration_Advance.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Data; 5 | using System.Drawing; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Windows.Forms; 9 | using System.Data.SqlClient; 10 | using System.Diagnostics; 11 | 12 | namespace Fingerprint_Authentication 13 | { 14 | public partial class Registration_Advance : Form 15 | { 16 | DB_ATM_Data_Connection db_data = new DB_ATM_Data_Connection(); //Declaring the Database Connection Class 17 | DB_ATM_Fingerprint_Connection db_finger = new DB_ATM_Fingerprint_Connection(); //Declaring the Database Connection Class 18 | 19 | public Registration_Advance() 20 | { 21 | InitializeComponent(); 22 | } 23 | 24 | private void Registration_Advance_Load(object sender, EventArgs e) //Event run when the form is loaded or refreshed 25 | { 26 | //Page Load of the Registration_Advance Page 27 | chkb_finger_option.Checked = true; //Use to check the checkbox 28 | lbl_enroll.Visible = false; //Hiding the label so user can't view 29 | txt_finger.Visible = false; //Hiding the text field so value can be use to save. 30 | } 31 | 32 | private void chkb_finger_option_CheckedChanged(object sender, EventArgs e) //Event of checked box when any event is generated 33 | { 34 | if (chkb_finger_option.Checked == false) //Checking the checkbox condition. 35 | { 36 | Finger_Registration fr = new Finger_Registration(); //Creating object of Finger_Registration form. 37 | fr.Show(); //Use to run the called form. 38 | this.Hide(); //Use to hide the current running form. 39 | } 40 | } 41 | 42 | private void btn_enroll_Click(object sender, EventArgs e) //Event of enroll button when any event is generated 43 | { 44 | Process.Start("C:\\Windows\\sgdx.exe"); //Use to run any file by giving the path. Use by importing System.Diagnostics. 45 | 46 | lbl_enroll.Visible = true; //Showing label for giving message. 47 | } 48 | 49 | private void btn_clear_Click(object sender, EventArgs e) //Event of clear button when any event is generated 50 | { 51 | //Clearing the fields of all the textboxs. 52 | txt_acc.Text = ""; //Clear text field by entering NULL value. 53 | txt_name.Text = ""; //Clear text field by entering NULL value. 54 | txt_pin.Text = ""; //Clear text field by entering NULL value. 55 | txt_finger.Text = ""; //Clear text field by entering NULL value. 56 | chkb_finger_option.Checked = true; //Changing the checked value. 57 | } 58 | 59 | private void btn_del_Click(object sender, EventArgs e) //Event of delete button when any event is generated 60 | { 61 | DataSet ds = new DataSet(); //Creatind object of predefined class for disconnected mode connection. 62 | 63 | string query_del_data, query_del_finger; //Declaring the STRING datatype fields. 64 | //Entering the query in both datatype fields 65 | query_del_data = "DELETE FROM tbl_acc_details WHERE Acc_No = '" + txt_acc.Text + "' "; 66 | query_del_finger = "DELETE FROM tbl_acc_finger WHERE Acc_No = '" + txt_acc.Text + "' "; 67 | 68 | SqlDataAdapter da_data, da_finger; //Initializing the disconnected mode connection. 69 | 70 | da_data = new SqlDataAdapter(query_del_data, db_data.Connect_Details()); 71 | da_finger = new SqlDataAdapter(query_del_finger, db_finger.Connect_Fingerprint()); 72 | 73 | da_data.Fill(ds); 74 | da_finger.Fill(ds); 75 | 76 | //Clearing the fields of all the textboxs. 77 | txt_acc.Text = ""; //Clear text field by entering NULL value. 78 | txt_name.Text = ""; //Clear text field by entering NULL value. 79 | txt_pin.Text = ""; //Clear text field by entering NULL value. 80 | txt_finger.Text = ""; //Clear text field by entering NULL value. 81 | chkb_finger_option.Checked = false; //Changing the checked value. 82 | } 83 | 84 | private void btn_submit_Click(object sender, EventArgs e) //Event of submit button when any event is generated 85 | { 86 | DataSet ds = new DataSet(); //Creatind object of predefined class for disconnected mode connection. 87 | string option, query_data, query_finger; //Declaring the STRING datatype fields. 88 | 89 | if (chkb_finger_option.Checked == true) //Checking for the checkbox for gaining the value for database. 90 | { 91 | option = "Yes"; 92 | } 93 | 94 | else 95 | { 96 | option = "No"; 97 | } 98 | 99 | txt_finger.Text = "~Images/Original/" + txt_acc.Text + ".bmp"; 100 | 101 | //Entering the query in fields 102 | query_data = "INSERT INTO tbl_acc_details (Acc_No, Name, Password, Fingerprint_Option) VALUES('" + txt_acc.Text.Trim() + "', '" + txt_name.Text.Trim() + "', '" + txt_pin.Text.Trim() + "', '" + option.Trim() + "')"; 103 | query_finger = "INSERT INTO tbl_acc_finger (Acc_No, Original_Finger) VALUES ('" + txt_acc.Text.Trim() + "', '" + txt_finger.Text.Trim() + "')"; 104 | 105 | //Initializing the disconnected mode connection. 106 | SqlDataAdapter da_data = new SqlDataAdapter(query_data, db_data.Connect_Details()); 107 | SqlDataAdapter da_finger = new SqlDataAdapter(query_finger, db_finger.Connect_Fingerprint()); 108 | da_data.Fill(ds); 109 | da_finger.Fill(ds); 110 | 111 | //Clearing the fields of all the textboxs. 112 | txt_acc.Text = ""; //Clear text field by entering NULL value. 113 | txt_name.Text = ""; //Clear text field by entering NULL value. 114 | txt_pin.Text = ""; //Clear text field by entering NULL value. 115 | txt_finger.Text = ""; //Clear text field by entering NULL value. 116 | chkb_finger_option.Checked = true; //Changing the checked value. 117 | } 118 | } 119 | } 120 | -------------------------------------------------------------------------------- /Fingerprint_Authentication/Fingerprint_Authentication/Windows Forms/Registration_Advance.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Paras Garg 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Matlab/Matlab '.m' Files/Database_Connectivity.m: -------------------------------------------------------------------------------- 1 | function [conn, original, temp] = Database_Connectivity 2 | 3 | clc; clear all; close all; 4 | 5 | %%DATABASE CONNECTIVITY is begining 6 | 7 | %%Set preferences with setdbprefs. 8 | setdbprefs('DataReturnFormat', 'cellarray'); 9 | 10 | %%Make connection to database. Note that the password has been omitted. 11 | %%Using JDBC driver. 12 | conn = database('ATM_Fingerprint', '', '', 'Vendor', 'MICROSOFT SQL SERVER',... 13 | 'Server', 'PARASGARG-HP', 'PortNumber', 1433, 'AuthType',... 14 | 'Windows'); 15 | 16 | %%SQL Queries are written to fetch information from database 17 | %SQL Query is written to fetch original image name from database 18 | query_original = 'SELECT Original_Finger FROM tbl_matlab_temp'; 19 | %SQL Query is written to fetch temp image name from database 20 | query_temp = 'SELECT Temp_Finger FROM tbl_matlab_temp'; 21 | 22 | %%Reading data from database 23 | %Reading original image name from database 24 | curs = exec(conn, query_original); 25 | curs = fetch(curs); 26 | original = curs.Data; 27 | %Reading temp image name from database 28 | curs = exec(conn, query_temp); 29 | curs = fetch(curs); 30 | temp = curs.Data; 31 | 32 | %The value fetched from the database is in the cell datatype. To use 33 | %for assigning to other variable, the value should be in appropriate format 34 | %such as should be in string or in int. And to add or update the data in 35 | %the database the value must be in cell datatype. 36 | 37 | %%Converting the value from CELL to STRING 38 | %Converting Original image path 39 | original = char (original); 40 | %Converting Temp image path 41 | temp = char (temp); 42 | 43 | %Removing unwanted variables from the workspace 44 | clear query_original; 45 | clear query_temp; 46 | clear curs; -------------------------------------------------------------------------------- /Matlab/Matlab '.m' Files/Fingerprint_Authentication_Menu.m: -------------------------------------------------------------------------------- 1 | function varargout = Fingerprint_Authentication_Menu(varargin) 2 | % FINGERPRINT_AUTHENTICATION_MENU MATLAB code for Fingerprint_Authentication_Menu.fig 3 | % FINGERPRINT_AUTHENTICATION_MENU, by itself, creates a new FINGERPRINT_AUTHENTICATION_MENU or raises the existing 4 | % singleton*. 5 | % 6 | % H = FINGERPRINT_AUTHENTICATION_MENU returns the handle to a new FINGERPRINT_AUTHENTICATION_MENU or the handle to 7 | % the existing singleton*. 8 | % 9 | % FINGERPRINT_AUTHENTICATION_MENU('CALLBACK',hObject,eventData,handles,...) calls the local 10 | % function named CALLBACK in FINGERPRINT_AUTHENTICATION_MENU.M with the given input arguments. 11 | % 12 | % FINGERPRINT_AUTHENTICATION_MENU('Property','Value',...) creates a new FINGERPRINT_AUTHENTICATION_MENU or raises the 13 | % existing singleton*. Starting from the left, property value pairs are 14 | % applied to the GUI before Fingerprint_Authentication_Menu_OpeningFcn gets called. An 15 | % unrecognized property name or invalid value makes property application 16 | % stop. All inputs are passed to Fingerprint_Authentication_Menu_OpeningFcn via varargin. 17 | % 18 | % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one 19 | % instance to run (singleton)". 20 | % 21 | % See also: GUIDE, GUIDATA, GUIHANDLES 22 | 23 | % Edit the above text to modify the response to help Fingerprint_Authentication_Menu 24 | 25 | % Last Modified by GUIDE v2.5 28-May-2013 22:10:42 26 | 27 | % Begin initialization code - DO NOT EDIT 28 | gui_Singleton = 1; 29 | gui_State = struct('gui_Name', mfilename, ... 30 | 'gui_Singleton', gui_Singleton, ... 31 | 'gui_OpeningFcn', @Fingerprint_Authentication_Menu_OpeningFcn, ... 32 | 'gui_OutputFcn', @Fingerprint_Authentication_Menu_OutputFcn, ... 33 | 'gui_LayoutFcn', [] , ... 34 | 'gui_Callback', []); 35 | if nargin && ischar(varargin{1}) 36 | gui_State.gui_Callback = str2func(varargin{1}); 37 | end 38 | 39 | if nargout 40 | [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); 41 | else 42 | gui_mainfcn(gui_State, varargin{:}); 43 | end 44 | % End initialization code - DO NOT EDIT 45 | 46 | 47 | % --- Executes just before Fingerprint_Authentication_Menu is made visible. 48 | function Fingerprint_Authentication_Menu_OpeningFcn(hObject, ~, handles, varargin) 49 | % This function has no output args, see OutputFcn. 50 | % hObject handle to figure 51 | % eventdata reserved - to be defined in a future version of MATLAB 52 | % handles structure with handles and user data (see GUIDATA) 53 | % varargin command line arguments to Fingerprint_Authentication_Menu (see VARARGIN) 54 | 55 | % Choose default command line output for Fingerprint_Authentication_Menu 56 | handles.output = hObject; 57 | 58 | % Update handles structure 59 | guidata(hObject, handles); 60 | 61 | % UIWAIT makes Fingerprint_Authentication_Menu wait for user response (see UIRESUME) 62 | % uiwait(handles.fingerprint_gui); 63 | 64 | %%DATABASE CONNECTIVITY is begining 65 | 66 | %Starting Database Connectivity Code 67 | %%Set preferences with setdbprefs. 68 | setdbprefs('DataReturnFormat', 'cellarray'); 69 | 70 | %%Make connection to database. Note that the password has been omitted. 71 | %%Using JDBC driver. 72 | conn = database('ATM_Fingerprint', '', '', 'Vendor', 'MICROSOFT SQL SERVER',... 73 | 'Server', 'PARASGARG-HP', 'PortNumber', 1433, 'AuthType',... 74 | 'Windows'); 75 | 76 | %%SQL Queries are written to fetch information from database 77 | %SQL Query is written to fetch original image name from database 78 | query_original = 'SELECT Original_Finger FROM tbl_matlab_temp'; 79 | %SQL Query is written to fetch temp image name from database 80 | query_temp = 'SELECT Temp_Finger FROM tbl_matlab_temp'; 81 | 82 | %%Reading data from database 83 | %Reading original image name from database 84 | curs = exec(conn, query_original); 85 | curs = fetch(curs); 86 | original = curs.Data; 87 | %Reading temp image name from database 88 | curs = exec(conn, query_temp); 89 | curs = fetch(curs); 90 | temp = curs.Data; 91 | 92 | %The value fetched from the database is in the cell datatype. To use 93 | %for assigning to other variable, the value should be in appropriate format 94 | %such as should be in string or in int. And to add or update the data in 95 | %the database the value must be in cell datatype. 96 | 97 | %%Converting the value from CELL to STRING 98 | %Converting Original image path 99 | original = char (original); 100 | %Converting Temp image path 101 | temp = char (temp); 102 | 103 | handles.original = original; 104 | handles.temp = temp; 105 | 106 | guidata(hObject, handles); 107 | 108 | %Removing unwanted variables from the workspace 109 | clear query_original; 110 | clear query_temp; 111 | clear curs; 112 | clear original; 113 | clear temp; 114 | %Ending Database Connectivity code 115 | 116 | 117 | % --- Outputs from this function are returned to the command line. 118 | function varargout = Fingerprint_Authentication_Menu_OutputFcn(~, ~, handles) 119 | % varargout cell array for returning output args (see VARARGOUT); 120 | % hObject handle to figure 121 | % eventdata reserved - to be defined in a future version of MATLAB 122 | % handles structure with handles and user data (see GUIDATA) 123 | 124 | % Get default command line output from handles structure 125 | varargout{1} = handles.output; 126 | 127 | 128 | % --- Executes on button press in btn_original_figures. 129 | function btn_original_figures_Callback(~, ~, handles) %#ok 130 | % hObject handle to btn_original_figures (see GCBO) 131 | % eventdata reserved - to be defined in a future version of MATLAB 132 | % handles structure with handles and user data (see GUIDATA) 133 | 134 | original_pic = imread (handles.original); 135 | temp_pic = imread (handles.temp); 136 | 137 | axes_original = imshow (original_pic); 138 | axes (handles.axes_original) 139 | image (axes_original) 140 | 141 | axes_temp = imshow (temp_pic); 142 | axes (handles.axes_temp); 143 | 144 | handles.original_pic = original_pic; 145 | handles.temp_pic = temp_pic; 146 | 147 | guidata (handles.fingerprint_gui, handles); 148 | 149 | 150 | % --- Executes on button press in btn_binary. 151 | function btn_binary_Callback(~, ~, handles) %#ok 152 | % hObject handle to btn_binary (see GCBO) 153 | % eventdata reserved - to be defined in a future version of MATLAB 154 | % handles structure with handles and user data (see GUIDATA) 155 | 156 | original_pic_binary = im2bw(handles.original_pic, 0.5); 157 | temp_pic_binary = im2bw(handles.temp_pic, 0.5); 158 | 159 | axes_original = imshow (original_pic_binary); 160 | axes (handles.axes_original); 161 | image (axes_original); 162 | 163 | axes_temp = imshow (temp_pic_binary); 164 | axes (handles.axes_temp); 165 | 166 | handles.original_pic_binary = original_pic_binary; 167 | handles.temp_pic_binary = temp_pic_binary; 168 | 169 | guidata (handles.fingerprint_gui,handles); 170 | 171 | 172 | % --- Executes on button press in btn_thinning. 173 | function btn_thinning_Callback(~, ~, handles) 174 | % hObject handle to btn_thinning (see GCBO) 175 | % eventdata reserved - to be defined in a future version of MATLAB 176 | % handles structure with handles and user data (see GUIDATA) 177 | 178 | original_pic_thin = bwmorph(handles.original_pic_binary,'thin','Inf'); 179 | temp_pic_thin = bwmorph(handles.temp_pic_binary,'thin','Inf'); 180 | 181 | axes_original = imshow (original_pic_thin); 182 | axes (handles.axes_original); 183 | image (axes_original); 184 | 185 | axes_temp = imshow (temp_pic_thin); 186 | axes (handles.axes_temp); 187 | 188 | handles.original_pic_thin = original_pic_thin; 189 | handles.temp_pic_thin = temp_pic_thin; 190 | 191 | guidata (handles.fingerprint_gui,handles); 192 | 193 | 194 | % --- Executes on button press in btn_minutiae. 195 | function btn_minutiae_Callback(~, ~, handles) 196 | % hObject handle to btn_minutiae (see GCBO) 197 | % eventdata reserved - to be defined in a future version of MATLAB 198 | % handles structure with handles and user data (see GUIDATA) 199 | 200 | original_pic_minu = edge(handles.original_pic_thin,'prewitt'); 201 | temp_pic_minu = edge(handles.temp_pic_thin,'prewitt'); 202 | 203 | axes_original = imshow (original_pic_minu); 204 | axes (handles.axes_original); 205 | image (axes_original); 206 | 207 | axes_temp = imshow (temp_pic_minu); 208 | axes (handles.axes_temp); 209 | 210 | handles.original_pic_minu = original_pic_minu; 211 | handles.temp_pic_minu = temp_pic_minu; 212 | 213 | guidata (handles.fingerprint_gui,handles); 214 | 215 | 216 | % --- Executes on button press in btn_histogram. 217 | function btn_histogram_Callback(hObject, ~, handles) 218 | % hObject handle to btn_histogram (see GCBO) 219 | % eventdata reserved - to be defined in a future version of MATLAB 220 | % handles structure with handles and user data (see GUIDATA) 221 | 222 | % original_pic_hist = imhist(handles.edge_det_original); 223 | % temp_pic_hist = imhist(handles.edge_det_temp); 224 | 225 | original_pic_hist = hist (handles.original_pic_minu); 226 | temp_pic_hist = hist (handles.temp_pic_minu); 227 | 228 | axes_original = (original_pic_hist); 229 | axes (handles.axes_original); 230 | image (axes_original); 231 | 232 | axes_temp = (temp_pic_hist); 233 | axes (handles.axes_temp); 234 | image (axes_temp); 235 | 236 | handles.original_pic_hist = original_pic_hist; 237 | handles.temp_pic_hist = temp_pic_hist; 238 | 239 | original_pic_hist = hist (original_pic_minu); 240 | temp_pic_hist = hist (temp_pic_minu); 241 | 242 | guidata (hObject,handles); 243 | 244 | 245 | % --- Executes on button press in btn_exit. 246 | function btn_exit_Callback(~, ~, handles) 247 | % hObject handle to btn_exit (see GCBO) 248 | % eventdata reserved - to be defined in a future version of MATLAB 249 | % handles structure with handles and user data (see GUIDATA) 250 | 251 | 252 | 253 | total_count = 0; 254 | matched_count = 0; 255 | 256 | for i = 1:1:10 257 | for j = 1:1:260 258 | total_count = total_count + 1; 259 | 260 | if (handles.original_pic_hist(i,j) == handles.temp_pic_hist(i,j)) 261 | matched_count = matched_count + 1; 262 | end 263 | end 264 | end 265 | 266 | matched_percent = (matched_count/total_count)*100; 267 | 268 | 269 | %%Make connection to database. Note that the password has been omitted. 270 | %%Using JDBC driver. 271 | conn = database('ATM_Fingerprint', '', '', 'Vendor', 'MICROSOFT SQL SERVER',... 272 | 'Server', 'PARASGARG-HP', 'PortNumber', 1433, 'AuthType',... 273 | 'Windows'); 274 | 275 | 276 | %UPDATING DATABASE as per the image processing result in MATCHED column 277 | colname_match = {'Matched'}; 278 | colname_percent = {'Matched_Percent'}; 279 | result_true(1,1) = {1}; 280 | result_false(1,1) = {0}; 281 | whereClause = ''; 282 | 283 | if ( matched_percent > 81) 284 | update(conn, 'tbl_matlab_temp', colname_match, result_true, whereClause); 285 | update(conn, 'tbl_matlab_temp', colname_percent, matched_percent, whereClause); 286 | 287 | else 288 | update(conn, 'tbl_matlab_temp', colname_match, result_false, whereClause); 289 | update(conn, 'tbl_matlab_temp', colname_percent, matched_percent, whereClause); 290 | 291 | end 292 | 293 | %Closing the Matlab GUI Application 294 | close(handles.fingerprint_gui); 295 | 296 | 297 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 298 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 299 | 300 | function etxt_original_path_Callback(hObject, eventdata, handles) 301 | % hObject handle to etxt_original_path (see GCBO) 302 | % eventdata reserved - to be defined in a future version of MATLAB 303 | % handles structure with handles and user data (see GUIDATA) 304 | 305 | % Hints: get(hObject,'String') returns contents of etxt_original_path as text 306 | % str2double(get(hObject,'String')) returns contents of etxt_original_path as a double 307 | 308 | 309 | % --- Executes during object creation, after setting all properties. 310 | 311 | function etxt_original_path_CreateFcn(hObject, eventdata, handles) 312 | % hObject handle to etxt_original_path (see GCBO) 313 | % eventdata reserved - to be defined in a future version of MATLAB 314 | % handles empty - handles not created until after all CreateFcns called 315 | 316 | % Hint: edit controls usually have a white background on Windows. 317 | % See ISPC and COMPUTER. 318 | if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 319 | set(hObject,'BackgroundColor','white'); 320 | end 321 | 322 | 323 | function etxt_temp_path_Callback(hObject, eventdata, handles) 324 | % hObject handle to etxt_temp_path (see GCBO) 325 | % eventdata reserved - to be defined in a future version of MATLAB 326 | % handles structure with handles and user data (see GUIDATA) 327 | 328 | % Hints: get(hObject,'String') returns contents of etxt_temp_path as text 329 | % str2double(get(hObject,'String')) returns contents of etxt_temp_path as a double 330 | 331 | 332 | % --- Executes during object creation, after setting all properties. 333 | function etxt_temp_path_CreateFcn(hObject, eventdata, handles) 334 | % hObject handle to etxt_temp_path (see GCBO) 335 | % eventdata reserved - to be defined in a future version of MATLAB 336 | % handles empty - handles not created until after all CreateFcns called 337 | 338 | % Hint: edit controls usually have a white background on Windows. 339 | % See ISPC and COMPUTER. 340 | if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 341 | set(hObject,'BackgroundColor','white'); 342 | end 343 | 344 | 345 | % --- Executes when fingerprint_gui is resized. 346 | function fingerprint_gui_ResizeFcn(hObject, eventdata, handles) 347 | % hObject handle to fingerprint_gui (see GCBO) 348 | % eventdata reserved - to be defined in a future version of MATLAB 349 | % handles structure with handles and user data (see GUIDATA) 350 | -------------------------------------------------------------------------------- /Matlab/Matlab '.m' Files/Fingerprint_Matching.m: -------------------------------------------------------------------------------- 1 | clc; clear all; close all; 2 | 3 | 4 | %%DATABASE CONNECTIVITY is begining 5 | 6 | %Set preferences with setdbprefs. 7 | setdbprefs('DataReturnFormat', 'cellarray'); 8 | 9 | %Make connection to database. Note that the password has been omitted. 10 | %Using JDBC driver. 11 | conn = database('ATM_Fingerprint', '', '', 'Vendor', 'MICROSOFT SQL SERVER',... 12 | 'Server', 'PARASGARG-HP', 'PortNumber', 1433, 'AuthType',... 13 | 'Windows'); 14 | 15 | %SQL Queries are written to fetch information from database 16 | %SQL Queries are written to fetch original image name from database 17 | query_original = 'SELECT Original_Finger FROM tbl_matlab_temp'; 18 | %SQL Queries are written to fetch temp image name from database 19 | query_temp = 'SELECT Temp_Finger FROM tbl_matlab_temp'; 20 | 21 | %Read data from database 22 | %Reading original image name from database 23 | curs = exec(conn, query_original); 24 | curs = fetch(curs); 25 | original = curs.Data; 26 | %Reading temp image name from database 27 | curs = exec(conn, query_temp); 28 | curs = fetch(curs); 29 | temp = curs.Data; 30 | 31 | %Converting the value from CELL to STRING 32 | %Converting Original image path 33 | original = char (original); 34 | %Converting Temp image path 35 | temp = char (temp); 36 | 37 | %Removing unwanted variables from the workspace 38 | clear query_original; 39 | clear query_temp; 40 | clear curs; 41 | 42 | 43 | %%MATCHING ALGORITHM is begining 44 | 45 | %Storing images into a variables from specified path in database 46 | %Storing image of original fingerprint 47 | original_pic = imread(original); 48 | %Storing image of temp fingerprint 49 | temp_pic = imread(temp); 50 | 51 | %Removing unwanted variables from the workspace 52 | clear original; 53 | clear temp; 54 | 55 | %Showing fetched images in sub-graphs 56 | figure 57 | subplot(1,2,1); 58 | imshow(original_pic) 59 | subplot(1,2,2); 60 | imshow(temp_pic) 61 | 62 | 63 | %Converting a regular image into a binary image 64 | %Binary image is the image which saves in 0 & 1 inside the matrix 65 | %Converting original picture into binary image 66 | original_pic_bw = im2bw(original_pic, 0.5); 67 | %Coverting temp picture into binary image 68 | temp_pic_bw = im2bw(temp_pic, 0.5); 69 | 70 | 71 | %Applying process of thinning 72 | %Thinning improve to notify the miutiae extraction 73 | %Thinning is applied on original binary image 74 | original_pic_thin = bwmorph(original_pic_bw,'thin','Inf'); 75 | %Thinning is applied on temp binary image 76 | temp_pic_thin = bwmorph(temp_pic_bw,'thin','Inf'); 77 | 78 | %Showing difference between images in sub-graphs 79 | figure 80 | subplot(1,3,1); 81 | imshow(original_pic) %Original picture the captured 82 | subplot(1,3,2); 83 | imshow(original_pic_bw) %Binary image of original picture 84 | subplot(1,3,3); 85 | imshow(original_pic_thin) %Thinned of binary image of original picture 86 | 87 | %So that we obtain white and black points and edges of the objects present 88 | %in the picture. 89 | %Applying edge detection on original picture 90 | edge_det_original = edge(original_pic_thin,'prewitt'); 91 | 92 | 93 | %So that we obtain white and black points and edges of the objects present 94 | %in the picture. 95 | %Applying edge detection on temp picture 96 | edge_det_temp = edge(temp_pic_thin,'prewitt'); 97 | 98 | %Showing processed images in sub-graphs 99 | figure 100 | subplot(1,2,1); 101 | imshow(edge_det_original) 102 | subplot(1,2,2); 103 | imshow(edge_det_temp) 104 | 105 | %Saving the messages which shoud be shown on screen 106 | OUTPUT_MESSAGE = 'Hence the pictures have been matched, SAME PICTURES'; 107 | OUTPUT_MESSAGE2 = 'Hence the pictures have not been matched, DIFFERENT PICTURES'; 108 | 109 | %Initialization of different variables used 110 | matched_data = 0; 111 | white_points = 0; 112 | black_points = 0; 113 | 114 | %For loop used for detecting black and white points in the picture. 115 | for i = 1:1:256 116 | for j = 1:1:256 117 | if(edge_det_original(i,j)==1) 118 | white_points = white_points+1; 119 | else 120 | black_points = black_points+1; 121 | end 122 | end 123 | end 124 | 125 | %For loop comparing the white (edge points) in the two pictures 126 | for i = 1:1:256 127 | for j = 1:1:256 128 | if(edge_det_original(i,j)==1)&&(edge_det_temp(i,j)==1) 129 | matched_data = matched_data+1; 130 | end 131 | end 132 | end 133 | 134 | %Calculating percentage matching. 135 | total_data = white_points; 136 | total_matched_percentage = (matched_data/total_data)*100; 137 | 138 | %Removing unwanted variables from the workspace 139 | clear matched_data; 140 | clear white_points; 141 | clear black_points; 142 | 143 | %UPDATING DATABASE as per the image processing result in MATCHED column 144 | colnames = {'Matched'}; 145 | result_false(1,1) = {'No'}; 146 | result_true(1,1) = {'Yes'}; 147 | whereClause = ''; 148 | 149 | 150 | %Outputting the result of the system. 151 | if(total_matched_percentage >= 90) %can add flexability at this point by reducing the amount of matching. 152 | 153 | update(conn, 'tbl_matlab_temp', colnames, result_true, whereClause); 154 | 155 | total_matched_percentage; %for the output in the end remove 156 | OUTPUT_MESSAGE; % semicolons (';') in the ends 157 | else 158 | 159 | update(conn, 'tlb_matlab_temp', colnames, result_false, whereClause); 160 | 161 | total_matched_percentage; 162 | OUTPUT_MESSAGE2; 163 | end -------------------------------------------------------------------------------- /Matlab/Matlab '.m' Files/Matching.m: -------------------------------------------------------------------------------- 1 | clc; clear all; close all; 2 | 3 | pic1 = imread('d:\1.bmp'); 4 | pic2 = imread('d:\1.bmp'); 5 | 6 | figure 7 | subplot(1,2,1); 8 | imshow(pic1) 9 | subplot(1,2,2); 10 | imshow(pic2) 11 | 12 | %so that we obtain white and black points and edges of the objects present 13 | %in the picture. 14 | 15 | edge_det_pic1 = edge(pic1,'prewitt');%applying edge detection on first picture 16 | 17 | 18 | %so that we obtain white and black points and edges of the objects present 19 | %in the picture. 20 | 21 | edge_det_pic2 = edge(pic2,'prewitt');%%applying edge detection on second picture 22 | 23 | figure 24 | subplot(1,2,1); 25 | imshow(edge_det_pic1) 26 | subplot(1,2,2); 27 | imshow(edge_det_pic2) 28 | 29 | 30 | OUTPUT_MESSAGE = ' Hence the pictures have been matched, SAME PICTURES '; 31 | 32 | OUTPUT_MESSAGE2 = ' Hence the pictures have not been matched, DIFFERENT PICTURES '; 33 | 34 | %initialization of different variables used 35 | matched_data = 0; 36 | white_points = 0; 37 | black_points = 0; 38 | x=0; 39 | y=0; 40 | l=0; 41 | m=0; 42 | 43 | %for loop used for detecting black and white points in the picture. 44 | for a = 1:1:256 45 | for b = 1:1:256 46 | if(edge_det_pic1(a,b)==1) 47 | white_points = white_points+1; 48 | else 49 | black_points = black_points+1; 50 | end 51 | end 52 | end 53 | 54 | %for loop comparing the white (edge points) in the two pictures 55 | for i = 1:1:256 56 | for j = 1:1:256 57 | if(edge_det_pic1(i,j)==1)&&(edge_det_pic2(i,j)==1) 58 | matched_data = matched_data+1; 59 | end 60 | end 61 | end 62 | 63 | 64 | 65 | 66 | %calculating percentage matching. 67 | total_data = white_points; 68 | total_matched_percentage = (matched_data/total_data)*100; 69 | 70 | %outputting the result of the system. 71 | if(total_matched_percentage >= 90) %can add flexability at this point by reducing the amount of matching. 72 | 73 | total_matched_percentage; 74 | OUTPUT_MESSAGE; 75 | else 76 | 77 | total_matched_percentage; 78 | OUTPUT_MESSAGE2; 79 | end -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerGUI.prj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | C:\Users\Paras Garg\Desktop\FingerGUI.prj 5 | Windows Standalone Application 6 | FingerGUI 7 | ${PROJECT_ROOT}\FingerGUI\src 8 | ${PROJECT_ROOT}\FingerGUI\distrib 9 | true 10 | 11 | all 12 | 13 | 14 | on 15 | on 16 | on 17 | on 18 | on 19 | 20 | 1.0 21 | false 22 | 23 | 24 | 25 | 26 | 27 | 28 | false 29 | false 30 | false 31 | false 32 | false 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | ${PROJECT_ROOT}\Fingerprint_Authentication_Menu.m 62 | 63 | 64 | 65 | 66 | C:\Users\Paras Garg\Desktop\FingerGUI\distrib\readme.txt 67 | C:\Users\Paras Garg\Desktop\FingerGUI\distrib\FingerGUI.exe 68 | 69 | 70 | 71 | C:\Program Files\MATLAB\R2012b 72 | 73 | C:\Users\Paras Garg\Documents\MATLAB 74 | ${MATLAB_ROOT}\toolbox\hdlcoder\matlabhdlcoder\matlabhdlcoder 75 | ${MATLAB_ROOT}\toolbox\hdlcoder\matlabhdlcoder 76 | ${MATLAB_ROOT}\toolbox\matlabxl\matlabxl 77 | ${MATLAB_ROOT}\toolbox\matlabxl\matlabxldemos 78 | ${MATLAB_ROOT}\toolbox\matlab\demos 79 | ${MATLAB_ROOT}\toolbox\matlab\graph2d 80 | ${MATLAB_ROOT}\toolbox\matlab\graph3d 81 | ${MATLAB_ROOT}\toolbox\matlab\graphics 82 | ${MATLAB_ROOT}\toolbox\matlab\plottools 83 | ${MATLAB_ROOT}\toolbox\matlab\scribe 84 | ${MATLAB_ROOT}\toolbox\matlab\specgraph 85 | ${MATLAB_ROOT}\toolbox\matlab\uitools 86 | ${MATLAB_ROOT}\toolbox\local 87 | ${MATLAB_ROOT}\toolbox\matlab\optimfun 88 | ${MATLAB_ROOT}\toolbox\matlab\codetools 89 | ${MATLAB_ROOT}\toolbox\matlab\datafun 90 | ${MATLAB_ROOT}\toolbox\matlab\datamanager 91 | ${MATLAB_ROOT}\toolbox\matlab\datatypes 92 | ${MATLAB_ROOT}\toolbox\matlab\elfun 93 | ${MATLAB_ROOT}\toolbox\matlab\elmat 94 | ${MATLAB_ROOT}\toolbox\matlab\funfun 95 | ${MATLAB_ROOT}\toolbox\matlab\general 96 | ${MATLAB_ROOT}\toolbox\matlab\guide 97 | ${MATLAB_ROOT}\toolbox\matlab\helptools 98 | ${MATLAB_ROOT}\toolbox\matlab\iofun 99 | ${MATLAB_ROOT}\toolbox\matlab\lang 100 | ${MATLAB_ROOT}\toolbox\matlab\matfun 101 | ${MATLAB_ROOT}\toolbox\matlab\ops 102 | ${MATLAB_ROOT}\toolbox\matlab\polyfun 103 | ${MATLAB_ROOT}\toolbox\matlab\randfun 104 | ${MATLAB_ROOT}\toolbox\matlab\sparfun 105 | ${MATLAB_ROOT}\toolbox\matlab\specfun 106 | ${MATLAB_ROOT}\toolbox\matlab\strfun 107 | ${MATLAB_ROOT}\toolbox\matlab\timefun 108 | ${MATLAB_ROOT}\toolbox\matlab\verctrl 109 | ${MATLAB_ROOT}\toolbox\matlab\winfun 110 | ${MATLAB_ROOT}\toolbox\matlab\winfun\NET 111 | ${MATLAB_ROOT}\toolbox\rtw\targets\AUTOSAR\AUTOSAR\dataclasses 112 | ${MATLAB_ROOT}\toolbox\rtw\targets\AUTOSAR\AUTOSAR 113 | ${MATLAB_ROOT}\toolbox\rtw\accel 114 | ${MATLAB_ROOT}\toolbox\simulink\blocks\library 115 | ${MATLAB_ROOT}\toolbox\simulink\blocks\obsolete 116 | ${MATLAB_ROOT}\toolbox\simulink\simulink\dataclasses 117 | ${MATLAB_ROOT}\toolbox\simulink\simulink 118 | ${MATLAB_ROOT}\toolbox\simulink\simulink\slresolve 119 | ${MATLAB_ROOT}\toolbox\simulink\blocks 120 | ${MATLAB_ROOT}\toolbox\simulink\components 121 | ${MATLAB_ROOT}\toolbox\simulink\fixedandfloat 122 | ${MATLAB_ROOT}\toolbox\simulink\fixedandfloat\obsolete 123 | ${MATLAB_ROOT}\toolbox\simulink\dee 124 | ${MATLAB_ROOT}\toolbox\simulink\simulink\MPlayIO 125 | ${MATLAB_ROOT}\toolbox\simulink\simulink\dataobjectwizard 126 | ${MATLAB_ROOT}\toolbox\simulink\simdemos\dataclasses 127 | ${MATLAB_ROOT}\toolbox\simulink\simdemos 128 | ${MATLAB_ROOT}\toolbox\simulink\simdemos\aerospace 129 | ${MATLAB_ROOT}\toolbox\simulink\simdemos\automotive 130 | ${MATLAB_ROOT}\toolbox\simulink\simdemos\industrial 131 | ${MATLAB_ROOT}\toolbox\simulink\simdemos\simfeatures 132 | ${MATLAB_ROOT}\toolbox\simulink\simdemos\simgeneral 133 | ${MATLAB_ROOT}\toolbox\simulink\simulink\modeladvisor 134 | ${MATLAB_ROOT}\toolbox\simulink\simulink\modeladvisor\fixpt 135 | ${MATLAB_ROOT}\toolbox\shared\glue 136 | ${MATLAB_ROOT}\toolbox\shared\glue\studio 137 | ${MATLAB_ROOT}\toolbox\stateflow\stateflow 138 | ${MATLAB_ROOT}\toolbox\stateflow\coder 139 | ${MATLAB_ROOT}\toolbox\stateflow\sfdemos 140 | ${MATLAB_ROOT}\toolbox\aero\aero 141 | ${MATLAB_ROOT}\toolbox\aeroblks\aeroblks 142 | ${MATLAB_ROOT}\toolbox\aeroblks\aeroblksutilities 143 | ${MATLAB_ROOT}\toolbox\aeroblks\aerodemos 144 | ${MATLAB_ROOT}\toolbox\aeroblks\aerodemos\texture 145 | ${MATLAB_ROOT}\toolbox\aero\astdemos 146 | ${MATLAB_ROOT}\toolbox\matlab\apps 147 | ${MATLAB_ROOT}\toolbox\matlab\audiovideo 148 | ${MATLAB_ROOT}\toolbox\bioinfo\bioinfo 149 | ${MATLAB_ROOT}\toolbox\bioinfo\biolearning 150 | ${MATLAB_ROOT}\toolbox\bioinfo\microarray 151 | ${MATLAB_ROOT}\toolbox\bioinfo\mass_spec 152 | ${MATLAB_ROOT}\toolbox\bioinfo\proteins 153 | ${MATLAB_ROOT}\toolbox\bioinfo\biomatrices 154 | ${MATLAB_ROOT}\toolbox\bioinfo\graphtheory 155 | ${MATLAB_ROOT}\toolbox\bioinfo\biodemos 156 | ${MATLAB_ROOT}\toolbox\coder\matlabcoder 157 | ${MATLAB_ROOT}\toolbox\coder\codegendemos 158 | ${MATLAB_ROOT}\toolbox\coder\emlcodermex 159 | ${MATLAB_ROOT}\toolbox\coder\coverage 160 | ${MATLAB_ROOT}\toolbox\rtw\rtw 161 | ${MATLAB_ROOT}\toolbox\rtw\targets\shared 162 | ${MATLAB_ROOT}\toolbox\rtw\coder_foundation\tfl 163 | ${MATLAB_ROOT}\toolbox\rtw\coder_foundation\build 164 | ${MATLAB_ROOT}\toolbox\shared\simtargets 165 | ${MATLAB_ROOT}\toolbox\coder\coder 166 | ${MATLAB_ROOT}\toolbox\coder\profile 167 | ${MATLAB_ROOT}\toolbox\coder\rtiostream 168 | ${MATLAB_ROOT}\toolbox\comm\comm 169 | ${MATLAB_ROOT}\toolbox\comm\commutilities\comminit 170 | ${MATLAB_ROOT}\toolbox\comm\commutilities\commmex 171 | ${MATLAB_ROOT}\toolbox\comm\commutilities 172 | ${MATLAB_ROOT}\toolbox\comm\commdeprecated 173 | ${MATLAB_ROOT}\toolbox\comm\commdemos 174 | ${MATLAB_ROOT}\help\toolbox\comm\examples 175 | ${MATLAB_ROOT}\toolbox\shared\comparisons 176 | ${MATLAB_ROOT}\toolbox\compiler 177 | ${MATLAB_ROOT}\toolbox\compiler\compilerdemos 178 | ${MATLAB_ROOT}\toolbox\control\control 179 | ${MATLAB_ROOT}\toolbox\control\ctrlguis 180 | ${MATLAB_ROOT}\toolbox\control\ctrlobsolete 181 | ${MATLAB_ROOT}\toolbox\control\ctrlutil 182 | ${MATLAB_ROOT}\toolbox\control\ctrldemos 183 | ${MATLAB_ROOT}\help\toolbox\control\examples 184 | ${MATLAB_ROOT}\toolbox\curvefit\curvefit 185 | ${MATLAB_ROOT}\toolbox\curvefit\splines 186 | ${MATLAB_ROOT}\toolbox\curvefit\cftoolgui 187 | ${MATLAB_ROOT}\toolbox\curvefit\sftoolgui 188 | ${MATLAB_ROOT}\toolbox\curvefit\curvefitdemos 189 | ${MATLAB_ROOT}\toolbox\daq\daq 190 | ${MATLAB_ROOT}\toolbox\daq\daqguis 191 | ${MATLAB_ROOT}\toolbox\daq\daqdemos 192 | ${MATLAB_ROOT}\toolbox\database\database 193 | ${MATLAB_ROOT}\toolbox\database\vqb 194 | ${MATLAB_ROOT}\toolbox\database\dbdemos 195 | ${MATLAB_ROOT}\toolbox\datafeed\datafeed 196 | ${MATLAB_ROOT}\toolbox\datafeed\dfgui 197 | ${MATLAB_ROOT}\toolbox\distcomp 198 | ${MATLAB_ROOT}\toolbox\distcomp\distcomp 199 | ${MATLAB_ROOT}\toolbox\distcomp\user 200 | ${MATLAB_ROOT}\toolbox\distcomp\mpi 201 | ${MATLAB_ROOT}\toolbox\distcomp\parallel 202 | ${MATLAB_ROOT}\toolbox\distcomp\parallel\util 203 | ${MATLAB_ROOT}\toolbox\distcomp\lang 204 | ${MATLAB_ROOT}\toolbox\distcomp\cluster 205 | ${MATLAB_ROOT}\toolbox\distcomp\gpu 206 | ${MATLAB_ROOT}\toolbox\distcomp\array 207 | ${MATLAB_ROOT}\toolbox\distcomp\pctdemos 208 | ${MATLAB_ROOT}\toolbox\distcomp\worker 209 | ${MATLAB_ROOT}\toolbox\dotnetbuilder\dotnetbuilder 210 | ${MATLAB_ROOT}\toolbox\dotnetbuilder\dotnetbuilderdemos 211 | ${MATLAB_ROOT}\toolbox\qualkits\do 212 | ${MATLAB_ROOT}\toolbox\dsp\dsp 213 | ${MATLAB_ROOT}\toolbox\dsp\dsputilities 214 | ${MATLAB_ROOT}\toolbox\dsp\dsputilities\dspinit 215 | ${MATLAB_ROOT}\toolbox\dsp\dsputilities\dspmex 216 | ${MATLAB_ROOT}\toolbox\dsp\dspdemos 217 | ${MATLAB_ROOT}\help\toolbox\dsp\examples 218 | ${MATLAB_ROOT}\toolbox\shared\dsp\simulink\dsp 219 | ${MATLAB_ROOT}\toolbox\rtw\targets\ecoder 220 | ${MATLAB_ROOT}\toolbox\rtw\targets\ecoder\ecoderdemos\dataclasses 221 | ${MATLAB_ROOT}\toolbox\rtw\targets\ecoder\ecoderdemos 222 | ${MATLAB_ROOT}\toolbox\rtw\targets\mpt 223 | ${MATLAB_ROOT}\toolbox\rtw\targets\mpt\mpt 224 | ${MATLAB_ROOT}\toolbox\rtw\targets\mpt\user_specific 225 | ${MATLAB_ROOT}\toolbox\embeddedcoder 226 | ${MATLAB_ROOT}\toolbox\econ\econ 227 | ${MATLAB_ROOT}\toolbox\econ\econdemos 228 | ${MATLAB_ROOT}\toolbox\edalink\edalink 229 | ${MATLAB_ROOT}\toolbox\hdlverifier\hdlverifier 230 | ${MATLAB_ROOT}\toolbox\edalink\extensions\discovery\discovery 231 | ${MATLAB_ROOT}\toolbox\shared\tlmgenerator\foundation 232 | ${MATLAB_ROOT}\toolbox\shared\tlmgenerator\foundation\rtw 233 | ${MATLAB_ROOT}\toolbox\shared\tlmgenerator\foundation\tlmgeneratordemos 234 | ${MATLAB_ROOT}\toolbox\edalink\foundation\hdllink 235 | ${MATLAB_ROOT}\toolbox\rtw\targets\xpc\target\kernel\embedded 236 | ${MATLAB_ROOT}\toolbox\eml\eml 237 | ${MATLAB_ROOT}\toolbox\exlink 238 | ${MATLAB_ROOT}\toolbox\dsp\filterdesign 239 | ${MATLAB_ROOT}\toolbox\finance\finance 240 | ${MATLAB_ROOT}\toolbox\finance\calendar 241 | ${MATLAB_ROOT}\toolbox\finance\finsupport 242 | ${MATLAB_ROOT}\toolbox\finance\ftseries 243 | ${MATLAB_ROOT}\toolbox\finance\findemos 244 | ${MATLAB_ROOT}\toolbox\fininst\fininst 245 | ${MATLAB_ROOT}\toolbox\fininst\fininstdemos 246 | ${MATLAB_ROOT}\toolbox\fixedpoint\fixedpointtool 247 | ${MATLAB_ROOT}\toolbox\fixedpoint\fidemos 248 | ${MATLAB_ROOT}\toolbox\fixedpoint\fixedpoint 249 | ${MATLAB_ROOT}\toolbox\fixpoint 250 | ${MATLAB_ROOT}\toolbox\fixpoint\fpca 251 | ${MATLAB_ROOT}\toolbox\sldv\sldv 252 | ${MATLAB_ROOT}\toolbox\simulink\fixedandfloat\fxpdemos 253 | ${MATLAB_ROOT}\toolbox\coder\float2fixed 254 | ${MATLAB_ROOT}\toolbox\fuzzy\fuzzy 255 | ${MATLAB_ROOT}\toolbox\fuzzy\fuzzyutil 256 | ${MATLAB_ROOT}\toolbox\fuzzy\fuzdemos 257 | ${MATLAB_ROOT}\toolbox\geoweb\geoweb 258 | ${MATLAB_ROOT}\toolbox\globaloptim 259 | ${MATLAB_ROOT}\toolbox\globaloptim\globaloptim 260 | ${MATLAB_ROOT}\toolbox\globaloptim\globaloptimdemos 261 | ${MATLAB_ROOT}\toolbox\hdlcoder\hdlcoder 262 | ${MATLAB_ROOT}\toolbox\hdlcoder\hdlcoder\hdlwa 263 | ${MATLAB_ROOT}\toolbox\hdlcoder\hdlcoderdemos 264 | ${MATLAB_ROOT}\toolbox\hdlcoder\hdlcoderdemos\matlabhdlcoderdemos 265 | ${MATLAB_ROOT}\toolbox\hdlcoder\hdlcommon 266 | ${MATLAB_ROOT}\toolbox\hdlfilter\hdlfilter 267 | ${MATLAB_ROOT}\toolbox\hdlfilter\hdlfiltdemos 268 | ${MATLAB_ROOT}\toolbox\idelink\extensions\adivdsp 269 | ${MATLAB_ROOT}\toolbox\idelink\extensions\adivdsp\mdlinfo 270 | ${MATLAB_ROOT}\toolbox\idelink\extensions\adivdsp\tfl 271 | ${MATLAB_ROOT}\toolbox\idelink\extensions\adivdsp\vdspblks 272 | ${MATLAB_ROOT}\toolbox\idelink\extensions\adivdsp\rtw 273 | ${MATLAB_ROOT}\toolbox\idelink\extensions\eclipseide 274 | ${MATLAB_ROOT}\toolbox\idelink\extensions\eclipseide\mdlinfo 275 | ${MATLAB_ROOT}\toolbox\idelink\extensions\eclipseide\registry 276 | ${MATLAB_ROOT}\toolbox\idelink\extensions\eclipseide\tfl 277 | ${MATLAB_ROOT}\toolbox\idelink\extensions\iarew 278 | ${MATLAB_ROOT}\toolbox\idelink\extensions\iarew\blks 279 | ${MATLAB_ROOT}\toolbox\idelink\extensions\iarew\mdlinfo 280 | ${MATLAB_ROOT}\toolbox\idelink\extensions\iarew\templates 281 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs 282 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\ccsblks 283 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\ccslinkblks 284 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\ccslinkblks\rtdxsimblks 285 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\lic 286 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\mdlinfo 287 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\tfl 288 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\util 289 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\rtw 290 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\envChecker 291 | ${MATLAB_ROOT}\toolbox\idelink\extensions\wrworkbench 292 | ${MATLAB_ROOT}\toolbox\idelink\extensions\wrworkbench\mdlinfo 293 | ${MATLAB_ROOT}\toolbox\idelink\extensions\wrworkbench\registry 294 | ${MATLAB_ROOT}\toolbox\idelink\extensions\wrworkbench\wrworkbenchblks 295 | ${MATLAB_ROOT}\toolbox\idelink\foundation\pjtgenerator 296 | ${MATLAB_ROOT}\toolbox\idelink\foundation\pjtgenerator\rtw 297 | ${MATLAB_ROOT}\toolbox\idelink\foundation\pjtgenerator\tgtpref2 298 | ${MATLAB_ROOT}\toolbox\idelink\foundation\pjtgenerator\profiler 299 | ${MATLAB_ROOT}\toolbox\idelink\foundation\pjtgenerator\mdlinfo 300 | ${MATLAB_ROOT}\toolbox\idelink\foundation\pjtgenerator\blks 301 | ${MATLAB_ROOT}\toolbox\idelink\foundation\pjtgenerator\blks\masks 302 | ${MATLAB_ROOT}\toolbox\idelink\foundation\pjtgenerator\blks\tlc_c 303 | ${MATLAB_ROOT}\toolbox\idelink 304 | ${MATLAB_ROOT}\toolbox\idelink\foundation 305 | ${MATLAB_ROOT}\toolbox\idelink\foundation\autointerface 306 | ${MATLAB_ROOT}\toolbox\idelink\foundation\autointerface\ideregisterplugins 307 | ${MATLAB_ROOT}\toolbox\idelink\foundation\util 308 | ${MATLAB_ROOT}\toolbox\idelink\foundation\errorhandler 309 | ${MATLAB_ROOT}\toolbox\idelink\foundation\xmakefile 310 | ${MATLAB_ROOT}\toolbox\idelink\foundation\hookpoints 311 | ${MATLAB_ROOT}\toolbox\idelink\idelinkdemos 312 | ${MATLAB_ROOT}\toolbox\idelink\extensions\adivdsp\vdspdemos 313 | ${MATLAB_ROOT}\toolbox\idelink\extensions\eclipseide\eclipseidedemos 314 | ${MATLAB_ROOT}\toolbox\idelink\extensions\iarew\iarewdemos 315 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\ccsdemos 316 | ${MATLAB_ROOT}\toolbox\idelink\extensions\ticcs\ccsdemos\util 317 | ${MATLAB_ROOT}\toolbox\ident\ident 318 | ${MATLAB_ROOT}\toolbox\ident\nlident 319 | ${MATLAB_ROOT}\toolbox\ident\idobsolete 320 | ${MATLAB_ROOT}\toolbox\ident\idguis 321 | ${MATLAB_ROOT}\toolbox\ident\idutils 322 | ${MATLAB_ROOT}\toolbox\ident\idhelp 323 | ${MATLAB_ROOT}\toolbox\ident\iddemos 324 | ${MATLAB_ROOT}\toolbox\ident\iddemos\examples 325 | ${MATLAB_ROOT}\toolbox\qualkits\iec 326 | ${MATLAB_ROOT}\toolbox\images\colorspaces 327 | ${MATLAB_ROOT}\toolbox\images\images 328 | ${MATLAB_ROOT}\toolbox\images\imuitools 329 | ${MATLAB_ROOT}\toolbox\images\iptformats 330 | ${MATLAB_ROOT}\toolbox\images\iptutils 331 | ${MATLAB_ROOT}\toolbox\matlab\imagesci 332 | ${MATLAB_ROOT}\toolbox\images\imdemos 333 | ${MATLAB_ROOT}\toolbox\imaq\imaq 334 | ${MATLAB_ROOT}\toolbox\imaq\imaqblks\imaqblks 335 | ${MATLAB_ROOT}\toolbox\imaq\imaqblks\imaqmasks 336 | ${MATLAB_ROOT}\toolbox\imaq\imaqblks\imaqmex 337 | ${MATLAB_ROOT}\toolbox\imaq\imaqdemos 338 | ${MATLAB_ROOT}\toolbox\edalink\extensions\incisive\incisive 339 | ${MATLAB_ROOT}\toolbox\edalink\extensions\incisive\incisivedemos 340 | ${MATLAB_ROOT}\toolbox\instrument\instrument 341 | ${MATLAB_ROOT}\toolbox\instrument\instrumentblks\instrumentblks 342 | ${MATLAB_ROOT}\toolbox\instrument\instrumentblks\instrumentmex 343 | ${MATLAB_ROOT}\toolbox\instrument\instrumentblks\instrumentmasks 344 | ${MATLAB_ROOT}\toolbox\instrument\instrumentdemos 345 | ${MATLAB_ROOT}\toolbox\shared\instrument 346 | ${MATLAB_ROOT}\toolbox\javabuilder\javabuilder 347 | ${MATLAB_ROOT}\toolbox\javabuilder\javabuilderdemos 348 | ${MATLAB_ROOT}\toolbox\sam\m3i 349 | ${MATLAB_ROOT}\toolbox\map\map 350 | ${MATLAB_ROOT}\toolbox\map\mapgeodesy 351 | ${MATLAB_ROOT}\toolbox\map\mapdisp 352 | ${MATLAB_ROOT}\toolbox\map\mapformats 353 | ${MATLAB_ROOT}\toolbox\map\mapproj 354 | ${MATLAB_ROOT}\toolbox\map\mapdata 355 | ${MATLAB_ROOT}\toolbox\map\mapdata\sdts 356 | ${MATLAB_ROOT}\toolbox\map\mapdemos 357 | ${MATLAB_ROOT}\toolbox\mbc\mbc 358 | ${MATLAB_ROOT}\toolbox\mbc\mbcdata 359 | ${MATLAB_ROOT}\toolbox\mbc\mbcdemos 360 | ${MATLAB_ROOT}\toolbox\mbc\mbcdesign 361 | ${MATLAB_ROOT}\toolbox\mbc\mbcexpr 362 | ${MATLAB_ROOT}\toolbox\mbc\mbcguitools 363 | ${MATLAB_ROOT}\toolbox\mbc\mbclayouts 364 | ${MATLAB_ROOT}\toolbox\mbc\mbcmodels 365 | ${MATLAB_ROOT}\toolbox\mbc\mbcsimulink 366 | ${MATLAB_ROOT}\toolbox\mbc\mbctools 367 | ${MATLAB_ROOT}\toolbox\mbc\mbcview 368 | ${MATLAB_ROOT}\toolbox\edalink\extensions\modelsim\modelsim 369 | ${MATLAB_ROOT}\toolbox\edalink\extensions\modelsim\modelsimdemos 370 | ${MATLAB_ROOT}\toolbox\mpc\mpc 371 | ${MATLAB_ROOT}\toolbox\mpc\mpcdemos 372 | ${MATLAB_ROOT}\toolbox\mpc\mpcguis 373 | ${MATLAB_ROOT}\toolbox\mpc\mpcobsolete 374 | ${MATLAB_ROOT}\toolbox\mpc\mpcutils 375 | ${MATLAB_ROOT}\toolbox\nnet 376 | ${MATLAB_ROOT}\toolbox\nnet\nncontrol 377 | ${MATLAB_ROOT}\toolbox\nnet\nndemos 378 | ${MATLAB_ROOT}\toolbox\nnet\nndemos\nndatasets 379 | ${MATLAB_ROOT}\toolbox\nnet\nnet 380 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnadapt 381 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nndatafun 382 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnderivative 383 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nndistance 384 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nndivision 385 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nninitlayer 386 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nninitnetwork 387 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nninitweight 388 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnlearn 389 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnnetfun 390 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnnetinput 391 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnnetwork 392 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnperformance 393 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnplot 394 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnprocess 395 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnsearch 396 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nntopology 397 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nntrain 398 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nntransfer 399 | ${MATLAB_ROOT}\toolbox\nnet\nnet\nnweight 400 | ${MATLAB_ROOT}\toolbox\nnet\nnguis 401 | ${MATLAB_ROOT}\toolbox\nnet\nnobsolete 402 | ${MATLAB_ROOT}\toolbox\nnet\nnutils 403 | ${MATLAB_ROOT}\toolbox\opc\opc 404 | ${MATLAB_ROOT}\toolbox\opc\opcgui 405 | ${MATLAB_ROOT}\toolbox\opc\opcdemos 406 | ${MATLAB_ROOT}\toolbox\opc\opcdemos\opcblksdemos 407 | ${MATLAB_ROOT}\toolbox\opc\opcblks\opcblks 408 | ${MATLAB_ROOT}\toolbox\opc\opcblks\opcmasks 409 | ${MATLAB_ROOT}\toolbox\optim\optim 410 | ${MATLAB_ROOT}\toolbox\optim\optimdemos 411 | ${MATLAB_ROOT}\toolbox\pde 412 | ${MATLAB_ROOT}\toolbox\pde\pdedemos 413 | ${MATLAB_ROOT}\toolbox\phased\phased 414 | ${MATLAB_ROOT}\toolbox\phased\phaseddemos 415 | ${MATLAB_ROOT}\toolbox\physmod\common\data\mli\m 416 | ${MATLAB_ROOT}\toolbox\physmod\common\foundation\mli\m 417 | ${MATLAB_ROOT}\toolbox\physmod\common\units\mli\m 418 | ${MATLAB_ROOT}\toolbox\physmod\drive\drive 419 | ${MATLAB_ROOT}\toolbox\physmod\drive\drivedemos 420 | ${MATLAB_ROOT}\toolbox\physmod\elec\elec 421 | ${MATLAB_ROOT}\toolbox\physmod\elec\elecdemos 422 | ${MATLAB_ROOT}\toolbox\physmod\equation_language\equation_language 423 | ${MATLAB_ROOT}\toolbox\physmod\gl\core\m 424 | ${MATLAB_ROOT}\toolbox\physmod\gl\mli\m 425 | ${MATLAB_ROOT}\toolbox\physmod\gl\sli\m 426 | ${MATLAB_ROOT}\toolbox\physmod\gui\gfx\m 427 | ${MATLAB_ROOT}\toolbox\physmod\logging\base\m 428 | ${MATLAB_ROOT}\toolbox\physmod\logging\mli\m 429 | ${MATLAB_ROOT}\toolbox\physmod\mech\mech 430 | ${MATLAB_ROOT}\toolbox\physmod\mech\importer 431 | ${MATLAB_ROOT}\toolbox\physmod\mech\mechdemos 432 | ${MATLAB_ROOT}\toolbox\physmod\network_engine\ne_support 433 | ${MATLAB_ROOT}\toolbox\physmod\network_engine\network_engine 434 | ${MATLAB_ROOT}\toolbox\physmod\ne_sli\ne_sli 435 | ${MATLAB_ROOT}\toolbox\physmod\pmir\pmir 436 | ${MATLAB_ROOT}\toolbox\physmod\pm_sli\pm_sli 437 | ${MATLAB_ROOT}\toolbox\physmod\pm_visimpl\pm_visimpl 438 | ${MATLAB_ROOT}\toolbox\physmod\powersys\powersys 439 | ${MATLAB_ROOT}\toolbox\physmod\powersys\DR\DR 440 | ${MATLAB_ROOT}\toolbox\physmod\powersys\drives\drives 441 | ${MATLAB_ROOT}\toolbox\physmod\powersys\facts\facts 442 | ${MATLAB_ROOT}\toolbox\physmod\powersys\DR\DRdemo 443 | ${MATLAB_ROOT}\toolbox\physmod\powersys\drives\drivesdemo 444 | ${MATLAB_ROOT}\toolbox\physmod\powersys\facts\factsdemo 445 | ${MATLAB_ROOT}\toolbox\physmod\powersys\powerdemo 446 | ${MATLAB_ROOT}\toolbox\physmod\sdl\sdl 447 | ${MATLAB_ROOT}\toolbox\physmod\sdl\classic 448 | ${MATLAB_ROOT}\toolbox\physmod\sdl\sdldemos 449 | ${MATLAB_ROOT}\toolbox\physmod\sh\sh 450 | ${MATLAB_ROOT}\toolbox\physmod\sh\shdemos 451 | ${MATLAB_ROOT}\toolbox\physmod\simrf\m 452 | ${MATLAB_ROOT}\toolbox\physmod\simscape\compiler\core\m 453 | ${MATLAB_ROOT}\toolbox\physmod\simscape\compiler\sli\m 454 | ${MATLAB_ROOT}\toolbox\physmod\simscape\simscapedemos 455 | ${MATLAB_ROOT}\toolbox\physmod\simscape\engine\core\m 456 | ${MATLAB_ROOT}\toolbox\physmod\simscape\engine\mli\m 457 | ${MATLAB_ROOT}\toolbox\physmod\simscape\engine\sli\m 458 | ${MATLAB_ROOT}\toolbox\physmod\simscape\foundation\simscape 459 | ${MATLAB_ROOT}\toolbox\physmod\simscape_language\simscape_language 460 | ${MATLAB_ROOT}\toolbox\physmod\simscape\library\m 461 | ${MATLAB_ROOT}\toolbox\physmod\simscape\simscape\m 462 | ${MATLAB_ROOT}\toolbox\physmod\simulation\base\m 463 | ${MATLAB_ROOT}\toolbox\physmod\sm\core\m 464 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos 465 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\images 466 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\wing_landing_gear 467 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\wing_landing_gear\images 468 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\cart_double_pendulum 469 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\cart_double_pendulum\images 470 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\stewart_platform 471 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\stewart_platform\images 472 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\double_crank_aiming 473 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\double_crank_aiming\images 474 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\bread_slicer 475 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\bread_slicer\images 476 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\import\stewart_platform 477 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\import\four_bar 478 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\radial_engine 479 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\radial_engine\images 480 | ${MATLAB_ROOT}\toolbox\physmod\sm\smdemos\import\robot 481 | ${MATLAB_ROOT}\toolbox\physmod\sm\gui\m 482 | ${MATLAB_ROOT}\toolbox\physmod\sm\import\m 483 | ${MATLAB_ROOT}\toolbox\physmod\sm\local\m 484 | ${MATLAB_ROOT}\toolbox\physmod\sm\sli\m 485 | ${MATLAB_ROOT}\toolbox\physmod\sm\sm\m 486 | ${MATLAB_ROOT}\toolbox\physmod\sm\ssci\m 487 | ${MATLAB_ROOT}\toolbox\plccoder\plccoder 488 | ${MATLAB_ROOT}\toolbox\plccoder\plccoderdemos 489 | ${MATLAB_ROOT}\toolbox\qualkits\common 490 | ${MATLAB_ROOT}\toolbox\realtime 491 | ${MATLAB_ROOT}\toolbox\realtime\realtime 492 | ${MATLAB_ROOT}\toolbox\realtime\realtime\rtw 493 | ${MATLAB_ROOT}\toolbox\slvnv\reqmgt 494 | ${MATLAB_ROOT}\toolbox\slvnv\slvnv 495 | ${MATLAB_ROOT}\toolbox\rf\rf 496 | ${MATLAB_ROOT}\toolbox\rf\rfdemos 497 | ${MATLAB_ROOT}\toolbox\rf\rftool 498 | ${MATLAB_ROOT}\toolbox\rfblks\rfblks 499 | ${MATLAB_ROOT}\toolbox\rfblks\rfblksmasks 500 | ${MATLAB_ROOT}\toolbox\rfblks\rfblksmex 501 | ${MATLAB_ROOT}\toolbox\rfblks\rfblksdemos 502 | ${MATLAB_ROOT}\toolbox\robust\robust 503 | ${MATLAB_ROOT}\toolbox\robust\rctlmi 504 | ${MATLAB_ROOT}\toolbox\robust\rctutil 505 | ${MATLAB_ROOT}\toolbox\robust\rctdemos 506 | ${MATLAB_ROOT}\toolbox\robust\rctobsolete\robust 507 | ${MATLAB_ROOT}\toolbox\robust\rctobsolete\lmi 508 | ${MATLAB_ROOT}\toolbox\robust\rctobsolete\mutools\commands 509 | ${MATLAB_ROOT}\toolbox\robust\rctobsolete\mutools\subs 510 | ${MATLAB_ROOT}\help\toolbox\robust\examples 511 | ${MATLAB_ROOT}\toolbox\rptgen\rptgen 512 | ${MATLAB_ROOT}\toolbox\rptgenext\rptgenext 513 | ${MATLAB_ROOT}\toolbox\rptgenext\rptgenextdemos 514 | ${MATLAB_ROOT}\toolbox\rptgenext\rptgenextdemos\flutter_suppression 515 | ${MATLAB_ROOT}\toolbox\rptgenext\rptgenextdemos\sdd 516 | ${MATLAB_ROOT}\toolbox\rptgenext\slxmlcomp 517 | ${MATLAB_ROOT}\toolbox\rptgenext\rptgenextdemos\slxmlcomp 518 | ${MATLAB_ROOT}\toolbox\rptgen\rptgendemos 519 | ${MATLAB_ROOT}\toolbox\rptgen\xmlcomp 520 | ${MATLAB_ROOT}\toolbox\rtw\targets\asap2\asap2\dataclasses 521 | ${MATLAB_ROOT}\toolbox\rtw\targets\asap2\asap2 522 | ${MATLAB_ROOT}\toolbox\rtw\targets\asap2\asap2\user 523 | ${MATLAB_ROOT}\toolbox\rtw\targets\common\can\blocks\dataclasses 524 | ${MATLAB_ROOT}\toolbox\rtw\targets\common\can\blocks 525 | ${MATLAB_ROOT}\toolbox\rtw\targets\common\can\blocks\tlc_c 526 | ${MATLAB_ROOT}\toolbox\rtw\targets\common\tgtcommon 527 | ${MATLAB_ROOT}\toolbox\rtw\targets\connectivity 528 | ${MATLAB_ROOT}\toolbox\rtw\targets\pil 529 | ${MATLAB_ROOT}\toolbox\rtw\rtw\cgv\API 530 | ${MATLAB_ROOT}\toolbox\rtw\rtw\misra 531 | ${MATLAB_ROOT}\toolbox\simulinkcoder 532 | ${MATLAB_ROOT}\toolbox\rtw\targets\rtwin\rtwin 533 | ${MATLAB_ROOT}\toolbox\rtw\targets\rtwin\rtwindemos 534 | ${MATLAB_ROOT}\toolbox\rtw\rtwdemos 535 | ${MATLAB_ROOT}\toolbox\rtw\rtwdemos\rsimdemos 536 | ${MATLAB_ROOT}\toolbox\simulink\blocks\sb2sl 537 | ${MATLAB_ROOT}\toolbox\shared\asynciolib 538 | ${MATLAB_ROOT}\toolbox\shared\can 539 | ${MATLAB_ROOT}\toolbox\shared\can\canblks 540 | ${MATLAB_ROOT}\toolbox\shared\can\canmasks 541 | ${MATLAB_ROOT}\toolbox\shared\can\canmex 542 | ${MATLAB_ROOT}\toolbox\shared\cgir_fe 543 | ${MATLAB_ROOT}\toolbox\shared\coder\coder 544 | ${MATLAB_ROOT}\toolbox\shared\configset 545 | ${MATLAB_ROOT}\toolbox\shared\controllib\engine 546 | ${MATLAB_ROOT}\toolbox\shared\controllib\engine\numerics 547 | ${MATLAB_ROOT}\toolbox\shared\controllib\engine\options 548 | ${MATLAB_ROOT}\toolbox\shared\controllib\engine\optim 549 | ${MATLAB_ROOT}\toolbox\shared\controllib\general 550 | ${MATLAB_ROOT}\toolbox\shared\controllib\graphics 551 | ${MATLAB_ROOT}\toolbox\shared\controllib\graphics\utils 552 | ${MATLAB_ROOT}\toolbox\shared\controllib\graphics\plotoptions 553 | ${MATLAB_ROOT}\toolbox\shared\controllib\requirements 554 | ${MATLAB_ROOT}\toolbox\shared\curvefitlib 555 | ${MATLAB_ROOT}\toolbox\shared\dastudio 556 | ${MATLAB_ROOT}\toolbox\shared\dastudio\depviewer 557 | ${MATLAB_ROOT}\toolbox\shared\dspblks\dspblks 558 | ${MATLAB_ROOT}\toolbox\shared\dspblks\dspmex 559 | ${MATLAB_ROOT}\toolbox\shared\dsp\vision\matlab\utilities 560 | ${MATLAB_ROOT}\toolbox\shared\dsp\vision\simulink\utilities 561 | ${MATLAB_ROOT}\toolbox\shared\dsp\vision\matlab\utilities\mex 562 | ${MATLAB_ROOT}\toolbox\shared\dsp\vision\simulink\utilities\mex 563 | ${MATLAB_ROOT}\toolbox\shared\dsp\vision\matlab\utilities\init 564 | ${MATLAB_ROOT}\toolbox\shared\dsp\vision\matlab\vision 565 | ${MATLAB_ROOT}\toolbox\shared\dsp\vision\simulink\vision 566 | ${MATLAB_ROOT}\toolbox\shared\eda\board 567 | ${MATLAB_ROOT}\toolbox\shared\eda\edagraph 568 | ${MATLAB_ROOT}\toolbox\shared\eda\fil 569 | ${MATLAB_ROOT}\toolbox\shared\eda\fil\filmapi 570 | ${MATLAB_ROOT}\toolbox\shared\eda\fil\fildemos 571 | ${MATLAB_ROOT}\toolbox\shared\eda\fpgaautomation 572 | ${MATLAB_ROOT}\toolbox\shared\eda\fpgaautomation\obsolete 573 | ${MATLAB_ROOT}\toolbox\shared\eda\fpgabase 574 | ${MATLAB_ROOT}\toolbox\shared\eda\hdlparser 575 | ${MATLAB_ROOT}\toolbox\shared\filterdesignlib 576 | ${MATLAB_ROOT}\toolbox\shared\hdlshared 577 | ${MATLAB_ROOT}\toolbox\shared\hwconnectinstaller 578 | ${MATLAB_ROOT}\toolbox\shared\imageslib 579 | ${MATLAB_ROOT}\toolbox\shared\imaqlib 580 | ${MATLAB_ROOT}\toolbox\shared\mapgeodesy 581 | ${MATLAB_ROOT}\toolbox\shared\maputils 582 | ${MATLAB_ROOT}\toolbox\shared\measure 583 | ${MATLAB_ROOT}\toolbox\shared\multimedia 584 | ${MATLAB_ROOT}\toolbox\shared\optimlib 585 | ${MATLAB_ROOT}\toolbox\shared\rptgen 586 | ${MATLAB_ROOT}\toolbox\shared\sigbldr 587 | ${MATLAB_ROOT}\toolbox\shared\siglib 588 | ${MATLAB_ROOT}\toolbox\shared\slcontrollib 589 | ${MATLAB_ROOT}\toolbox\shared\sldv 590 | ${MATLAB_ROOT}\toolbox\shared\slvnv 591 | ${MATLAB_ROOT}\toolbox\slvnv\simcoverage 592 | ${MATLAB_ROOT}\toolbox\shared\spcuilib 593 | ${MATLAB_ROOT}\toolbox\shared\statslib 594 | ${MATLAB_ROOT}\toolbox\shared\system\coder 595 | ${MATLAB_ROOT}\toolbox\shared\system\coreblocks 596 | ${MATLAB_ROOT}\toolbox\shared\system\fixedpoint 597 | ${MATLAB_ROOT}\toolbox\shared\system\sfun 598 | ${MATLAB_ROOT}\toolbox\shared\system\simulink 599 | ${MATLAB_ROOT}\toolbox\shared\testconsole 600 | ${MATLAB_ROOT}\toolbox\shared\testmeaslib\general 601 | ${MATLAB_ROOT}\toolbox\shared\testmeaslib\graphics 602 | ${MATLAB_ROOT}\toolbox\shared\testmeaslib\simulink 603 | ${MATLAB_ROOT}\toolbox\signal\signal 604 | ${MATLAB_ROOT}\toolbox\signal\sigtools 605 | ${MATLAB_ROOT}\toolbox\signal\sptoolgui 606 | ${MATLAB_ROOT}\toolbox\signal\sigdemos 607 | ${MATLAB_ROOT}\toolbox\simbio\simbio 608 | ${MATLAB_ROOT}\toolbox\simbio\simbiodemos 609 | ${MATLAB_ROOT}\toolbox\simevents\simevents 610 | ${MATLAB_ROOT}\toolbox\simevents\simevents\icons 611 | ${MATLAB_ROOT}\toolbox\des\desblks 612 | ${MATLAB_ROOT}\toolbox\des\desmasks 613 | ${MATLAB_ROOT}\toolbox\des\desmex 614 | ${MATLAB_ROOT}\toolbox\simevents\examples 615 | ${MATLAB_ROOT}\toolbox\simrf\simrf 616 | ${MATLAB_ROOT}\toolbox\simrf\simrfmasks 617 | ${MATLAB_ROOT}\help\toolbox\simrf\examples 618 | ${MATLAB_ROOT}\toolbox\simrf\simrfdemos 619 | ${MATLAB_ROOT}\toolbox\shared\simulink 620 | ${MATLAB_ROOT}\toolbox\sl3d\sl3d 621 | ${MATLAB_ROOT}\toolbox\sl3d\sl3ddemos 622 | ${MATLAB_ROOT}\toolbox\slci\slci 623 | ${MATLAB_ROOT}\toolbox\slci\slcidemos 624 | ${MATLAB_ROOT}\toolbox\slcontrol\slcontrol 625 | ${MATLAB_ROOT}\toolbox\slcontrol\slctrlguis 626 | ${MATLAB_ROOT}\toolbox\slcontrol\slctrlutil 627 | ${MATLAB_ROOT}\toolbox\slcontrol\slctrlobsolete 628 | ${MATLAB_ROOT}\toolbox\slcontrol\slctrldemos 629 | ${MATLAB_ROOT}\help\toolbox\slcontrol\examples 630 | ${MATLAB_ROOT}\toolbox\sldo\sldo 631 | ${MATLAB_ROOT}\toolbox\sldo\sldoguis 632 | ${MATLAB_ROOT}\toolbox\sldo\sloptim\sloptim 633 | ${MATLAB_ROOT}\toolbox\sldo\sloptim\sloptguis 634 | ${MATLAB_ROOT}\toolbox\sldo\sloptim\sloptobsolete 635 | ${MATLAB_ROOT}\toolbox\sldo\slestim\slestguis 636 | ${MATLAB_ROOT}\toolbox\sldo\slestim\slestim 637 | ${MATLAB_ROOT}\toolbox\sldo\slestim\slestmex 638 | ${MATLAB_ROOT}\toolbox\sldo\slestim\slestutil 639 | ${MATLAB_ROOT}\toolbox\sldo\sldodemos 640 | ${MATLAB_ROOT}\toolbox\sldo\sldodemos\optim 641 | ${MATLAB_ROOT}\toolbox\sldo\sldodemos\estim 642 | ${MATLAB_ROOT}\toolbox\sldo\sldodemos\estim\docexamples\adaptive 643 | ${MATLAB_ROOT}\toolbox\sldo\sldodemos\estim\docexamples\lookuptable 644 | ${MATLAB_ROOT}\help\toolbox\sldo\examples 645 | ${MATLAB_ROOT}\toolbox\sldv\sldvdemos 646 | ${MATLAB_ROOT}\toolbox\simulink\simulink\slproject 647 | ${MATLAB_ROOT}\toolbox\slvnv\slvnvdemos 648 | ${MATLAB_ROOT}\toolbox\slvnv\rmidemos 649 | ${MATLAB_ROOT}\toolbox\slvnv\simcovdemos 650 | ${MATLAB_ROOT}\toolbox\slvnv\do178b 651 | ${MATLAB_ROOT}\toolbox\slvnv\iec61508 652 | ${MATLAB_ROOT}\toolbox\slvnv\styleguide 653 | ${MATLAB_ROOT}\toolbox\simulink\simulink\iodata\iomap 654 | ${MATLAB_ROOT}\toolbox\simulink\simulink\performance 655 | ${MATLAB_ROOT}\toolbox\simulink\simulink\performance\performancea 656 | ${MATLAB_ROOT}\toolbox\simulink\simulink\upgradeadvisor 657 | ${MATLAB_ROOT}\toolbox\stats\stats 658 | ${MATLAB_ROOT}\toolbox\stats\classreg 659 | ${MATLAB_ROOT}\toolbox\stats\statsdemos 660 | ${MATLAB_ROOT}\toolbox\stm\stm 661 | ${MATLAB_ROOT}\toolbox\stm\stmdemos 662 | ${MATLAB_ROOT}\toolbox\symbolic\symbolic 663 | ${MATLAB_ROOT}\toolbox\symbolic\symbolicdemos 664 | ${MATLAB_ROOT}\toolbox\systemtest\systemtest 665 | ${MATLAB_ROOT}\toolbox\systemtest\systemtest\removed 666 | ${MATLAB_ROOT}\toolbox\systemtest\systemtestdemos 667 | ${MATLAB_ROOT}\toolbox\matlab\system 668 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\blackfin 669 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\blackfin\blks 670 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\blackfin\blks\mex 671 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\blackfin\blks\masks 672 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\blackfin\blackfindemos 673 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\intelhost\tfl 674 | ${MATLAB_ROOT}\toolbox\target 675 | ${MATLAB_ROOT}\toolbox\target\foundation 676 | ${MATLAB_ROOT}\toolbox\target\foundation\utils 677 | ${MATLAB_ROOT}\toolbox\target\foundation\utils\resource_config 678 | ${MATLAB_ROOT}\toolbox\target\foundation\blks 679 | ${MATLAB_ROOT}\toolbox\target\foundation\blks\mex 680 | ${MATLAB_ROOT}\toolbox\target\foundation\blks\masks 681 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\shared 682 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\shared\ti 683 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\shared\ti\mdlinfo 684 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\shared\ti\utils 685 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\shared\ti\blks 686 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\shared\ti\blks\mex 687 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\shared\ti\blks\masks 688 | ${MATLAB_ROOT}\toolbox\shared\etargets\etargets 689 | ${MATLAB_ROOT}\toolbox\shared\etargets\etargets\demoutils 690 | ${MATLAB_ROOT}\toolbox\target\targetdemos 691 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic2000 692 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic2000\rtw 693 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic2000\utils 694 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic2000\blks 695 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic2000\blks\mex 696 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic2000\blks\masks 697 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic2000\tic2000demos 698 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic5000 699 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic5000\blks 700 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic5000\blks\mex 701 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic5000\blks\masks 702 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic5000\tic5000demos 703 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000 704 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\rtw 705 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\tfl 706 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\utils 707 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\blks 708 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\blks\mex 709 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\blks\sysobj_mex 710 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\blks\masks 711 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\tic6000demos\dataclasses 712 | ${MATLAB_ROOT}\toolbox\target\extensions\processor\tic6000\tic6000demos 713 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\linux\blks 714 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\linux\blks\masks 715 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\linux\blks\mex 716 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\linux\src 717 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\vxworks\blks 718 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\vxworks\blks\mex 719 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\vxworks\blks\masks 720 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\vxworks\src 721 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\windows\blks 722 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\windows\blks\masks 723 | ${MATLAB_ROOT}\toolbox\target\extensions\operatingsystem\windows\blks\mex 724 | ${MATLAB_ROOT}\toolbox\matlab\timeseries 725 | ${MATLAB_ROOT}\toolbox\matlab\hds 726 | ${MATLAB_ROOT}\toolbox\vision\vision 727 | ${MATLAB_ROOT}\toolbox\vision\visionutilities 728 | ${MATLAB_ROOT}\toolbox\vision\visionutilities\visioninit 729 | ${MATLAB_ROOT}\toolbox\vision\visionutilities\visionmex 730 | ${MATLAB_ROOT}\toolbox\vision\visiondemos 731 | ${MATLAB_ROOT}\help\toolbox\vision\examples 732 | ${MATLAB_ROOT}\toolbox\vnt\vnt 733 | ${MATLAB_ROOT}\toolbox\vnt\vntguis 734 | ${MATLAB_ROOT}\toolbox\vnt\vntdemos 735 | ${MATLAB_ROOT}\toolbox\vnt\vntblks\vntblks 736 | ${MATLAB_ROOT}\toolbox\vnt\vntblks\vntmasks 737 | ${MATLAB_ROOT}\toolbox\vnt\vntblks\vntmex 738 | ${MATLAB_ROOT}\toolbox\wavelet\wavelet 739 | ${MATLAB_ROOT}\toolbox\wavelet\wmultisig1d 740 | ${MATLAB_ROOT}\toolbox\wavelet\wavedemo 741 | ${MATLAB_ROOT}\toolbox\wavelet\compression 742 | ${MATLAB_ROOT}\toolbox\rtw\targets\xpc\xpc 743 | ${MATLAB_ROOT}\toolbox\rtw\targets\xpc\target\build\xpcblocks\thirdpartydrivers 744 | ${MATLAB_ROOT}\toolbox\rtw\targets\xpc\target\build\xpcblocks 745 | ${MATLAB_ROOT}\toolbox\rtw\targets\xpc\xpcdemos 746 | ${MATLAB_ROOT}\toolbox\rtw\targets\xpc\xpc\xpcmngr 747 | 748 | 749 | 750 | false 751 | false 752 | true 753 | false 754 | false 755 | false 756 | false 757 | false 758 | 6.1 759 | false 760 | true 761 | win64 762 | true 763 | 764 | 765 | 766 | 767 | -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerGUI/distrib/FingerGUI.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Matlab/Matlab GUI/FingerGUI/distrib/FingerGUI.exe -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerGUI/distrib/readme.txt: -------------------------------------------------------------------------------- 1 | MATLAB Compiler 2 | 3 | 1. Prerequisites for Deployment 4 | 5 | . Verify the MATLAB Compiler Runtime (MCR) is installed and ensure you 6 | have installed version 8.0 (R2012b). 7 | 8 | . If the MCR is not installed, do the following: 9 | (1) enter 10 | 11 | >>mcrinstaller 12 | 13 | at MATLAB prompt. The MCRINSTALLER command displays the 14 | location of the MCR Installer. 15 | 16 | (2) run the MCR Installer. 17 | 18 | Or download the Windows 64-bit version of the MCR for R2012b 19 | from the MathWorks Web site by navigating to 20 | 21 | http://www.mathworks.com/products/compiler/mcr/index.html 22 | 23 | 24 | For more information about the MCR and the MCR Installer, see 25 | Distribution to End Users in the MATLAB Compiler documentation 26 | in the MathWorks Documentation Center. 27 | 28 | 29 | NOTE: You will need administrator rights to run MCRInstaller. 30 | 31 | 32 | 2. Files to Deploy and Package 33 | 34 | Files to package for Standalone 35 | ================================ 36 | -FingerGUI.exe 37 | -MCRInstaller.exe 38 | -if end users are unable to download the MCR using the above 39 | link, include it when building your component by clicking 40 | the "Add MCR" link in the Deployment Tool 41 | -This readme file 42 | 43 | 3. Definitions 44 | 45 | For information on deployment terminology, go to 46 | http://www.mathworks.com/help. Select MATLAB Compiler > 47 | Getting Started > About Application Deployment > 48 | Application Deployment Terms in the MathWorks Documentation 49 | Center. 50 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerGUI/src/FingerGUI.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Matlab/Matlab GUI/FingerGUI/src/FingerGUI.exe -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerGUI/src/readme.txt: -------------------------------------------------------------------------------- 1 | MATLAB Compiler 2 | 3 | 1. Prerequisites for Deployment 4 | 5 | . Verify the MATLAB Compiler Runtime (MCR) is installed and ensure you 6 | have installed version 8.0 (R2012b). 7 | 8 | . If the MCR is not installed, do the following: 9 | (1) enter 10 | 11 | >>mcrinstaller 12 | 13 | at MATLAB prompt. The MCRINSTALLER command displays the 14 | location of the MCR Installer. 15 | 16 | (2) run the MCR Installer. 17 | 18 | Or download the Windows 64-bit version of the MCR for R2012b 19 | from the MathWorks Web site by navigating to 20 | 21 | http://www.mathworks.com/products/compiler/mcr/index.html 22 | 23 | 24 | For more information about the MCR and the MCR Installer, see 25 | Distribution to End Users in the MATLAB Compiler documentation 26 | in the MathWorks Documentation Center. 27 | 28 | 29 | NOTE: You will need administrator rights to run MCRInstaller. 30 | 31 | 32 | 2. Files to Deploy and Package 33 | 34 | Files to package for Standalone 35 | ================================ 36 | -FingerGUI.exe 37 | -MCRInstaller.exe 38 | -if end users are unable to download the MCR using the above 39 | link, include it when building your component by clicking 40 | the "Add MCR" link in the Deployment Tool 41 | -This readme file 42 | 43 | 3. Definitions 44 | 45 | For information on deployment terminology, go to 46 | http://www.mathworks.com/help. Select MATLAB Compiler > 47 | Getting Started > About Application Deployment > 48 | Application Deployment Terms in the MathWorks Documentation 49 | Center. 50 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerNewGUI/distrib/FingerNewGUI.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Matlab/Matlab GUI/FingerNewGUI/distrib/FingerNewGUI.exe -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerNewGUI/distrib/readme.txt: -------------------------------------------------------------------------------- 1 | MATLAB Compiler 2 | 3 | 1. Prerequisites for Deployment 4 | 5 | . Verify the MATLAB Compiler Runtime (MCR) is installed and ensure you 6 | have installed version 8.0 (R2012b). 7 | 8 | . If the MCR is not installed, do the following: 9 | (1) enter 10 | 11 | >>mcrinstaller 12 | 13 | at MATLAB prompt. The MCRINSTALLER command displays the 14 | location of the MCR Installer. 15 | 16 | (2) run the MCR Installer. 17 | 18 | Or download the Windows 64-bit version of the MCR for R2012b 19 | from the MathWorks Web site by navigating to 20 | 21 | http://www.mathworks.com/products/compiler/mcr/index.html 22 | 23 | 24 | For more information about the MCR and the MCR Installer, see 25 | Distribution to End Users in the MATLAB Compiler documentation 26 | in the MathWorks Documentation Center. 27 | 28 | 29 | NOTE: You will need administrator rights to run MCRInstaller. 30 | 31 | 32 | 2. Files to Deploy and Package 33 | 34 | Files to package for Standalone 35 | ================================ 36 | -FingerNewGUI.exe 37 | -MCRInstaller.exe 38 | -if end users are unable to download the MCR using the above 39 | link, include it when building your component by clicking 40 | the "Add MCR" link in the Deployment Tool 41 | -This readme file 42 | 43 | 3. Definitions 44 | 45 | For information on deployment terminology, go to 46 | http://www.mathworks.com/help. Select MATLAB Compiler > 47 | Getting Started > About Application Deployment > 48 | Application Deployment Terms in the MathWorks Documentation 49 | Center. 50 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerNewGUI/src/FingerNewGUI.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Matlab/Matlab GUI/FingerNewGUI/src/FingerNewGUI.exe -------------------------------------------------------------------------------- /Matlab/Matlab GUI/FingerNewGUI/src/readme.txt: -------------------------------------------------------------------------------- 1 | MATLAB Compiler 2 | 3 | 1. Prerequisites for Deployment 4 | 5 | . Verify the MATLAB Compiler Runtime (MCR) is installed and ensure you 6 | have installed version 8.0 (R2012b). 7 | 8 | . If the MCR is not installed, do the following: 9 | (1) enter 10 | 11 | >>mcrinstaller 12 | 13 | at MATLAB prompt. The MCRINSTALLER command displays the 14 | location of the MCR Installer. 15 | 16 | (2) run the MCR Installer. 17 | 18 | Or download the Windows 64-bit version of the MCR for R2012b 19 | from the MathWorks Web site by navigating to 20 | 21 | http://www.mathworks.com/products/compiler/mcr/index.html 22 | 23 | 24 | For more information about the MCR and the MCR Installer, see 25 | Distribution to End Users in the MATLAB Compiler documentation 26 | in the MathWorks Documentation Center. 27 | 28 | 29 | NOTE: You will need administrator rights to run MCRInstaller. 30 | 31 | 32 | 2. Files to Deploy and Package 33 | 34 | Files to package for Standalone 35 | ================================ 36 | -FingerNewGUI.exe 37 | -MCRInstaller.exe 38 | -if end users are unable to download the MCR using the above 39 | link, include it when building your component by clicking 40 | the "Add MCR" link in the Deployment Tool 41 | -This readme file 42 | 43 | 3. Definitions 44 | 45 | For information on deployment terminology, go to 46 | http://www.mathworks.com/help. Select MATLAB Compiler > 47 | Getting Started > About Application Deployment > 48 | Application Deployment Terms in the MathWorks Documentation 49 | Center. 50 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /Matlab/Matlab GUI/Fingerprint_Authentication_Menu.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Matlab/Matlab GUI/Fingerprint_Authentication_Menu.fig -------------------------------------------------------------------------------- /Matlab/Matlab GUI/Fingerprint_Authentication_Menu.m: -------------------------------------------------------------------------------- 1 | function varargout = Fingerprint_Authentication_Menu(varargin) 2 | % FINGERPRINT_AUTHENTICATION_MENU MATLAB code for Fingerprint_Authentication_Menu.fig 3 | % FINGERPRINT_AUTHENTICATION_MENU, by itself, creates a new FINGERPRINT_AUTHENTICATION_MENU or raises the existing 4 | % singleton*. 5 | % 6 | % H = FINGERPRINT_AUTHENTICATION_MENU returns the handle to a new FINGERPRINT_AUTHENTICATION_MENU or the handle to 7 | % the existing singleton*. 8 | % 9 | % FINGERPRINT_AUTHENTICATION_MENU('CALLBACK',hObject,eventData,handles,...) calls the local 10 | % function named CALLBACK in FINGERPRINT_AUTHENTICATION_MENU.M with the given input arguments. 11 | % 12 | % FINGERPRINT_AUTHENTICATION_MENU('Property','Value',...) creates a new FINGERPRINT_AUTHENTICATION_MENU or raises the 13 | % existing singleton*. Starting from the left, property value pairs are 14 | % applied to the GUI before Fingerprint_Authentication_Menu_OpeningFcn gets called. An 15 | % unrecognized property name or invalid value makes property application 16 | % stop. All inputs are passed to Fingerprint_Authentication_Menu_OpeningFcn via varargin. 17 | % 18 | % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one 19 | % instance to run (singleton)". 20 | % 21 | % See also: GUIDE, GUIDATA, GUIHANDLES 22 | 23 | % Edit the above text to modify the response to help Fingerprint_Authentication_Menu 24 | 25 | % Last Modified by GUIDE v2.5 28-May-2013 22:10:42 26 | 27 | % Begin initialization code - DO NOT EDIT 28 | gui_Singleton = 1; 29 | gui_State = struct('gui_Name', mfilename, ... 30 | 'gui_Singleton', gui_Singleton, ... 31 | 'gui_OpeningFcn', @Fingerprint_Authentication_Menu_OpeningFcn, ... 32 | 'gui_OutputFcn', @Fingerprint_Authentication_Menu_OutputFcn, ... 33 | 'gui_LayoutFcn', [] , ... 34 | 'gui_Callback', []); 35 | if nargin && ischar(varargin{1}) 36 | gui_State.gui_Callback = str2func(varargin{1}); 37 | end 38 | 39 | if nargout 40 | [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); 41 | else 42 | gui_mainfcn(gui_State, varargin{:}); 43 | end 44 | % End initialization code - DO NOT EDIT 45 | 46 | 47 | % --- Executes just before Fingerprint_Authentication_Menu is made visible. 48 | function Fingerprint_Authentication_Menu_OpeningFcn(hObject, ~, handles, varargin) 49 | % This function has no output args, see OutputFcn. 50 | % hObject handle to figure 51 | % eventdata reserved - to be defined in a future version of MATLAB 52 | % handles structure with handles and user data (see GUIDATA) 53 | % varargin command line arguments to Fingerprint_Authentication_Menu (see VARARGIN) 54 | 55 | % Choose default command line output for Fingerprint_Authentication_Menu 56 | handles.output = hObject; 57 | 58 | % Update handles structure 59 | guidata(hObject, handles); 60 | 61 | % UIWAIT makes Fingerprint_Authentication_Menu wait for user response (see UIRESUME) 62 | % uiwait(handles.fingerprint_gui); 63 | 64 | %%DATABASE CONNECTIVITY is begining 65 | 66 | %Starting Database Connectivity Code 67 | %%Set preferences with setdbprefs. 68 | setdbprefs('DataReturnFormat', 'cellarray'); 69 | 70 | %%Make connection to database. Note that the password has been omitted. 71 | %%Using JDBC driver. 72 | conn = database('ATM_Fingerprint', '', '', 'Vendor', 'MICROSOFT SQL SERVER',... 73 | 'Server', 'PARASGARG-HP', 'PortNumber', 1433, 'AuthType',... 74 | 'Windows'); 75 | 76 | %%SQL Queries are written to fetch information from database 77 | %SQL Query is written to fetch original image name from database 78 | query_original = 'SELECT Original_Finger FROM tbl_matlab_temp'; 79 | %SQL Query is written to fetch temp image name from database 80 | query_temp = 'SELECT Temp_Finger FROM tbl_matlab_temp'; 81 | 82 | %%Reading data from database 83 | %Reading original image name from database 84 | curs = exec(conn, query_original); 85 | curs = fetch(curs); 86 | original = curs.Data; 87 | %Reading temp image name from database 88 | curs = exec(conn, query_temp); 89 | curs = fetch(curs); 90 | temp = curs.Data; 91 | 92 | %The value fetched from the database is in the cell datatype. To use 93 | %for assigning to other variable, the value should be in appropriate format 94 | %such as should be in string or in int. And to add or update the data in 95 | %the database the value must be in cell datatype. 96 | 97 | %%Converting the value from CELL to STRING 98 | %Converting Original image path 99 | original = char (original); 100 | %Converting Temp image path 101 | temp = char (temp); 102 | 103 | handles.original = original; 104 | handles.temp = temp; 105 | 106 | guidata(hObject, handles); 107 | 108 | %Removing unwanted variables from the workspace 109 | clear query_original; 110 | clear query_temp; 111 | clear curs; 112 | clear original; 113 | clear temp; 114 | %Ending Database Connectivity code 115 | 116 | 117 | % --- Outputs from this function are returned to the command line. 118 | function varargout = Fingerprint_Authentication_Menu_OutputFcn(~, ~, handles) 119 | % varargout cell array for returning output args (see VARARGOUT); 120 | % hObject handle to figure 121 | % eventdata reserved - to be defined in a future version of MATLAB 122 | % handles structure with handles and user data (see GUIDATA) 123 | 124 | % Get default command line output from handles structure 125 | varargout{1} = handles.output; 126 | 127 | 128 | % --- Executes on button press in btn_original_figures. 129 | function btn_original_figures_Callback(~, ~, handles) %#ok 130 | % hObject handle to btn_original_figures (see GCBO) 131 | % eventdata reserved - to be defined in a future version of MATLAB 132 | % handles structure with handles and user data (see GUIDATA) 133 | 134 | original_pic = imread (handles.original); 135 | temp_pic = imread (handles.temp); 136 | 137 | axes_original = imshow (original_pic); 138 | axes (handles.axes_original) 139 | image (axes_original) 140 | 141 | axes_temp = imshow (temp_pic); 142 | axes (handles.axes_temp); 143 | 144 | handles.original_pic = original_pic; 145 | handles.temp_pic = temp_pic; 146 | 147 | guidata (handles.fingerprint_gui, handles); 148 | 149 | 150 | % --- Executes on button press in btn_binary. 151 | function btn_binary_Callback(~, ~, handles) %#ok 152 | % hObject handle to btn_binary (see GCBO) 153 | % eventdata reserved - to be defined in a future version of MATLAB 154 | % handles structure with handles and user data (see GUIDATA) 155 | 156 | original_pic_binary = im2bw(handles.original_pic, 0.5); 157 | temp_pic_binary = im2bw(handles.temp_pic, 0.5); 158 | 159 | axes_original = imshow (original_pic_binary); 160 | axes (handles.axes_original); 161 | image (axes_original); 162 | 163 | axes_temp = imshow (temp_pic_binary); 164 | axes (handles.axes_temp); 165 | 166 | handles.original_pic_binary = original_pic_binary; 167 | handles.temp_pic_binary = temp_pic_binary; 168 | 169 | guidata (handles.fingerprint_gui,handles); 170 | 171 | 172 | % --- Executes on button press in btn_thinning. 173 | function btn_thinning_Callback(~, ~, handles) 174 | % hObject handle to btn_thinning (see GCBO) 175 | % eventdata reserved - to be defined in a future version of MATLAB 176 | % handles structure with handles and user data (see GUIDATA) 177 | 178 | original_pic_thin = bwmorph(handles.original_pic_binary,'thin','Inf'); 179 | temp_pic_thin = bwmorph(handles.temp_pic_binary,'thin','Inf'); 180 | 181 | axes_original = imshow (original_pic_thin); 182 | axes (handles.axes_original); 183 | image (axes_original); 184 | 185 | axes_temp = imshow (temp_pic_thin); 186 | axes (handles.axes_temp); 187 | 188 | handles.original_pic_thin = original_pic_thin; 189 | handles.temp_pic_thin = temp_pic_thin; 190 | 191 | guidata (handles.fingerprint_gui,handles); 192 | 193 | 194 | % --- Executes on button press in btn_minutiae. 195 | function btn_minutiae_Callback(~, ~, handles) 196 | % hObject handle to btn_minutiae (see GCBO) 197 | % eventdata reserved - to be defined in a future version of MATLAB 198 | % handles structure with handles and user data (see GUIDATA) 199 | 200 | original_pic_minu = edge(handles.original_pic_thin,'prewitt'); 201 | temp_pic_minu = edge(handles.temp_pic_thin,'prewitt'); 202 | 203 | axes_original = imshow (original_pic_minu); 204 | axes (handles.axes_original); 205 | image (axes_original); 206 | 207 | axes_temp = imshow (temp_pic_minu); 208 | axes (handles.axes_temp); 209 | 210 | handles.original_pic_minu = original_pic_minu; 211 | handles.temp_pic_minu = temp_pic_minu; 212 | 213 | guidata (handles.fingerprint_gui,handles); 214 | 215 | 216 | % --- Executes on button press in btn_histogram. 217 | function btn_histogram_Callback(hObject, ~, handles) 218 | % hObject handle to btn_histogram (see GCBO) 219 | % eventdata reserved - to be defined in a future version of MATLAB 220 | % handles structure with handles and user data (see GUIDATA) 221 | 222 | % original_pic_hist = imhist(handles.edge_det_original); 223 | % temp_pic_hist = imhist(handles.edge_det_temp); 224 | 225 | original_pic_hist = hist (handles.original_pic_minu); 226 | temp_pic_hist = hist (handles.temp_pic_minu); 227 | 228 | axes_original = (original_pic_hist); 229 | axes (handles.axes_original); 230 | image (axes_original); 231 | 232 | axes_temp = (temp_pic_hist); 233 | axes (handles.axes_temp); 234 | image (axes_temp); 235 | 236 | handles.original_pic_hist = original_pic_hist; 237 | handles.temp_pic_hist = temp_pic_hist; 238 | 239 | original_pic_hist = hist (original_pic_minu); 240 | temp_pic_hist = hist (temp_pic_minu); 241 | 242 | guidata (hObject,handles); 243 | 244 | 245 | % --- Executes on button press in btn_exit. 246 | function btn_exit_Callback(~, ~, handles) 247 | % hObject handle to btn_exit (see GCBO) 248 | % eventdata reserved - to be defined in a future version of MATLAB 249 | % handles structure with handles and user data (see GUIDATA) 250 | 251 | 252 | 253 | total_count = 0; 254 | matched_count = 0; 255 | 256 | for i = 1:1:10 257 | for j = 1:1:260 258 | total_count = total_count + 1; 259 | 260 | if (handles.original_pic_hist(i,j) == handles.temp_pic_hist(i,j)) 261 | matched_count = matched_count + 1; 262 | end 263 | end 264 | end 265 | 266 | matched_percent = (matched_count/total_count)*100; 267 | 268 | 269 | %%Make connection to database. Note that the password has been omitted. 270 | %%Using JDBC driver. 271 | conn = database('ATM_Fingerprint', '', '', 'Vendor', 'MICROSOFT SQL SERVER',... 272 | 'Server', 'PARASGARG-HP', 'PortNumber', 1433, 'AuthType',... 273 | 'Windows'); 274 | 275 | 276 | %UPDATING DATABASE as per the image processing result in MATCHED column 277 | colname_match = {'Matched'}; 278 | colname_percent = {'Matched_Percent'}; 279 | result_true(1,1) = {1}; 280 | result_false(1,1) = {0}; 281 | whereClause = ''; 282 | 283 | if ( matched_percent > 81) 284 | update(conn, 'tbl_matlab_temp', colname_match, result_true, whereClause); 285 | update(conn, 'tbl_matlab_temp', colname_percent, matched_percent, whereClause); 286 | 287 | else 288 | update(conn, 'tbl_matlab_temp', colname_match, result_false, whereClause); 289 | update(conn, 'tbl_matlab_temp', colname_percent, matched_percent, whereClause); 290 | 291 | end 292 | 293 | %Closing the Matlab GUI Application 294 | close(handles.fingerprint_gui); 295 | 296 | 297 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 298 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 299 | 300 | function etxt_original_path_Callback(hObject, eventdata, handles) 301 | % hObject handle to etxt_original_path (see GCBO) 302 | % eventdata reserved - to be defined in a future version of MATLAB 303 | % handles structure with handles and user data (see GUIDATA) 304 | 305 | % Hints: get(hObject,'String') returns contents of etxt_original_path as text 306 | % str2double(get(hObject,'String')) returns contents of etxt_original_path as a double 307 | 308 | 309 | % --- Executes during object creation, after setting all properties. 310 | 311 | function etxt_original_path_CreateFcn(hObject, eventdata, handles) 312 | % hObject handle to etxt_original_path (see GCBO) 313 | % eventdata reserved - to be defined in a future version of MATLAB 314 | % handles empty - handles not created until after all CreateFcns called 315 | 316 | % Hint: edit controls usually have a white background on Windows. 317 | % See ISPC and COMPUTER. 318 | if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 319 | set(hObject,'BackgroundColor','white'); 320 | end 321 | 322 | 323 | function etxt_temp_path_Callback(hObject, eventdata, handles) 324 | % hObject handle to etxt_temp_path (see GCBO) 325 | % eventdata reserved - to be defined in a future version of MATLAB 326 | % handles structure with handles and user data (see GUIDATA) 327 | 328 | % Hints: get(hObject,'String') returns contents of etxt_temp_path as text 329 | % str2double(get(hObject,'String')) returns contents of etxt_temp_path as a double 330 | 331 | 332 | % --- Executes during object creation, after setting all properties. 333 | function etxt_temp_path_CreateFcn(hObject, eventdata, handles) 334 | % hObject handle to etxt_temp_path (see GCBO) 335 | % eventdata reserved - to be defined in a future version of MATLAB 336 | % handles empty - handles not created until after all CreateFcns called 337 | 338 | % Hint: edit controls usually have a white background on Windows. 339 | % See ISPC and COMPUTER. 340 | if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 341 | set(hObject,'BackgroundColor','white'); 342 | end 343 | 344 | 345 | % --- Executes when fingerprint_gui is resized. 346 | function fingerprint_gui_ResizeFcn(hObject, eventdata, handles) 347 | % hObject handle to fingerprint_gui (see GCBO) 348 | % eventdata reserved - to be defined in a future version of MATLAB 349 | % handles structure with handles and user data (see GUIDATA) 350 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Fingerprint-Authentication-for-ATM 2 | Fingerprint Authentication for ATM was about the biometric authentication security system for ATM which enabled the fingerprint authentication for traditional cash machines. 3 | 4 | # Presentation 5 | https://www.slideshare.net/ParasGarg14/fingerprint-authentication-for-atm-68167292 6 | 7 | # Project Synopsis 8 | https://www.slideshare.net/ParasGarg14/project-synopsis-68167417 9 | 10 | # Project Report 11 | https://github.com/ParasGarg/Fingerprint-Authentication-for-ATM/blob/master/Reports/Project%20Report.pdf 12 | -------------------------------------------------------------------------------- /Reports/Presentation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Reports/Presentation.pdf -------------------------------------------------------------------------------- /Reports/Project Report.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Reports/Project Report.pdf -------------------------------------------------------------------------------- /Reports/Project Synopsis.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ParasGarg/Fingerprint-Authentication-for-ATM/ca2aafe9002fb729331a6093427f1c0e2da4f64d/Reports/Project Synopsis.pdf --------------------------------------------------------------------------------