Login  Register

Re: Voronoi plugin not adjusted

Posted by Kenneth Sloan-2 on Feb 08, 2018; 11:04pm
URL: http://imagej.273.s1.nabble.com/Voronoi-plugin-not-adjusted-tp5020029p5020036.html

Sorry - no.  As I said earlier, I do my own Voronoi computations (in Java) and generally export both the entire Voronoi Diagram and a polygon outlining the ROI to a .csv file for further processing by non-ImageJ Java programs.

I have no experience in using the plugins to process Voronoi Diagrams (and also very little experience with
the ImageJ macro language).


--
Kenneth Sloan
[hidden email]
Vision is the art of seeing what is invisible to others.





> On 8 Feb 2018, at 16:39 , Adrián Villalba <[hidden email]> wrote:
>
> Dear Kenneth,
>
> Thank you for your hint. I achieve to perform now the Voronoi to the whole
> image (as i understand you suggested). Do you know at this point how can i
> restrict it to to my green positive are and even measure the area of each
> ROI of interest?
>
> Thank you
>
> Macro:
> run("Duplicate...", " ");
> title = getTitle();
> run("Split Channels");
>
> selectWindow(title+" (green)");
> // process the green channel;
> setAutoThreshold("Moments dark");
> //run("Threshold...");
> //setThreshold(69, 255);
> setOption("BlackBackground", false);
> run("Convert to Mask");
> run("Close-");
> run("Fill Holes");
> run("Dilate");
> run("Remove Outliers...", "radius=50 threshold=50 which=Bright");
> run("Create Selection");
>
>
> selectWindow(title+" (blue)");
> // process the blue channel;
>
> run("Unsharp Mask...", "radius=5 mask=0.90");
> run("Remove Outliers...", "radius=3 threshold=2 which=Bright");
> run("Find Maxima...", "noise=50 output=[Maxima Within Tolerance]");
> run("Delaunay Voronoi", "mode=Voronoi interactive");
> run("Close-");
> run("Fill Holes");
> run("Watershed");
> run("Find Maxima...", "noise=1 output=[Point Selection] light");
> run("Delaunay Voronoi", "mode=Voronoi interactive");
>
>
> 2018-02-08 22:38 GMT+01:00 Kenneth Sloan <[hidden email]>:
>
>> I usually do this sort of restriction by limiting the analysis to Voronoi
>> regions which are completely in the ROI (your "green region").  But, I also
>> always roll my own Voronoi computations, and have no clue how to do that
>> using the standard tool, and especially not in the macro language.
>>
>> Even so, I thought this hint might be useful.
>>
>> You WANT the Voronoi computation to include the entire image, because
>> those half-infinite regions provide boundaries for the ones you want to
>> analyze.  Use as much area as possible to create the Voronoi Diagram, and
>> then clip out and reject any Voronoi region that is not entirely contained
>> inside your ROI.  In practice, this means computing the Voronoi vertices
>> and checking that each one is inside the ROI,
>>
>> --
>> Kenneth Sloan
>> [hidden email]
>> Vision is the art of seeing what is invisible to others.
>>
>>
>>
>>
>>
>>> On 8 Feb 2018, at 10:08 , Adrián Villalba <[hidden email]> wrote:
>>>
>>> Dear all,
>>>
>>> Thank you all for your help. I am trying to perform Voronoi - using the
>>> DelaunayVoronoi plugin in Plugin>Analyze) to calculte (aproximately) the
>>> area of positive staining in each cell.
>>>
>>> I used a homemade macro:
>>>
>>> run("Duplicate...", " ");
>>> title = getTitle();
>>> run("Split Channels");
>>>
>>> selectWindow(title+" (green)");
>>> // process the green channel;
>>> setAutoThreshold("Moments dark");
>>> //run("Threshold...");
>>> //setThreshold(69, 255);
>>> setOption("BlackBackground", false);
>>> run("Convert to Mask");
>>> run("Close-");
>>> run("Fill Holes");
>>> run("Dilate");
>>> run("Remove Outliers...", "radius=50 threshold=50 which=Bright");
>>> run("Create Selection");
>>>
>>>
>>> selectWindow(title+" (blue)");
>>> // process the blue channel;
>>> run("Restore Selection");
>>> run("Unsharp Mask...", "radius=5 mask=0.90");
>>> run("Remove Outliers...", "radius=3 threshold=2 which=Bright");
>>> run("Find Maxima...", "noise=50 output=[Maxima Within Tolerance]");
>>> run("Delaunay Voronoi", "mode=Voronoi interactive");
>>> run("Close-");
>>> run("Fill Holes");
>>> run("Watershed");
>>> run("Find Maxima...", "noise=1 output=[Point Selection] light");
>>> run("Delaunay Voronoi", "mode=Voronoi interactive");
>>>
>>>
>>> The point is that the surrounding nuclei of my section has a Voronoi area
>>> to the boundaries of the image and i only want to perform that in the
>>> green-positive selection. I can not restore in the same image the find
>>> maxima output to locate the nuclei and the selection i previously used in
>>> my green channel. Does anyone know how can i apply Voronoi with my
>>> selection boundaries instead of performing Voroni to the whole picture?
>> And
>>> if it is possible, how can i measure the area of each Voronoi-region?
>>>
>>> Thank you in advance!
>>>
>>>
>>> --
>>>
>>>  - Adrián Villalba Felipe.
>>>  https://es.linkedin.com/in/adrianvillalba
>>>
>>> --
>>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>> <input_Voronoi.tif><Voronoi output.tif>
>>
>> --
>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>
>
>
>
> --
>
>   - Adrián Villalba Felipe.
>   https://es.linkedin.com/in/adrianvillalba
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
> <s3-1.jpg (blue) Maxima.tif>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html