[Image-SIG] clarification on image segmentation routines

Bob Klimek klimek@grc.nasa.gov
Fri, 07 Mar 2003 16:52:30 -0500


--=====================_561747==_
Content-Type: text/plain; charset="us-ascii"; format=flowed

At 12:50 PM 3/7/2003 -0500, you wrote:
>Hello,
>
>I have just started getting into PIL as a platform for experimenting with OCR
>for a language known as Tamil (a South Indian language).
>It appears that PIL does not have any explicit image segmentation (character
>segmentation) routines. Before I venture into creating my own set of tools
>(as an extension of PIL), could you please let me know if such tools (or any
>form of OCR SDK) already exist for Python?
>If I'm not mistaken, I could not find morphological filters
>(errosion/dialation) in PIL either. But then again, these can be easily
>constructed using the kernel-based filtering routine in PIL.

I've written a few morphological functions using PIL. I've attached a 
zipped file containing the image-processing functions I use. Towards the 
bottom you'll find the morphological ones. If you don't use wxPython, just 
comment out the "wx" related stuff.

Bob
--=====================_561747==_
Content-Type: application/zip; name="process.zip";
 x-mac-type="705A4950"; x-mac-creator="705A4950"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="process.zip"

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
AAEAWQAAAMwiAAAAAA==
--=====================_561747==_
Content-Type: text/plain; charset="us-ascii"; format=flowed


--=====================_561747==_--