Markus Mandalka created TIKA-3040:
-------------------------------------
Summary: PDF inline OCR: Exception while processing certain image
(others in same PDF work)
Key: TIKA-3040
URL: https://issues.apache.org/jira/browse/TIKA-3040
Project: Tika
Issue Type: Bug
Components: ocr
Affects Versions: 1.23
Environment: Debian 10
Tesseract
Reporter: Markus Mandalka
There is a PDF document (without plain text content) in which text content are
scans of multiple pages.
OCR for one of the images (text of a page) fails by tika-server with activated
inline OCR for PDF.
My fallback/alternate in Open Semantic ETL / Open Semantic Search using
pdfimages of Debian package poppler-utils to extract the images works for all
images in that PDF document).
I can not attach/upload this document here to the public because of
Copyright/Classified issues, but if interested, i could send it to certain
developer(s).
Following tika-server exception in result field
X-TIKA:EXCEPTION:embedded_stream_exception:
javax.imageio.IIOException: Bogus input colorspace at
java.desktop/com.sun.imageio.plugins.jpeg.JPEGImageWriter.writeImage(Native
Method) at
java.desktop/com.sun.imageio.plugins.jpeg.JPEGImageWriter.writeOnThread(JPEGImageWriter.java:1007)
at
java.desktop/com.sun.imageio.plugins.jpeg.JPEGImageWriter.write(JPEGImageWriter.java:371)
at
org.apache.pdfbox.tools.imageio.ImageIOUtil.writeImage(ImageIOUtil.java:316) at
org.apache.pdfbox.tools.imageio.ImageIOUtil.writeImage(ImageIOUtil.java:189) at
org.apache.pdfbox.tools.imageio.ImageIOUtil.writeImage(ImageIOUtil.java:166) at
org.apache.pdfbox.tools.imageio.ImageIOUtil.writeImage(ImageIOUtil.java:148) at
org.apache.tika.parser.pdf.PDF2XHTML.writeToBuffer(PDF2XHTML.java:304) at
org.apache.tika.parser.pdf.PDF2XHTML.processImageObject(PDF2XHTML.java:268) at
org.apache.tika.parser.pdf.PDF2XHTML.extractImages(PDF2XHTML.java:194) at
org.apache.tika.parser.pdf.PDF2XHTML.endPage(PDF2XHTML.java:165) at
org.apache.pdfbox.text.PDFTextStripper.processPage(PDFTextStripper.java:393) at
org.apache.tika.parser.pdf.PDF2XHTML.processPage(PDF2XHTML.java:153) at
org.apache.tika.parser.pdf.AbstractPDF2XHTML.processPages(AbstractPDF2XHTML.java:867)
at org.apache.pdfbox.text.PDFTextStripper.writeText(PDFTextStripper.java:266)
at org.apache.tika.parser.pdf.PDF2XHTML.process(PDF2XHTML.java:124) at
org.apache.tika.parser.pdf.PDFParser.parse(PDFParser.java:162) at
org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280) at
org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280) at
org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:143) at
org.apache.tika.parser.RecursiveParserWrapper.parse(RecursiveParserWrapper.java:233)
at org.apache.tika.server.resource.TikaResource.parse(TikaResource.java:409)
at
org.apache.tika.server.resource.RecursiveMetadataResource.parseMetadata(RecursiveMetadataResource.java:147)
at
org.apache.tika.server.resource.RecursiveMetadataResource.getMetadata(RecursiveMetadataResource.java:123)
at jdk.internal.reflect.GeneratedMethodAccessor5.invoke(Unknown Source) at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566) at
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179)
at
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:201) at
org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:104) at
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
at
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:267)
at
org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:247)
at
org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:79)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1296)
at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:190)
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1211)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:221)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.Server.handle(Server.java:500) at
org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:386) at
org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:560) at
org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:378) at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:268) at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) at
org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117) at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:782)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:914)
at java.base/java.lang.Thread.run(Thread.java:834)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)