Skip to content

sinnie-pi/Palmprint_Authentication

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

6 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Palmprint_Authentication

Biometric Authentication can be various types. One of them is palmprint authentication.

Dataset:

Though there are multiple available datasets on the internet (e.g. PolyU multi-spectral palmprint database , PolyU 2D+3D palmprint database etc. ) But I found out a clear photograph working more accurate in this model . As the FAR and FRR of ROI has decreased with a clear picture.

So,to test and train this model I created a dataset of 1050 palm images (both palm) , where a total of 26 people participated voluntarily in diffrent sessions. Since those data are sensitive I've not uploaded the dataset in the github repository. I have uploaded here a sample picture for the reference (Source: Freepik.com).

empty-hand-palm-black-background_335640-1671

Note: All of the picture should contain palm center, principle lines, flexor liness, datum points, wrinkles , ridges and may contain fingers. Also all the picture should be taken in dark background, where anyother object is not visible.

Model:

Region of Interest (ROI) Segmentation:

The acquired images often contain redundant information such as fingers and background. Palmprint ROI refers to the palm center that contains three flexor lines. Since the size and shape of every hand is generally different from each other , there may exists a rotation between them, it is necessary to correct the scale and angle of the palmprint image before ROI segmentation.

Scale Correction:

The key point lying in the original image with a size ofย ๐’˜ร—๐’‰ย is denoted as ๐‘ท_๐’Š (๐’™_๐’Š,๐’š_๐’Š ) [๐’Š=๐Ÿ,๐Ÿ,๐Ÿ‘]ย .ย The corresponding position for testing image is a size of ๐’˜^โ€ฒร—๐’‰^โ€ฒย ย is denoted asย ๐‘ท_๐’Š^โ€ฒ (๐’™_๐’Š^โ€ฒ,๐’š_๐’Š^โ€ฒ ) [๐’Š=๐Ÿ,๐Ÿ,๐Ÿ‘]ย .ย Then, the transformation can be defined as {โ–ˆ(๐‘ฅ_๐‘–^โ€ฒ=๐‘ฅ_๐‘–ร—(๐‘ค^โ€ฒ/๐‘ค)@๐‘ฆ_๐‘–^โ€ฒ=๐‘ฆ_๐‘–ร—(โ„Ž^โ€ฒ/โ„Ž) )โ”ค

image

Rotation Correction:

The purpose of the rotation is to placeย ๐‘ท_๐Ÿย and ๐‘ท_๐Ÿ‘ย on a horizontal line to facilitate ROI segmentation. The calculation of the rotation angle is shown as follows:

๐‘Ž= tan^(โˆ’1)โก(((๐‘ฆ_3^โ€ฒโˆ’๐‘ฆ_1^โ€ฒ))/((๐‘ฅ_3^โ€ฒโˆ’๐‘ฅ_1^โ€ฒ)))

whereย (๐’™_๐Ÿ^โ€ฒ,๐’š_๐Ÿ^โ€ฒ)ย andย (๐’™_๐Ÿ‘^โ€ฒ,๐’š_๐Ÿ‘^โ€ฒ)ย are the coordinates ofย  ๐‘ท_๐Ÿ^โ€ฒ ย andย  ๐‘ท_๐Ÿ‘^โ€ฒ,ย respectively. The corresponding coordinates after rotation are denoted as ๐‘ท_๐’Š^โ€ฒโ€ฒ (๐’™_๐’Š^โ€ฒโ€ฒ,๐’š_๐’Š^โ€ฒโ€ฒ ) [๐’Š=๐Ÿ,๐Ÿ,๐Ÿ‘]ย ย .ย We define the rotation transformation as follows:

{โ–ˆ(๐‘ฅ_๐‘–^โ€ฒโ€ฒ=[(๐‘ฅ_1^โ€ฒโˆ’๐‘ค^โ€ฒ/2)ร—cosโก(๐‘Ž/180ร—๐œ‹)+(๐‘ฆ_1^โ€ฒโˆ’โ„Ž^โ€ฒ/2)ร—sinโก(๐‘Ž/180ร—๐œ‹)+๐‘ค^โ€ฒ/2]@๐‘ฆ_๐‘–^โ€ฒโ€ฒ=[โˆ’1ร—(๐‘ฅ_1^โ€ฒโˆ’๐‘ค^โ€ฒ/2)ร—sinโก(๐‘Ž/180ร—๐œ‹)+(๐‘ฆ_1^โ€ฒโˆ’โ„Ž^โ€ฒ/2)ร—cosโก(๐‘Ž/180ร—๐œ‹)+โ„Ž^โ€ฒ/2] )โ”ค

image

Where [ ]ย reserves the integer value, while the lineย  ๐‘ท_๐Ÿ^โ€ฒโ€ฒ ๐‘ท_๐Ÿ‘^โ€ฒโ€ฒ ย is set as theย x-axis, and its vertical line is set as theย y-axis. Then, the coordinate system is established in the palmprint image. The length ofย  ๐‘ท_๐Ÿ^โ€ฒโ€ฒ ๐‘ท_๐Ÿ‘^โ€ฒโ€ฒ ย is denoted as ๐’…ย .ย Moving it down alongside theย y-axis by ๐’…/๐Ÿ‘ย ,ย a square is built up with the side length of ๐’…

image

About

A project on biometric authentication

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published