Phriction Projects Wikis Bioimaging And Optics Platform Image Processing QuPath Color_Deconvolution & Threshold in ImageJ History Version 2 vs 3
Version 2 vs 3
Version 2 vs 3
Edits
Edits
- Delete by oburri, Version 3
- Jan 9 2024 16:23
- Edit by romainGuiet, Version 2
- Dec 21 2017 13:45
« Previous Change | Most Recent Change |
Edit Older Version 2... |
Content Changes
Content Changes
= Script Purpose=
The script does `Color Deconvolution` using `H-DAB` vector in ImageJ on the annotation(s) crop from QuPath.
Then it apply a threshold on the DAB component (Colour 2).
An measure the thresholded area.
= Script Exports=
It exports :
- Annotation/Detection back to QuPath
- Save measurement in a txt file
=Script Requirements =
Add the ImageJ Plugin to QuPath.
To do so, paste the `Color_Deconvolution.jar` file in a folder
{F5083978}
In `Extensions > ImageJ > Set ImageJ plugins directory` select the corresponding folder
=Script Use=
== Open `ImageJ Macro Runner`==
`Extensions` > `ImageJ` > `ImageJ Macro Runner`
{F5022528, size=full}
And paste code below
```lang=javascript
//set Measurements
run("Set Measurements...", "area mean standard modal min area_fraction limit display redirect=None decimal=5");
// and environment
roiManager("Reset");
setBackgroundColor(255,255,255);
setForegroundColor(0,0,0);
// Please defined the folder for saving results
path = "to be specfied";
// get the image name
imageName = getTitle();
// we transfer the annotation roiManager("Add");
roiManager("Add");
// You can export a ROI to QuPath as an Overlay
// as an Annotation (independent)
// as a Detection (within an Annotation)
exportAsAnnotation = true ;
if (exportAsAnnotation )exportType = "Annotation";
else exportType = "Detection";
run("Colour Deconvolution", "vectors=[H DAB]");
selectImage(imageName+"-(Colour_2)");
setAutoThreshold("Huang");
roiManager("Measure");
// Create a ROI from the thresholded area
run("Create Selection");
roiManager("Add");
// Select both ROIs and create a new ROI using boolean "AND"
roiManager("Select", newArray(0,1));
roiManager("AND");
//...named after number of measurements
Roi.setName("ROI-"+(nResults));
roiManager("Add");
// delete the other ROIs
roiManager("Select",0);
roiManager("Delete");
// TO have proper localisation, reselect the original image
selectImage(imageName );
// the ROI
roiManager("Select",0);
// and send back to QuPath
run("From ROI Manager");
run("Send Overlay to QuPath", "choose_object_type="+exportType);
// Save the results, using current image name
// ImageJ Macro in QuPath can be run on one image at a time
selectWindow("Results");
saveAs("Results", path+imageName+".txt");
```
{F5083152, size=full}
==Press Run==
If you have no Annotation(s) selected yet, QuPath will ask you to press {key OK}
{F5083412, size = full}
= Script Purpose=
The script does `Color Deconvolution` using `H-DAB` vector in ImageJ on the annotation(s) crop from QuPath.
Then it apply a threshold on the DAB component (Colour 2).
An measure the thresholded area.
= Script Exports=
It exports :
- Annotation/Detection back to QuPath
- Save measurement in a txt file
=Script Requirements =
Add the ImageJ Plugin to QuPath.
To do so, paste the `Color_Deconvolution.jar` file in a folder
{F5083978}
In `Extensions > ImageJ > Set ImageJ plugins directory` select the corresponding folder
=Script Use=
== Open `ImageJ Macro Runner`==
`Extensions` > `ImageJ` > `ImageJ Macro Runner`
{F5022528, size=full}
And paste code below
```lang=javascript
//set Measurements
run("Set Measurements...", "area mean standard modal min area_fraction limit display redirect=None decimal=5");
// and environment
roiManager("Reset");
setBackgroundColor(255,255,255);
setForegroundColor(0,0,0);
// Please defined the folder for saving results
path = "to be specfied";
// get the image name
imageName = getTitle();
// we transfer the annotation roiManager("Add");
roiManager("Add");
// You can export a ROI to QuPath as an Overlay
// as an Annotation (independent)
// as a Detection (within an Annotation)
exportAsAnnotation = true ;
if (exportAsAnnotation )exportType = "Annotation";
else exportType = "Detection";
run("Colour Deconvolution", "vectors=[H DAB]");
selectImage(imageName+"-(Colour_2)");
setAutoThreshold("Huang");
roiManager("Measure");
// Create a ROI from the thresholded area
run("Create Selection");
roiManager("Add");
// Select both ROIs and create a new ROI using boolean "AND"
roiManager("Select", newArray(0,1));
roiManager("AND");
//...named after number of measurements
Roi.setName("ROI-"+(nResults));
roiManager("Add");
// delete the other ROIs
roiManager("Select",0);
roiManager("Delete");
// TO have proper localisation, reselect the original image
selectImage(imageName );
// the ROI
roiManager("Select",0);
// and send back to QuPath
run("From ROI Manager");
run("Send Overlay to QuPath", "choose_object_type="+exportType);
// Save the results, using current image name
// ImageJ Macro in QuPath can be run on one image at a time
selectWindow("Results");
saveAs("Results", path+imageName+".txt");
```
{F5083152, size=full}
==Press Run==
If you have no Annotation(s) selected yet, QuPath will ask you to press {key OK}
{F5083412, size = full}
c4science · Help