|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object br.usp.ime.klava.segmentit.structures.HierarchyManager
public class HierarchyManager
Manages hierarchical operations over an image.
Constructor Summary | |
---|---|
HierarchyManager(PrimitiveCatchmentBasinsGraph graph,
HierarchyCriterion hierarchyCriterion,
java.awt.image.BufferedImage originalImage)
Constructs a hierarchical set of nested partitions of graph |
|
HierarchyManager(PrimitiveCatchmentBasinsGraph graph,
HierarchyCriterion hierarchyCriterion,
int[] labels,
java.awt.Point selectedPixel,
java.awt.image.BufferedImage originalImage)
Constructs a hierarchical set of nested partitions of graph |
|
HierarchyManager(PrimitiveCatchmentBasinsGraph graph,
HierarchyCriterion hierarchyCriterion,
Pixel[][] initialPartition,
java.awt.Point selectedPixel,
java.awt.image.BufferedImage originalImage)
Constructs a hierarchical set of nested partitions of the vertices of the graph |
Method Summary | |
---|---|
boolean |
belongsToEnabledRegion(int x,
int y)
Returns if the pixel located at ( x ,y ) belongs
to the region where the hierarchy operations are restricted to. |
int[] |
getActiveLabels()
Returns the active labels of each leaf node of the hierarchy. |
int |
getEdgeWeightIndex(int weight)
Returns the index of the given weight in the array of
existing edges weights. |
PrimitiveCatchmentBasinsGraph |
getGraphFromFilteredImage()
Returns the PrimitiveCatchmentBasinsGraph derived from the
filtered imaged used in this HierarchyManager . |
HierarchyNode |
getHierarchyRoot()
Returns the root node of the hierarchy. |
java.awt.image.BufferedImage |
getMarkersImage()
Returns markers that recovers exactly the selected partition when applied back on the RAG. |
int[] |
getTCLWeights()
Returns the weights of the edges in the hierarchy. |
int |
getWeight(int index)
Returns the hierarchy weight associated with index |
boolean |
isMergeEnabled(int x,
int y)
Returns if the merge local operation is available for the current active region that contains the pixel located at ( x ,y
). |
boolean |
isRefineEnabled(int x,
int y)
Returns if the split local operation is available in the current active region that contains the pixel located at ( x ,y
). |
boolean |
isRootActive()
Returns if the hierarchy root is active (the selected partitions is the coarsest possible). |
HierarchyNode |
merge(int x,
int y)
Merges the region that contains the pixel located at ( x ,
y ). |
java.awt.image.BufferedImage |
paintSelectedPartition()
Returns an image with the selected partition painted. |
java.awt.image.BufferedImage |
paintSelectedPartition(HierarchyNode hierarchyNode)
Returns an image with the selected partition painted. |
void |
randomizeColors()
Randomizes the Color s of the underlying
TreeOfCriticalLakes . |
HierarchyState |
redo()
Redoes an action, if possible. |
HierarchyNode |
refine(int x,
int y)
Splits the region that contains the pixel located at ( x ,
y ). |
void |
setCriterion(HierarchyCriterion hierarchyCriterion,
boolean storeState)
Derives a nested partitions set using the given hierarchyCriterion . |
void |
setDisplayOnlySelectedRegion(boolean displayOnlySelectedRegion)
Sets if only the region where the operation are restricted to should be displayed. |
void |
setThreshold(int threshold,
boolean storeState)
Selects a partition on the hierarchy according to a threshold value. |
static void |
setTreeOfCriticalLakesBuilder(TreeOfCriticalLakesBuilderIF treeOfCriticalLakesBuilder)
Sets a TreeOfCriticalLakesBuilderIF to build
TreeOfCriticalLakes in this HierarchyManager |
HierarchyState |
undo()
Undoes an action, if possible. |
void |
weldLabels(java.util.Collection<java.lang.Integer> labelsToWeld)
Welds the regions whose labels are in labelsToWeld . |
boolean |
weldMarkedPixels(java.lang.Boolean[][] markedPixels)
Welds the regions that contains any markedPixels . |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public HierarchyManager(PrimitiveCatchmentBasinsGraph graph, HierarchyCriterion hierarchyCriterion, Pixel[][] initialPartition, java.awt.Point selectedPixel, java.awt.image.BufferedImage originalImage) throws ColorImageException
graph.
- Parameters:
graph
- a PrimitiveCatchmentBasinsGraph
from which the
hierarchy will be builthierarchyCriterion
- the criterion from which the partitions are derivedinitialPartition
- a partition desired to be localized at the hierarchyselectedPixel
- the coordinates of a pixel of the region of
initialPartition
which the operations will be
restricted tooriginalImage
- the original image
- Throws:
ColorImageException
- if originalImage
is not a gray level image and the
hierarchyCriterion
do not support color images
public HierarchyManager(PrimitiveCatchmentBasinsGraph graph, HierarchyCriterion hierarchyCriterion, int[] labels, java.awt.Point selectedPixel, java.awt.image.BufferedImage originalImage) throws ColorImageException
graph.
- Parameters:
graph
- a graph of primitive catchment basins from which the hierarchy
will be builthierarchyCriterion
- the criterion from which the partitions are derivedlabels
- a labeling that corresponds to a partition desired to be
localized at the hierarchyselectedPixel
- a pixel of the region of initialPartition
which
the operations will be restricted tooriginalImage
- the original image
- Throws:
ColorImageException
- if originalImage
is not a gray level image and the
hierarchyCriterion
do not support color images
public HierarchyManager(PrimitiveCatchmentBasinsGraph graph, HierarchyCriterion hierarchyCriterion, java.awt.image.BufferedImage originalImage) throws ColorImageException
graph.
- Parameters:
graph
- a graph of primitive catchment basins from which the hierarchy
will be builthierarchyCriterion
- the criterion from which the partitions are derivedoriginalImage
- the original image
- Throws:
ColorImageException
- if originalImage
is not a gray level image and the
hierarchyCriterion
do not support color images
Method Detail |
---|
public boolean weldMarkedPixels(java.lang.Boolean[][] markedPixels)
markedPixels
.
markedPixels
- Boolean
matrix indicating which pixels are markedpublic void weldLabels(java.util.Collection<java.lang.Integer> labelsToWeld)
labelsToWeld
.
labelsToWeld
- the labels of the regions to be weldedpublic void setCriterion(HierarchyCriterion hierarchyCriterion, boolean storeState)
hierarchyCriterion
.
hierarchyCriterion
- a HierarchyCriterion
from which the partitions
are derivedstoreState
- if the new state must be store for undo/redopublic void setThreshold(int threshold, boolean storeState)
threshold
value.
threshold
- the threshold value to select a partition in the hierarchystoreState
- if the new state must be store for undo/redopublic int[] getActiveLabels()
public java.awt.image.BufferedImage paintSelectedPartition()
public java.awt.image.BufferedImage paintSelectedPartition(HierarchyNode hierarchyNode)
hierarchyNode
- the HierarchyNode
that needs to be painted
public HierarchyNode refine(int x, int y)
x
,
y
).
x
- the x-coordinate of a pixely
- the y-coordinate of a pixel
HierarchyNode
that was refined, null
if
the refine operation was not enabledpublic boolean isRefineEnabled(int x, int y)
x
,y
).
x
- the x-coordinate of a pixely
- the y-coordinate of a pixel
true
if the split local operation is available for
the current active region that contains the pixel located at (
x
,y
)public HierarchyNode merge(int x, int y)
x
,
y
).
x
- the x-coordinate of a pixely
- the y-coordinate of a pixel
HierarchyNode
selected by this merging operation,
null
if the merge operation was not enabledpublic boolean isMergeEnabled(int x, int y)
x
,y
).
x
- the x-coordinate of a pixely
- the y-coordinate of a pixel
true
if the merge local operation is available for
the current active region that contains the pixel located at (
x
,y
)public boolean belongsToEnabledRegion(int x, int y)
x
,y
) belongs
to the region where the hierarchy operations are restricted to.
x
- the x-coordinate of a pixely
- the y-coordinate of a pixel
true
if the pixel located at (x
,
y
) belongs to the region where the hierarchy
operations are restricted topublic java.awt.image.BufferedImage getMarkersImage()
public void setDisplayOnlySelectedRegion(boolean displayOnlySelectedRegion)
displayOnlySelectedRegion
- true
if only the region where the operation are
restricted to should be displayedpublic HierarchyState undo()
null
if not action was undone.public HierarchyState redo()
null
if not action was redone.public boolean isRootActive()
public int[] getTCLWeights()
public int getWeight(int index)
index
index
- the order of the desired weight in the ordered weights
index
public int getEdgeWeightIndex(int weight)
weight
in the array of
existing edges weights.
weight
- the weight of an edge
weight
in the array of
existing edges weights, or a negative int
if there
is none edge whose weight is equal to weight
public HierarchyNode getHierarchyRoot()
public PrimitiveCatchmentBasinsGraph getGraphFromFilteredImage()
PrimitiveCatchmentBasinsGraph
derived from the
filtered imaged used in this HierarchyManager
.
PrimitiveCatchmentBasinsGraph
used in this
HierarchyManager
public void randomizeColors()
Color
s of the underlying
TreeOfCriticalLakes
.
public static void setTreeOfCriticalLakesBuilder(TreeOfCriticalLakesBuilderIF treeOfCriticalLakesBuilder)
TreeOfCriticalLakesBuilderIF
to build
TreeOfCriticalLakes
in this HierarchyManager
treeOfCriticalLakesBuilder
- an implementation of TreeOfCriticalLakesBuilderIF
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |