Skip to content

Commit

Permalink
Updated formatting on website
Browse files Browse the repository at this point in the history
  • Loading branch information
stephaniereinders committed Aug 22, 2024
1 parent 564ff2a commit 371d8c5
Show file tree
Hide file tree
Showing 323 changed files with 56,031 additions and 15,980 deletions.
2 changes: 2 additions & 0 deletions .Rbuildignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
^cran-comments\.md$
^CRAN-SUBMISSION$
^README\.Rmd$
^README\.qmd$
^tools$
^scratch.R$
^altdoc$
^_quarto$
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,4 @@ inst/doc
scratch*
*.psd
altdoc/freeze.rds
^_quarto$
71 changes: 48 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,52 @@


<!-- README.md is generated from README.Rmd. Please edit that file -->

# handwriter


<!-- badges: start -->
<!-- badges: end -->

The handwriter package performs writership analysis of a handwritten
*questioned document* where the questioned document was written by one
of *closed-set* of potential writers. For example, a handwritten bomb
threat is found in a science classroom, and the police are able to
determine that the note could only have been written by one of the
students in 4th period science. The handwriter package builds a
statistical model to estimate a *writer profile* from known handwriting
samples from each writer in the closed-set. A writer profile is also
estimated from the questioned document. The statistical model compares
the writer profile from the questioned document with each of the writer
profiles from the closed-set of potential writers and estimates the
posterior probability that each closed-set writer wrote the questioned
document.

## Installation
Handwriter is designed to assist forensic examiners by analyzing
handwritten documents against a *closed set* of potential writers. It
determines the probability that each writer wrote the document. Whether
you are a forensic document examiner, legal professional, academic, or
simply curious about how statistics are applied to handwriting,
handwriter provides an automated way to evaluate handwriting samples.

## Quick Start

### VIEW A DEMO

View a demo of handwriter on handwritten documents from the CSAFE
Handwriting Database. Go to
[demo](https://csafe.shinyapps.io/handwriterAppDemo/).

### SIMULATE CASEWORK WITH EXAMPLE DOCUMENTS

#### INSTALLATION

Handwriter requires R, RStudio IDE, and JAGS.

- Install R and RStudio from
[POSIT](https://posit.co/download/rstudio-desktop/)
- Install JAGS from
[SourceForge](https://sourceforge.net/projects/mcmc-jags/files/)

#### LAUNCH THE APP

Open RStudio, navigate to the console window, and type:

``` r
install.packages("devtools")
devtools::install_github("CSAFE-ISU/handwriterApp")
library(handwriterApp)
handwriterApp()
```

In the pop-up window, click **Open in Browser**. If you use the app in
the pop-up window instead of in a browser, some links will not work.

Click **Simulate Casework** and follow the instructions in the app.

## Advanced

You can install handwriter from CRAN with:

Expand Down Expand Up @@ -195,7 +220,7 @@ template_data <- format_template_data(template = template)
plot_cluster_fill_counts(template_data, facet = TRUE)
```

<img src="man/figures/README-unnamed-chunk-4-1.png"
<img src="man/figures/README-unnamed-chunk-5-1.png"
style="width:100.0%" />

### STEP 3: Fit a Hierarchical Model
Expand Down Expand Up @@ -260,7 +285,7 @@ but the model data is already in the correct format.)
plot_cluster_fill_counts(formatted_data=model, facet = TRUE)
```

<img src="man/figures/README-unnamed-chunk-7-1.png"
<img src="man/figures/README-unnamed-chunk-8-1.png"
style="width:100.0%" />

The bars across the top of each graph show the Writer ID. Each graph has
Expand Down Expand Up @@ -301,7 +326,7 @@ View a trace plot of a variable.
plot_trace(variable = "mu[1,1]", model = model)
```

<img src="man/figures/README-unnamed-chunk-10-1.png"
<img src="man/figures/README-unnamed-chunk-11-1.png"
style="width:100.0%" />

If we need to, we can drop the beginning MCMC iterations for burn-in.
Expand Down Expand Up @@ -373,7 +398,7 @@ the cluster fill counts observed in each questioned document.
plot_cluster_fill_counts(analysis, facet = TRUE)
```

<img src="man/figures/README-unnamed-chunk-15-1.png"
<img src="man/figures/README-unnamed-chunk-16-1.png"
style="width:100.0%" />

View the posterior probabilities of writership.
Expand Down
43 changes: 36 additions & 7 deletions README.Rmd → README.qmd
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
output: github_document
title: "handwriter"
format: html
editor: visual
---

<!-- README.md is generated from README.Rmd. Please edit that file -->

```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
Expand All @@ -13,14 +13,43 @@ knitr::opts_chunk$set(
)
```

# handwriter

<!-- badges: start -->
<!-- badges: end -->

The handwriter package performs writership analysis of a handwritten *questioned document* where the questioned document was written by one of *closed-set* of potential writers. For example, a handwritten bomb threat is found in a science classroom, and the police are able to determine that the note could only have been written by one of the students in 4th period science. The handwriter package builds a statistical model to estimate a *writer profile* from known handwriting samples from each writer in the closed-set. A writer profile is also estimated from the questioned document. The statistical model compares the writer profile from the questioned document with each of the writer profiles from the closed-set of potential writers and estimates the posterior probability that each closed-set writer wrote the questioned document.
Handwriter is designed to assist forensic examiners by analyzing handwritten documents against a *closed set* of potential writers. It determines the probability that each writer wrote the document. Whether you are a forensic document examiner, legal professional, academic, or simply curious about how statistics are applied to handwriting, handwriter provides an automated way to evaluate handwriting samples.

## Quick Start

### VIEW A DEMO

View a demo of handwriter on handwritten documents from the CSAFE Handwriting Database. Go to [demo](https://csafe.shinyapps.io/handwriterAppDemo/).

### SIMULATE CASEWORK WITH EXAMPLE DOCUMENTS

#### INSTALLATION

Handwriter requires R, RStudio IDE, and JAGS.

- Install R and RStudio from [POSIT](https://posit.co/download/rstudio-desktop/)
- Install JAGS from [SourceForge](https://sourceforge.net/projects/mcmc-jags/files/)

#### LAUNCH THE APP

Open RStudio, navigate to the console window, and type:

```{r, eval = FALSE}
install.packages("devtools")
devtools::install_github("CSAFE-ISU/handwriterApp")
library(handwriterApp)
handwriterApp()
```

In the pop-up window, click **Open in Browser**. If you use the app in the pop-up window
instead of in a browser, some links will not work.

Click **Simulate Casework** and follow the instructions in the app.

## Installation
## Advanced
You can install handwriter from CRAN with:
``` r
install.packages("handwriter")
Expand Down
1 change: 1 addition & 0 deletions _quarto/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/.quarto/
11 changes: 5 additions & 6 deletions docs/CITATION.md → _quarto/CITATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,10 @@
```verbatim
To cite package ‘handwriter’ in publications use:
Iowa State University of Science and Technology on behalf of its
Center for Statistics and Applications in Forensic Evidence, Berry
N, Reinders S, Taylor J (2024). _handwriter: Handwriting Analysis in
R_. R package version 3.1.1.9000, commit
2ca3187a3e750fed34d373eae7dd587483c96b75,
Iowa State University of Science and Technology on behalf of its Center for
Statistics and Applications in Forensic Evidence, Berry N, Reinders S, Taylor
J (2024). _handwriter: Handwriting Analysis in R_. R package version
3.1.1.9000, commit 3b29e861c4bcaed6062f79ebb75c000f9bd86413,
<https://github.com/CSAFE-ISU/handwriter>.
A BibTeX entry for LaTeX users is
Expand All @@ -16,7 +15,7 @@ A BibTeX entry for LaTeX users is
title = {handwriter: Handwriting Analysis in R},
author = {{Iowa State University of Science and Technology on behalf of its Center for Statistics and Applications in Forensic Evidence} and Nick Berry and Stephanie Reinders and James Taylor},
year = {2024},
note = {R package version 3.1.1.9000, commit 2ca3187a3e750fed34d373eae7dd587483c96b75},
note = {R package version 3.1.1.9000, commit 3b29e861c4bcaed6062f79ebb75c000f9bd86413},
url = {https://github.com/CSAFE-ISU/handwriter},
}
```
File renamed without changes.
2 changes: 2 additions & 0 deletions docs/NEWS.md → _quarto/NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
* Fixed bug in `format_template_data()` where the function coerced writer IDs to integers even
if the writer IDs contained characters.

* Fixed bug in `get_clusters_batch()` where the function would stall but not return an error message if a document had a graph with a large number of edges (paths). Now the function deletes graphs with more than 30 edges.

# handwriter 3.1.1

## Patches
Expand Down
117 changes: 117 additions & 0 deletions _quarto/_quarto.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
project:
type: website
website:
title: handwriter
navbar:
search: true
right:
- icon: github
href: https://github.com/CSAFE-ISU/handwriter
aria-label: handwriter GitHub
sidebar:
collapse-level: 1
contents:
- text: Home
file: index.qmd
- section: Articles
contents:
- vignettes/handwriter.Rmd
- section: Reference
contents:
- text: about_variable
file: man/about_variable.qmd
- text: addToFeatures
file: man/addToFeatures.qmd
- text: analyze_questioned_documents
file: man/analyze_questioned_documents.qmd
- text: calculate_accuracy
file: man/calculate_accuracy.qmd
- text: cleanBinaryImage
file: man/cleanBinaryImage.qmd
- text: csafe
file: man/csafe.qmd
- text: drop_burnin
file: man/drop_burnin.qmd
- text: example_analysis
file: man/example_analysis.qmd
- text: example_cluster_template
file: man/example_cluster_template.qmd
- text: example_model
file: man/example_model.qmd
- text: extractGraphs
file: man/extractGraphs.qmd
- text: fit_model
file: man/fit_model.qmd
- text: format_template_data
file: man/format_template_data.qmd
- text: get_cluster_fill_counts
file: man/get_cluster_fill_counts.qmd
- text: get_clusters_batch
file: man/get_clusters_batch.qmd
- text: get_credible_intervals
file: man/get_credible_intervals.qmd
- text: get_posterior_probabilities
file: man/get_posterior_probabilities.qmd
- text: graphToPrototype
file: man/graphToPrototype.qmd
- text: london
file: man/london.qmd
- text: make_clustering_template
file: man/make_clustering_template.qmd
- text: message
file: man/message.qmd
- text: nature1
file: man/nature1.qmd
- text: plot_cluster_centers
file: man/plot_cluster_centers.qmd
- text: plot_cluster_fill_counts
file: man/plot_cluster_fill_counts.qmd
- text: plot_cluster_fill_rates
file: man/plot_cluster_fill_rates.qmd
- text: plot_credible_intervals
file: man/plot_credible_intervals.qmd
- text: plot_posterior_probabilities
file: man/plot_posterior_probabilities.qmd
- text: plot_trace
file: man/plot_trace.qmd
- text: plotImage
file: man/plotImage.qmd
- text: plotImageThinned
file: man/plotImageThinned.qmd
- text: plotLetter
file: man/plotLetter.qmd
- text: plotLine
file: man/plotLine.qmd
- text: plotNodes
file: man/plotNodes.qmd
- text: process_batch_dir
file: man/process_batch_dir.qmd
- text: process_batch_list
file: man/process_batch_list.qmd
- text: processDocument
file: man/processDocument.qmd
- text: processHandwriting
file: man/processHandwriting.qmd
- text: read_and_process
file: man/read_and_process.qmd
- text: readPNGBinary
file: man/readPNGBinary.qmd
- text: rgb2grayscale
file: man/rgb2grayscale.qmd
- text: rgba2rgb
file: man/rgba2rgb.qmd
- text: thinImage
file: man/thinImage.qmd
- text: twoSent
file: man/twoSent.qmd
- text: whichToFill
file: man/whichToFill.qmd
- text: News
file: NEWS.md
- text: License
file: LICENSE.md
- text: Citation
file: CITATION.md
format:
html:
css: styles.css
Binary file added _quarto/freeze.rds
Binary file not shown.
Loading

0 comments on commit 371d8c5

Please sign in to comment.