public abstract class TrainedModelDetector extends java.lang.Object implements Detector
Modifier and Type | Field and Description |
---|---|
private java.util.Map<MediaType,TrainedModel> |
MODEL_MAP |
private static long |
serialVersionUID |
Constructor and Description |
---|
TrainedModelDetector() |
Modifier and Type | Method and Description |
---|---|
MediaType |
detect(java.io.InputStream input,
Metadata metadata)
Detects the content type of the given input document.
|
int |
getMinLength() |
abstract void |
loadDefaultModels(java.lang.ClassLoader classLoader) |
void |
loadDefaultModels(java.io.File modelFile) |
abstract void |
loadDefaultModels(java.io.InputStream modelStream) |
void |
loadDefaultModels(java.nio.file.Path modelFile) |
protected float[] |
readByteFrequencies(java.io.InputStream input)
Read the
inputstream and build a byte frequency histogram |
protected void |
registerModels(MediaType type,
TrainedModel model) |
private void |
writeHisto(float[] histogram)
for testing purposes; this method write the histogram vector to a file.
|
private final java.util.Map<MediaType,TrainedModel> MODEL_MAP
private static final long serialVersionUID
public int getMinLength()
public MediaType detect(java.io.InputStream input, Metadata metadata) throws java.io.IOException
Detector
application/octet-stream
if the type of the document
can not be detected.
If the document input stream is not available, then the first
argument may be null
. Otherwise the detector may
read bytes from the start of the stream to help in type detection.
The given stream is guaranteed to support the
mark feature
and the detector
is expected to mark
the stream before
reading any bytes from it, and to reset
the stream before returning. The stream must not be closed by the
detector.
The given input metadata is only read, not modified, by the detector.
protected float[] readByteFrequencies(java.io.InputStream input) throws java.io.IOException
inputstream
and build a byte frequency histograminput
- stream to read fromjava.io.IOException
private void writeHisto(float[] histogram) throws java.io.IOException
histogram
- java.io.IOException
public void loadDefaultModels(java.nio.file.Path modelFile)
public void loadDefaultModels(java.io.File modelFile)
public abstract void loadDefaultModels(java.io.InputStream modelStream)
public abstract void loadDefaultModels(java.lang.ClassLoader classLoader)
protected void registerModels(MediaType type, TrainedModel model)