thanks.
i did what you wrote. it works great now.
i had checked ScanBizCards. its great app.
its interesting that there is no stop or cancel method.
On Sunday, September 2, 2012 2:03:09 PM UTC+3, patrickq wrote:
>
> I think the crux of the problem is your attempt to stop the OCR thread at
> a random spot in its execution yet expect the state of the Tesseract
> instance to be consistent. You are right to want to delete the instance
> otherwise you would have a memory leak but it looks like you can't do that
> after stopping the OCR thread abnormally. In our own iPhone app
> (ScanBizCards) what we do in that case is to let the OCR thread finish its
> work in the background even though its results will be ignored and not
> shown to the user. The downside is mostly that if the user starts a new
> scan right after aborting one we delay the start of the new scan until the
> previous (aborted) scan finishes.
>
> On Monday, August 27, 2012 6:43:35 AM UTC-4, fulberto100 wrote:
>>
>> hi,
>> im using tesseract on my iPhone app.
>>
>> i want to stop/cancel the ocr process. is there a way to do it?
>> i wrote in backPressed method:
>> tesseract->Clear();
>> tesseract->End();
>>
>> but when the ocr starts and i hit the back button, it crashes, cos it is
>> still OCRing.
>>
>> here is my iOS code:
>>
>> - (void)processOcrAt:(UIImage *)image
>> {
>> [self setTesseractImage:image];
>>
>> //char* utf8Text = tesseract->GetUTF8Text();
>> //[self performSelector:@selector(ocrProcessingFinished:)
>> withObject:[NSString stringWithUTF8String:utf8Text]];
>> //dispatch_queue_t queue = dispatch_queue_create("com.awesome", 0);
>>
>> main = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
>> dispatch_async(main, ^{
>> tesseract->Recognize(NULL);
>> char* utf8Text = tesseract->GetUTF8Text();
>> [self performSelectorOnMainThread:@selector(ocrProcessingFinished:)
>> withObject:[NSString
>> stringWithUTF8String:utf8Text]
>> waitUntilDone:NO];
>> delete [] utf8Text;
>> });
>>
>>
>> }
>>
>> -(IBAction)backPressed:(id)sender{
>> dispatch_release(main);
>> tesseract->Clear();
>> //tesseract->End();
>>
>> delete tesseract;
>> tesseract = nil;
>> delete pixels;
>> [self.navigationController popViewControllerAnimated:YES];
>> }
>>
>>
--
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