You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ta...@apache.org on 2021/02/10 22:54:07 UTC
[tika] branch main updated: refactor "imageprocessing" to
imagepreprocessing
This is an automated email from the ASF dual-hosted git repository.
tallison pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tika.git
The following commit(s) were added to refs/heads/main by this push:
new 8239a25 refactor "imageprocessing" to imagepreprocessing
8239a25 is described below
commit 8239a25f7230c2ade6b7e9e7cfefda2d7eac0269
Author: tballison <ta...@apache.org>
AuthorDate: Wed Feb 10 17:53:57 2021 -0500
refactor "imageprocessing" to imagepreprocessing
---
.../org/apache/tika/parser/ocr/ImagePreprocessor.java | 19 +++----------------
.../apache/tika/parser/ocr/TesseractOCRConfig.java | 16 ++++++++--------
.../apache/tika/parser/ocr/TesseractOCRParser.java | 6 +++---
.../test-configs/tika-config-tesseract-full.xml | 2 +-
.../test-configs/tika-config-tesseract-partial.xml | 2 +-
5 files changed, 16 insertions(+), 29 deletions(-)
diff --git a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/ImagePreprocessor.java b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/ImagePreprocessor.java
index 47e8a66..2616f6c 100644
--- a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/ImagePreprocessor.java
+++ b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/ImagePreprocessor.java
@@ -18,34 +18,21 @@ package org.apache.tika.parser.ocr;
import org.apache.commons.exec.CommandLine;
import org.apache.commons.exec.DefaultExecutor;
-import org.apache.commons.io.IOUtils;
-import org.apache.tika.io.TemporaryResources;
import org.apache.tika.metadata.Metadata;
-import org.apache.tika.parser.external.ExternalParser;
import org.apache.tika.parser.ocr.tess4j.ImageDeskew;
-import org.apache.tika.utils.ProcessUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
-import java.io.File;
-import java.io.FileOutputStream;
import java.io.IOException;
-import java.io.OutputStreamWriter;
import java.io.Serializable;
-import java.nio.charset.Charset;
-import java.nio.file.Files;
import java.nio.file.Path;
-import java.nio.file.Paths;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
-import java.util.HashMap;
import java.util.List;
import java.util.Locale;
-import java.util.Map;
-import java.util.concurrent.TimeUnit;
import java.util.stream.Stream;
class ImagePreprocessor implements Serializable {
@@ -68,7 +55,7 @@ class ImagePreprocessor implements Serializable {
? getAngle(sourceFile, metadata)
: 0d;
- if (config.isEnableImageProcessing() || config.isApplyRotation() && angle != 0) {
+ if (config.isEnableImagePreprocessing() || config.isApplyRotation() && angle != 0) {
// process the image - parameter values can be set in TesseractOCRConfig.properties
CommandLine commandLine = new CommandLine(fullImageMagickPath);
@@ -84,7 +71,7 @@ class ImagePreprocessor implements Serializable {
Stream<List<String>> stream = Stream.empty();
if (angle == 0) {
- if (config.isEnableImageProcessing()) {
+ if (config.isEnableImagePreprocessing()) {
// Do pre-processing, but don't do any rotation
stream = Stream.of(
density,
@@ -95,7 +82,7 @@ class ImagePreprocessor implements Serializable {
sourceFileArg,
targFileArg);
}
- } else if (config.isEnableImageProcessing()) {
+ } else if (config.isEnableImagePreprocessing()) {
// Do pre-processing with rotation
stream = Stream.of(
density,
diff --git a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/TesseractOCRConfig.java b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/TesseractOCRConfig.java
index ad68c4e..79b05d6 100644
--- a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/TesseractOCRConfig.java
+++ b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/TesseractOCRConfig.java
@@ -82,8 +82,8 @@ public class TesseractOCRConfig implements Serializable {
// The format of the ocr'ed output to be returned, txt or hocr.
private OUTPUT_TYPE outputType = OUTPUT_TYPE.TXT;
- // enable image processing (optional)
- private boolean enableImageProcessing = false;
+ // enable image preprocessing with ImageMagick (optional)
+ private boolean enableImagePreprocessing = false;
// resolution of processed image (in dpi).
private int density = 300;
@@ -312,19 +312,19 @@ public class TesseractOCRConfig implements Serializable {
/**
* @return image processing is enabled or not
- * @see #setEnableImageProcessing(boolean)
+ * @see #setEnableImagePreprocessing(boolean)
*/
- public boolean isEnableImageProcessing() {
- return enableImageProcessing;
+ public boolean isEnableImagePreprocessing() {
+ return enableImagePreprocessing;
}
/**
* Set the value to true if processing is to be enabled.
* Default value is false.
*/
- public void setEnableImageProcessing(boolean enableImageProcessing) {
- this.enableImageProcessing = enableImageProcessing;
- userConfigured.add("enableImageProcessing");
+ public void setEnableImagePreprocessing(boolean enableImagePreprocessing) {
+ this.enableImagePreprocessing = enableImagePreprocessing;
+ userConfigured.add("enableImagePreprocessing");
}
/**
diff --git a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java
index 8258286..d349d33 100644
--- a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java
+++ b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java
@@ -269,7 +269,7 @@ public class TesseractOCRParser extends AbstractParser implements Initializable
if (size >= config.getMinFileSizeToOcr() && size <= config.getMaxFileSizeToOcr()) {
// Process image
- if (config.isEnableImageProcessing() || config.isApplyRotation()) {
+ if (config.isEnableImagePreprocessing() || config.isApplyRotation()) {
if (!hasImageMagick) {
LOG.warn("User has selected to preprocess images, but I can't find ImageMagick." +
"Backing off to original file.");
@@ -674,8 +674,8 @@ public class TesseractOCRParser extends AbstractParser implements Initializable
}
@Field
- public void setEnableImageProcessing(boolean enableImageProcessing) {
- defaultConfig.setEnableImageProcessing(enableImageProcessing);
+ public void setEnableImagePreprocessing(boolean enableImagePreprocessing) {
+ defaultConfig.setEnableImagePreprocessing(enableImagePreprocessing);
}
@Field
diff --git a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/test/resources/test-configs/tika-config-tesseract-full.xml b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/test/resources/test-configs/tika-config-tesseract-full.xml
index 1572a6e..88c0357 100644
--- a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/test/resources/test-configs/tika-config-tesseract-full.xml
+++ b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/test/resources/test-configs/tika-config-tesseract-full.xml
@@ -31,7 +31,7 @@
<param name="outputType" type="string">hocr</param>
<param name="filter" type="string">box</param>
<param name="applyRotation" type="bool">true</param>
- <param name="enableImageProcessing" type="bool">false</param>
+ <param name="enableImagePreprocessing" type="bool">false</param>
<param name="language" type="string">ceb</param>
</params>
</parser>
diff --git a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/test/resources/test-configs/tika-config-tesseract-partial.xml b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/test/resources/test-configs/tika-config-tesseract-partial.xml
index 33ca5c1..ed3c492 100644
--- a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/test/resources/test-configs/tika-config-tesseract-partial.xml
+++ b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-ocr-module/src/test/resources/test-configs/tika-config-tesseract-partial.xml
@@ -28,7 +28,7 @@
<param name="outputType" type="string">hocr</param>
<param name="filter" type="string">box</param>
<param name="applyRotation" type="bool">false</param>
- <param name="enableImageProcessing" type="bool">false</param>
+ <param name="enableImagePreprocessing" type="bool">false</param>
<param name="language" type="string">fra+deu</param>