Package net.sourceforge.jiu.color.data
Interface Histogram3D
-
- All Known Implementing Classes:
NaiveHistogram3D
,OnDemandHistogram3D
public interface Histogram3D
An interface for classes that store three-dimensional histograms. Histograms count the occurrence of values, so a three-dimensional histogram has counters for three-dimensional values. The 3D histograms are used (as an example) to count the occurrence of each color in an RGB image.- Author:
- Marco Schmidt
- See Also:
Histogram1D
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
clear()
Sets all counters to zero.int
getEntry(int index1, int index2, int index3)
Returns the counter value of (index1, index2, index3).int
getMaxValue(int index)
Returns the maximum index value for one of the three indexes.int
getNumUsedEntries()
Returns the number of used entries (those entries with a counter value larger than zero).void
increaseEntry(int index1, int index2, int index3)
Increases the counter value of (index1, index2, index3) by one.void
setEntry(int index1, int index2, int index3, int newValue)
Sets the counter value of (index1, index2, index3) to newValue.
-
-
-
Method Detail
-
clear
void clear()
Sets all counters to zero.
-
getEntry
int getEntry(int index1, int index2, int index3)
Returns the counter value of (index1, index2, index3).- Parameters:
index1
- first of the three values forming the threedimensional indexindex2
- second of the three values forming the threedimensional indexindex3
- three of the three values forming the threedimensional index- Returns:
- the counter value of the desired index
- Throws:
IllegalArgumentException
- if the index formed by the arguments is invalid
-
getMaxValue
int getMaxValue(int index)
Returns the maximum index value for one of the three indexes.- Throws:
IllegalArgumentException
- if the index formed by the arguments is invalid
-
getNumUsedEntries
int getNumUsedEntries()
Returns the number of used entries (those entries with a counter value larger than zero).- Returns:
- number of non-zero counter values
-
increaseEntry
void increaseEntry(int index1, int index2, int index3)
Increases the counter value of (index1, index2, index3) by one. This method can be implemented by the one-linersetEntry(index1, index2, index3, getEntry(index1, index2, index3) + 1);
However, implementations of this method may take advantage of implementation details to provide a more efficient approach.- Parameters:
index1
- first of the three values forming the threedimensional indexindex2
- second of the three values forming the threedimensional indexindex3
- three of the three values forming the threedimensional index- Throws:
IllegalArgumentException
- if the index formed by the arguments is invalid
-
setEntry
void setEntry(int index1, int index2, int index3, int newValue)
Sets the counter value of (index1, index2, index3) to newValue.- Parameters:
index1
- first of the three values forming the threedimensional indexindex2
- second of the three values forming the threedimensional indexindex3
- three of the three values forming the threedimensional indexnewValue
- the counter value that is assigned to the argument index- Throws:
IllegalArgumentException
- if the index formed by the first three arguments is invalid
-
-