Skip to content

Latest commit

 

History

History
82 lines (67 loc) · 2.21 KB

README.md

File metadata and controls

82 lines (67 loc) · 2.21 KB
Logo

SoleMate

Official implementation of "Improving and Evaluating Machine Learning Methods for Forensic Shoeprint Matching".

Try it out at SoleMate.streamlit.app

Getting Started

Prerequisites

Before you begin, make sure you have the following software installed:

Installation

  1. Clone the repo
    git clone https://github.com/saatvikkher/SoleMate
  2. Install required dependencies
    conda create --name solemate --file requirements.txt
  3. Activate the environment
    conda activate solemate

Usage

Create Soles

Q = Sole("path/to/image")
K = Sole("path/to/image")

Q.plot()
K.plot()

Create a SolePair

pair = SolePair(Q, K, mated=True)
pair.plot()

Align a SolePair

sc = SolePairCompare(pair, 
                     icp_downsample_rates=[0.05],
                     shift_up=True,
                     shift_down=True,
                     shift_left=True,
                     shift_right=True,
                     two_way=True) # icp is called here
pair.plot(aligned=True)

Generate metrics

sc.min_dist() # Calculate Euclidean Distance metrics
sc.percent_overlap() # Calculate Percent Overlap metrics
sc.pc_metrics() # Calculate Phase-correlation metrics such as peak value, MSE, correlation coefficient
sc.jaccard_index() # Jaccard similarity coefficient
sc.cluster_metrics() # Clustering-based metrics
sc.pc_metrics() # Phase Correlation metrics

Developed and maintained by Simon Angoluan, Divij Jain, Saatvik Kher, Lena Liang, Yufeng Wu, and Ashley Zheng.

We conducted our research in collaboration with the Center for Statistics and Applications in Forensic Evidence.