Since I had trouble reading jpeg files, I used ImageMagick to convert them to PNG files which seem to be better supported. However those files are also not read by the ImageReader (Table) node. The image handling appears fairly fragile with the image sources I'm using. They appear ok in browsers and Windows image viewer.
Also, the tools to cast a binary blob (e.g. read from a file or stream) to an image type are weak; there is only a blob to PNG casting node, no other formats area supported.
Versions:
KNIME Image Processing 1.5.4.201706010607 org.knime.knip.feature.feature.group University of Konstanz / KNIME
KNIME Image Processing - Deeplearning4J Integration 1.1.0.v201612201033 org.knime.knip.dl4j.feature.feature.group University of Konstanz, Germany
KNIME Analytics Platform 3.3.2.v201704061137 org.knime.product.desktop null
Platform: Windoes 10
Error:
2017-06-02 12:31:46,948 : DEBUG : KNIME-Worker-20 : ImgReaderTableNodeModel : Image Reader (Table) : 0:110:67 : Encountered exception while reading image:
io.scif.img.ImgIOException: javax.imageio.IIOException: Error reading PNG image data
at io.scif.img.ImgOpener.openImgs(ImgOpener.java:389)
at io.scif.img.ImgOpener.openImg(ImgOpener.java:529)
at org.knime.knip.io.ScifioImgSource.getImg(ScifioImgSource.java:297)
at org.knime.knip.io.nodes.imgreader2.AbstractReadImgFunction.readImageAndMetadata(AbstractReadImgFunction.java:138)
at org.knime.knip.io.nodes.imgreader2.readfrominput.ReadImgTableFunction.lambda$0(ReadImgTableFunction.java:101)
at java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:110)
at java.util.stream.IntPipeline$Head.forEachOrdered(IntPipeline.java:567)
at org.knime.knip.io.nodes.imgreader2.readfrominput.ReadImgTableFunction.apply(ReadImgTableFunction.java:95)
at org.knime.knip.io.nodes.imgreader2.readfrominput.ImgReaderTableNodeModel.execute(ImgReaderTableNodeModel.java:154)
at org.knime.core.node.NodeModel.execute(NodeModel.java:732)
at org.knime.core.node.NodeModel.executeModel(NodeModel.java:566)
at org.knime.core.node.Node.invokeFullyNodeModelExecute(Node.java:1128)
at org.knime.core.node.Node.execute(Node.java:915)