Current modules¶
File module |
Operations |
Description |
|---|---|---|
MorphologyModule.py |
removeSmallObjects |
“Remove small items from the image. This is typically done for reducing small pixilar noise, dust, etc” |
fillSmallHoles |
“Fill in small/medium sized “”holes”” in images. For example, lumen spaces in tubules often are detected as background and removed from the final mask. This module will fill them in.” |
|
LightDarkModule.py |
getIntensityThresholdOtsu |
Thresholds the image based on dynamic Otsu threshold |
getIntensityThresholdPercent |
Thresholds the image based on user supplied values. This is good for detecting where the issue is on the slide (non-white) and where folded tissue may be (very dark) |
|
HistogramModule.py |
getHistogram |
Makes a histogram image in rgb space |
compareToTemplates |
Compares the image’s histogram to template images provided by the user |
|
DeconvolutionModule.py |
seperateStains |
Performs stain deconvolution using skimage’s built in matricies |
ClassificationModule.py |
pixelWise |
Applies an RGB based classifier to the image whose values come from a user inputed TSV |
byExampleWithFeatures |
“Computes features of template images provided by the user which have associated binary masks indicating positive and negative classes. Trained classifier is then used on images. Excellent for, e.g., pen detection (with texture) , cracks, etc” |
|
BubbleRegionByRegion.py |
roiWise |
Detect contours of lines of airbubbles on slide. Contains exemplar of how to use HistoQC to iteratively loop over very large images at high mag. (work in progress) |
BrightContrastModule.py |
getBrightnessGray |
“Computes the average value of the image in gray colorspace, which ultimately represents how bright the image is perceived” |
getBrightnessByChannelinColorSpace |
Computes a triplet (one per color channel) in the desired color space. Useful for detecting outliers |
|
getContrast |
Computes both RMS and Michelson contrast metrics |
|
PenMarkingModule.py |
identifyPenMarking |
“Identities pen markings on a pixel by pixel basis by using user supplied tsv file of color values. This is usually suitable when the marking is very different from the staining (e.g., green/blue marker on pink tissue). DEPRECATED - Use ClassificationModule PixelWise” |
BlurDetectionModule.py |
identifyBlurryRegions |
Uses a laplace matrix to determine which regions in the image are likely blurry |
BasicModule.py |
getBasicStats |
Pulls out metadata from image header |
getMag |
Pulls out base magnification. This is required by HistoQC. In the future we’ll add ability to predict magnification |
|
finalComputations |
Computes the final number of pixels available in the output image. Too high or low of a number often indicate incorrect processing or image outliers |
|
finalProcessingSpur |
“Removes spurious morphology from the final mask. Essentially small “”arms”” of tissue are rounded off and removed” |
|
finalProcessingArea |
“Removes larger islands from the output mask, e.g., isolated pieces of tissue” |
|
SaveModule.py |
saveFinalMask |
Saves both the output mask from HistoQC but also the overlay on the original image |
saveThumbnails |
Save thumbnails for easier viewing. This needs to be completed for the UI to work |
|
AnnotationModule.py |
xmlMask |
Loads an Aperio XML file to mask out regions of the image, limitating artifact detection and metric computation to solely regions of interest |
LocalTextureEstimationModule.py |
estimateGreyComatrixFeatures |
Estimate grey comatrix features for background or final images |