Hi Remi,
thank you for your reply.
I read the interesting article you linked, but, as a real newbie about
serialization, I have some difficulties to apply it to tesseract
settings.
In particular, what stream should I use for serializing OCR? Could be
the image itself, or what else?
Thank you very much for your support!
Best Regards
ZioZione

On 28 Apr, 21:45, Remi  Thomas <[email protected]> wrote:
> Search for "serilization" in this group.
>
> Remi
>
> On Apr 28, 2:58 pm, ZioZione <[email protected]> wrote:
>
> > Hi Remi,
> > I was afraid about such reply...
> > But what you intend when you talk about "invoke it from another
> > process"? Did you mean: "start a new thread in which you invoke
> > tesseract"? Did you think this could work? Did you have some working
> > samples? Thank you!
> > Best Regards
> > ZioZione
>
> > On 28 Apr, 14:31, Remi  Thomas <[email protected]> wrote:
>
> > > I see,
> > > If you have read the forum you now tesseract contains some memory
> > > leak.
> > > It's impossible to reset it correctly. The only solution I know is to
> > > exit the running process and restart it.
> > > With IIS it's impossible, the only soultion I see is to invoke it from
> > > another process.
> > > .NET can't unload a loaded DLL.
>
> > > Remi
>
> > > On Apr 28, 1:43 pm, ZioZione <[email protected]> wrote:
>
> > > > Hi Remi, thank for your quick reply!
> > > > Yes, tessDataPath is the same folder both for Release and Debug.
> > > > My Web Application is structured as follows
>
> > > > \bin --> contains tessnet2.dll
> > > > \obj --> contains Debug and Release folders
> > > > \Web --> contains application pages
> > > > \Web\Home\frm_HOM.aspx --> main page
> > > > \Web\Home\frm_HOM.aspc.cs --> main page codebehind
> > > > \Web\Images --> contains all images to be OCRed
> > > > \Web\tessdata --> contains "eng" and "ita" languages tessdata folders
>
> > > > I tested also your latest dll, but, unfortunately, the behavior is the
> > > > same. I will go more in details.
> > > > Lets call "RunDebug" when you select from VS2005 the menu item Debug |
> > > > Start Debugging, and "RunWODebug" when you select Debug | Start
> > > > Without Debugging. After every run, I close .NET Development Server
> > > > (WebDev.WebServer.exe) for reset all sessions. Here are all results:
>
> > > > Debug, RunDebug --> OK
> > > > Debug, RunWODebug --> error
> > > > Release, RunDebug (makes no sense for me, but...) --> OK
> > > > Release, RunWODebug --> error
>
> > > > Also, if I RunNoDebug after a RunDebug without resetting Development
> > > > Server, it works correctly. If I RunDebug without set breakpoints, it
> > > > works correctly.
>
> > > > Hope this helps for pointing out what could have been happened to the
> > > > dll.
> > > > Please let me know if I have to try some other things. Thank you!
> > > > Best Regards
> > > > ZioZione
>
> > > > On 28 Apr, 11:56, Remi  Thomas <[email protected]> wrote:
>
> > > > > Hi,
>
> > > > > Is tessDataPath is the same in release and debug mode?
> > > > > I did change a compilation option in tessnet2.dll, please try with the
> > > > > new one.http://www.pixel-technology.com/freeware/tessnet2/bin.zip
>
> > > > > Remi
>
> > > > > On Apr 28, 9:09 am, ZioZione <[email protected]> wrote:
>
> > > > > > Hi everybody,
> > > > > > I am writing a C# Web Application that must perform OCR over various
> > > > > > TIFF files. I am using the latest tessnet2 release (april 21, 2009).
> > > > > > Here is the codebehind of my page:
>
> > > > > >         tessnet2.Tesseract ocr = null;
> > > > > >         string tessImgPath = "";
> > > > > >         string tessDataPath = "";
>
> > > > > >         protected void Page_Load(object sender, EventArgs e)
> > > > > >         {
> > > > > >             InitialiseData();
>
> > > > > >             tessImgPath = Server.MapPath("../Images/P0028594.tif");
> > > > > >             Bitmap image = new Bitmap(tessImgPath);
>
> > > > > >             List<tessnet2.Word> m_words;
> > > > > >             m_words = ocr.DoOCR(image, Rectangle.Empty);
>
> > > > > >             if (m_words != null)
> > > > > >             {
> > > > > >                 int lc = tessnet2.Tesseract.LineCount(m_words);
> > > > > >                 for (int i = 0; i < lc; i++)
> > > > > >                 {
> > > > > >                     Response.Write(tessnet2.Tesseract.GetLineText
> > > > > > (m_words, i) + "<br>");
> > > > > >                 }
> > > > > >             }
> > > > > >         }
>
> > > > > >         void InitialiseData()
> > > > > >         {
> > > > > >             ocr = new tessnet2.Tesseract();
> > > > > >             tessDataPath = Server.MapPath("../tessdata");
> > > > > >             ocr.SetRootPath(tessDataPath, "ita");
> > > > > >             ocr.Init("ita", false);
> > > > > >         }
>
> > > > > > I have the following problem: if the application is running in Debug
> > > > > > mode, it works correctly, while running in Release mode (or also 
> > > > > > Start
> > > > > > Without Debugging), the row
>
> > > > > > ocr.Init("ita", false);
>
> > > > > > causes following error:
>
> > > > > > Attempted to read or write protected memory. This is often an
> > > > > > indication that other memory is corrupt.
>
> > > > > > Here is the Stack Trace:
>
> > > > > > [AccessViolationException: Attempted to read or write protected
> > > > > > memory. This is often an indication that other memory is corrupt.]
> > > > > >    fgets(SByte* , Int32 , _iobuf* ) +0
> > > > > >    read_word_list(SByte* filename, UInt64* dawg, Int32 
> > > > > > max_num_edges,
> > > > > > Int32 reserved_edges) +562
> > > > > >    init_permute() +543
> > > > > >    program_editup(SByte* configfile) +335
> > > > > >    tessnet2.Tesseract.Init(String lang, Boolean numericMode) +66
> > > > > >    SDG_MODI.Web.Home2.Home.InitialiseData() in C:\Produzione
> > > > > > \PROGETTI_NET\SDG_MODI\SDG_MODI\Web\Home2\frm_HOM2.aspx.cs:110
> > > > > >    SDG_MODI.Web.Home2.Home.Page_Load(Object sender, EventArgs e) in 
> > > > > > C:
> > > > > > \Produzione\PROGETTI_NET\SDG_MODI\SDG_MODI\Web\Home2\frm_HOM2.aspx.cs:
> > > > > > 28
> > > > > >    System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp,
> > > > > > Object o, Object t, EventArgs e) +15
> > > > > >    System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object
> > > > > > sender, EventArgs e) +33
> > > > > >    System.Web.UI.Control.OnLoad(EventArgs e) +99
> > > > > >    System.Web.UI.Control.LoadRecursive() +47
> > > > > >    System.Web.UI.Page.ProcessRequestMain(Boolean
> > > > > > includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
> > > > > > +1436
>
> > > > > > What I have to do for avoid this error?
> > > > > > Another question: I need also to show the TIFF image into the Web
> > > > > > page. Actually it seems not possible, so I think I need some code to
> > > > > > perform a conversion between TIFF and, i.e., JPG. Can someone point 
> > > > > > me
> > > > > > out to some useful code? Thank you!
> > > > > > Best Regards
> > > > > > ZioZione- Hide quoted text -
>
> > - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"tesseract-ocr" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/tesseract-ocr?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to