class: center, middle, inverse, title-slide # cmcR: Open-Source Implementation of the Congruent Matching Cells method ### Joe Zemmels, Dr. Heike Hofmann, Dr. Susan VanderPlas ### 2020-11-30 --- class: primary-blue ## Cartridge Case Comparisons A general pipeline for comparing two cartridge case scans: 1. **Preprocess** the scans to highlight breech face impressions. 2. **Compare** the two scans and extract similarity features. 3. Formulate a **Decision Rule** to determine whether similarity features support the same-source hypothesis. -- Comparison algorithms aim to automate most, if not all, of this process. --- class: primary-green # CMC method - Algorithm developed at NIST that addresses Comparison and Decision Rule steps. - Involves dividing a reference scan into a grid of cells that search for optimal alignment in target scan. - Use estimated alignment (translation & rotation) and CCF as similarity features to classify matches. <img src="images/cmc_illustration.PNG" width="70%" style="display: block; margin: auto;" /> --- class: primary-blue ## cmcR Package - CMC method requires user to make many processing decisions. - How sensitive is the method to different decisions? - Is there an "optimal" set of decisions? -- - cmcR package provides a general framework for investigation: - `preProcess_*` functions perform initial processing - `comparison_*` functions extract similarity features - `decision_*` functions classify CMCs - Each step is further divided into modularized pieces. <center> <b> <a href="https://csafe-isu.github.io/cmcR/">https://csafe-isu.github.io/cmcR/</a> </b> </center> <!-- - [**Package Website Link**](https://csafe-isu.github.io/cmcR/) --> --- class: secondary-green ## Preprocessing Example ```r fadul1.1 <- x3ptools::x3p_read("https://tsapps.nist.gov/NRBTD/Studies/CartridgeMeasurement/DownloadMeasurement/2d9cc51f-6f66-40a0-973a-a9292dbee36d") fadul1.1 %>% preProcess_crop(region = "exterior",...) %>% preProcess_crop(region = "interior",...) %>% preProcess_removeTrend(...) %>% preProcess_gaussFilter(...) ``` <img src="images/preProcessDiagram.png" width="75%" style="display: block; margin: auto;" /> --- class: secondary-blue ## Comparison & Decision Rule ```r comparisonData <- comparison_allTogether(reference = fadul1.1, target = fadul1.2, theta = -24, #degrees numCells = 64) #8x8 grid comparisonData <- mutate(comparisonData, originalMethodClassif = decision_CMC(cellIndex,x,y,theta,pairwiseCompCor)) cmcPlot(fadul1.1,fadul1.2, reference_v_target_CMCs = comparisonData) ``` <img src="slides_files/figure-html/unnamed-chunk-8-1.png" style="display: block; margin: auto;" /> --- class: secondary-green ## Conclusion - cmcR provides modularized, open-source tools for algorithmically comparing cartridge case scans. -- - As cartridge case comparison algorithms mature, foundation set by cmcR can be developed upon. -- <center> <big> <b> Thank You! </b> </big> </center> --- class: primary-blue # References Fadul, T. et al. (2011). _An Empirical Study to Improve the Scientific Foundation of Forensic Firearm and Tool Mark Identification Utilizing 10 Consecutively Manufactured Slides_. Hofmann, H. et al. (2020). _x3ptools: Tools for Working with 3D Surface Measurements_. R package version 0.0.3. Peng, R. D. (2011). "Reproducible Research in Computational Science". In: _Science_ 334.6060, pp. 1226-1227. Song, J. (2013). "Proposed “NIST Ballistics Identification System (NBIS)†Based on 3D Topography Measurements on Correlation Cells". In: _American Firearm and Tool Mark Examiners Journal_ 45.2, p. 11. Tong, M. et al. (2015). "An Improved Algorithm of Congruent Matching Cells (CMC) Method for Firearm Evidence Identifications". In: _Journal of Research of the National Institute of Standards and Technology_ 120, p. 102. DOI: [10.6028/jres.120.008](https://doi.org/10.6028%2Fjres.120.008).