Visualize RSM predicted ROC, AFROC, wAFROC and FROC curves, and ROC pdfs, given equal-length arrays of search model parameters: mu, lambda, nu and zeta1.

PlotRsmOperatingCharacteristics(
  mu,
  lambda,
  nu,
  zeta1,
  lesDistr = 1,
  relWeights = 0,
  OpChType = "ALL",
  legendPosition = "bottom",
  legendDirection = "horizontal",
  legendJustification = c(0, 1),
  nlfRange = NULL,
  llfRange = NULL,
  nlfAlpha = NULL
)

Arguments

mu

Array: the RSM mu parameter.

lambda

Array: the RSM lambda parameter.

nu

Array: the RSM nu parameter.

zeta1

Array, the lowest reporting threshold; if missing the default is an array of -Inf.

lesDistr

Array: the probability mass function of the lesion distribution for diseased cases. The default is 1. See UtilLesDistr.

relWeights

The relative weights of the lesions; a vector of length equal to length(maxLL). The default is zero, in which case equal weights are assumed.

OpChType

The type of operating characteristic desired: can be "ROC", "AFROC", "wAFROC", "FROC" or "pdfs" or "ALL". The default is "ALL".

legendPosition

The positioning of the legend: "right", "left", "top" or "bottom". Use "none" to suppress the legend.

legendDirection

Allows control on the direction of the legend; "horizontal", the default, or "vertical"

legendJustification

Where to position the legend, default is bottom right corner c(0,1)

nlfRange

This applies to FROC plot only. The x-axis range, e.g., c(0,2), for FROC plot. Default is "NULL", which means the maximum NLF range, as determined by the data.

llfRange

This applies to FROC plot only. The y-axis range, e.g., c(0,1), for FROC plot. Default is "NULL", which means the maximum LLF range, as determined by the data.

nlfAlpha

Upper limit of the integrated area under the FROC plot. Default is "NULL", which means the maximum NLF range is used (i.e., lambda). Attempt to integrate outside the maximum NLF will generate an error.

Value

A list containing five ggplot2 objects (ROCPlot, AFROCPlot wAFROCPlot, FROCPlot and PDFPlot) and two area measures (each of which can have up to two elements), the area under the search model predicted ROC curves in up to two treatments, the area under the search model predicted AFROC curves in up to two treatments, the area under the search model predicted wAFROC curves in up to two treatments, the area under the search model predicted FROC curves in up to two treatments.

  • ROCPlot The predicted ROC plots

  • AFROCPlot The predicted AFROC plots

  • wAFROCPlot The predicted wAFROC plots

  • FROCPlot The predicted FROC plots

  • PDFPlot The predicted ROC pdf plots, highest rating generated

  • aucROC The predicted ROC AUCs, highest rating generated

  • aucAFROC The predicted AFROC AUCs

  • aucwAFROC The predicted wAFROC AUCs

  • aucFROC The predicted FROC AUCs

Details

RSM is the Radiological Search Model described in the book. This function is vectorized with respect to the first 4 arguments. For lesDistr the sum must be one. To indicate that all dis. cases contain 4 lesions, set lesDistr = c(0,0,0,1).

References

Chakraborty DP (2006) A search model and figure of merit for observer data acquired according to the free-response paradigm, Phys Med Biol 51, 3449-3462.

Chakraborty DP (2006) ROC Curves predicted by a model of visual search, Phys Med Biol 51, 3463--3482.

Chakraborty, DP, Yoon, HJ (2008) Operating characteristics predicted by models for diagnostic tasks involving lesion localization, Med Phys, 35:2, 435.

Chakraborty DP (2017) Observer Performance Methods for Diagnostic Imaging - Foundations, Modeling, and Applications with R-Based Examples (CRC Press, Boca Raton, FL). https://www.routledge.com/Observer-Performance-Methods-for-Diagnostic-Imaging-Foundations-Modeling/Chakraborty/p/book/9781482214840

Examples

## Following example is for mu = 2, lambda = 1, nu = 0.6, in one modality and
## mu = 3, lambda = 1.5, nu = 0.8, in the other modality. 20% of the diseased
## cases have a single lesion, 40% have two lesions, 10% have 3 lesions,
## and 30% have 4 lesions.

res <- PlotRsmOperatingCharacteristics(mu = c(2, 3), lambda = c(1, 1.5), nu = c(0.6, 0.8),
   lesDistr = c(0.2, 0.4, 0.1, 0.3), legendPosition = "bottom")