Description
Hello,
I would like to use PoCoTo to correct OCR'd text. Unfortunately, I have not been able to successfully create a project in PoCoTo. In what follows I will outline my procedure in detail and hope that someone can offer as advice as to what I am doing wrong. (I should say that I am using a MacBook Pro and Ocropy.)
Here is the procedure I followed:
- I created a directory called "potoco_test" and in that directory I created a subdirectory called "tif". The "tif" directory contained three binarized image files. I then moved on to create the remainder of the necessary files as described in your manual. Here are the exact details of the commands I executed in Terminal:
$ cd ~/pocoto_test/tif
$ ocropus-gpageseg -n -Q4 *.tif
$ ocropus-rpred -n -Q4 --llocs -m french.pyrnn.gz /.bin.png
$ cd ~/pocoto_test/
$ mkdir ocropus-hocr
$ cd ~/pocoto_test/tif
$ for i in *.tif; do echo
-
I then changed the name of the tif-directory from "tif" to "ocropus-book" and put the tif images into their own directory again named "tif". After doing so, my directory structure looked like this:
-
I then tried to create a new project in PoCoTo as follows: in the New Project Wizard, for Step 1 I chose the "pocoto_test" directory as my "Project Path" and then I clicked "Next >" and moved on to Step 2; in Step 2, I chose the "ocropus-hocr" directory as the OCR Outputfile Dir and then I clicked "Next >" and moved on to Step 3; in Step 3 I chose the "tif" directory as the "Img Dir" and then I clicked "Finish". This is what came up:
I am assuming that this is not what should come up. Could you kindly let me know what I have done wrong and what I should do instead in order to be able to use PoCoTo correctly?
I should also note that in the lower-right-hand corner of the PoCoTo screen there was an error message, which, when I clicked on it, read as follows:
java.lang.NoClassDefFoundError: Could not initialize class com.jidesoft.swing.JideSwingUtilities
at com.jidesoft.plaf.basic.BasicStyledLabelUI.paintStyledText(Unknown Source)
at com.jidesoft.plaf.basic.BasicStyledLabelUI.paintEnabledText(Unknown Source)
at javax.swing.plaf.basic.BasicLabelUI.paint(BasicLabelUI.java:197)
at javax.swing.plaf.ComponentUI.update(ComponentUI.java:161)
at javax.swing.JComponent.paintComponent(JComponent.java:780)
at javax.swing.JComponent.paint(JComponent.java:1056)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at org.jdesktop.jxlayer.JXLayer.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JViewport.paint(JViewport.java:728)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at org.netbeans.swing.tabcontrol.TabbedContainer.paint(TabbedContainer.java:994)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:586)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at org.netbeans.core.windows.view.ui.MainWindow$1.paint(MainWindow.java:189)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:586)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5217)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579)
at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502)
at javax.swing.RepaintManager.paint(RepaintManager.java:1272)
at javax.swing.JComponent.paint(JComponent.java:1042)
at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:39)
at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:79)
at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:116)
at java.awt.Container.paint(Container.java:1976)
at java.awt.Window.paint(Window.java:3906)
at javax.swing.RepaintManager$4.run(RepaintManager.java:842)
at javax.swing.RepaintManager$4.run(RepaintManager.java:814)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789)
at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738)
at javax.swing.RepaintManager.access$1200(RepaintManager.java:64)
at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159)
[catch] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
I don't know if this error message is significant or not. In any case, as I said above, I am assuming that I have done something wrong. I would very much appreciate guidance as to what I should do differently in order to be able to use PoCoTo correctly?
Thank you for your time.