ÀÖÓãµç¾º

½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

pytesseractʶ±ðÑéÖ¤Âë½Ì³Ì¡¾pytesseractºÍPIL¿â½éÉÜ¡¿

¸üÐÂʱ¼ä:2021Äê06ÔÂ25ÈÕ18ʱ27·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

ºÃ¿Ú±®ITÅàѵ

TesseraetÊÇÒ»¸öÃüÁîÐй¤¾ß£¬°²×°ºóÖ»ÄÜͨ¹ýtsseraetÃüÁîÔÚPythonµÄÍⲿÔËÐУ¬¶ø²»ÄÜͨ¹ýimportÓï¾äÒýÈËʹÓá£ÎªÁ˽â¾öÉÏÊöÎÊÌ⣬Python ÌṩÁËÖ§³ÖTssraec-OCRÒýÇæµÄPython°æ±¾µÄ¿âpytesseract¡£

°²×°pytesseractÐèÒª×ñÊØÈçÏÂÒªÇó£º

(1)PythonµÄ°æ±¾±ØÐëÊÇpython 2.5+»òpython 3.x¡£

(2)°²×°PythonµÄͼÏñ´¦Àí¿âPIL(»òPillow )¡£

(3)°²×°¹È¸èµÄOCRʶ±ðÒýÇæTesseract-0CR¡£

ÏÂÃæ½«Õë¶ÔPILºÍpytesseractµÄÏà¹ØÄÚÈݽøÐн²½â¡£

pytesseract¿â¸ÅÊö

pytesseractÊÇÒ»¿îÓÃÓÚ¹âѧ×Ö·ûʶ±ð(OCR)µÄPython¹¤¾ß£¬¼´´ÓͼƬÖÐʶ±ðºÍ¶ÁÈ¡ÆäÖÐǶÈ˵ÄÎÄ×Ö¡£ptesseractÊǶÔTesseraet-OCRµÄÒ»²ã·â×°£¬Í¬Ê±Ò²¿ÉÒÔµ¥¶À×÷ΪTesseractÒýÇæµÄµ÷Óýű¾£¬Ö§³ÖʹÓÃPIL¿â(Python Imaging Library)¶ÁÈ¡¸÷ÖÖͼƬÎļþÀàÐÍ£¬°üÀ¨jpeg¡¢png¡¢gif¡¢bmp¡¢tiff µÈ¸ñʽ¡£×÷Ϊ½Å±¾Ê¹ÓÃʱ£¬pytesseract½«´òӡʶ±ð³öµÄÎÄ×Ö£¬¶ø²»Êǽ«ÆäдÈëÎļþ¡£

ÔÚpytesseract¿âÖУ¬ÌṩÁËÈçϺ¯Êý½«Í¼Ïñת»»³É×Ö·û´®£º

image_to_string(image, lang=None, boxes=False, config=None)

ÉÏÊöº¯ÊýÓÃÓÚÔÚÖ¸¶¨µÄͼÏñÉÏÔËÐÐtesseract£¬Ê×ÏȽ«Í¼ÏñдÈ˵½´ÅÅÌ£¬È»ºóÔÚͼÏñÉÏÔËÐÐtesseractÃüÁî½øÐÐʶ±ð¶ÁÈ¡£¬×îºóɾ³ýÁÙʱµÄÎļþ¡£ÆäÖУ¬image±íʾͼÏñ£¬lang±íʾÓïÑÔ£¬Ä¬ÈÏʹÓÃÓ¢ÎÄ¡£Èç¹ûboxesÉèΪTrue£¬ÄÇôbatch.nochop makeboxÃüÁî±»Ìí¼Óµ½tesseractµ÷ÓÃÖÐ;Èç¹ûÉèÖÃÁËconfig£¬ÔòÅäÖûáÌí¼Óµ½ÃüÁîÖУ¬ÀýÈçconfig = - psm 6¡£


PIL¿â¸ÅÊö

ͼÏñ´¦ÀíÊÇÒ»ÃÅÓ¦Ó÷dz£¹ã·ºµÄ¼¼Êõ£¬ÓµÓзḻµÚÈý·½´òÀ©Õ¹¿âµÄPythonÓïÑÔÒ²¾ßÓдËÏÄÜ¡£ÆäÖУ¬PIL(Python Imaging Library )ÊÇPython×î³£ÓõÄͼÏñ´¦Àí¿â£¬Ëü²»½öÌṩÁ˹㷺µÄÎļþ¸ñʽ֧³Ö£¬¶øÇÒ¾ßÓÐÇ¿´óµÄͼÏñ´¦Àí¹¦ÄÜ¡£

PIL¿âÖÐÒ»¸ö·Ç³£ÖØÒªµÄÀàÊÇImageÀ࣬¸ÃÀඨÒåÔÚÓëËüͬÃûµÄÄ£¿éÖС£´´½¨ImageÀà¶ÔÏóµÄ·½·¨ÓкܶàÖÖ£¬°üÀ¨´ÓÎļþÖжÁÈ¡µÃµ½£¬»ò´ÓÆäËûͼÏñ¾­¹ý´¦ÀíµÃµ½£¬»òÕß´´½¨È«ÐµÄ¡£ÏÂÃæ¶ÔPIL¿âµÄһЩ³£Óú¯ÊýºÍ·½·¨½øÐмòµ¥½éÉÜ¡£

1.new()º¯Êý

new()º¯ÊýµÄ¶¨Òå¸ñʽÈçÏ£º

Image.new(mode, size, color=0)

ÉÏÊöº¯ÊýÓÃÓÚ´´½¨Ò»¸öÐÂͼÏñ¡£ÆäÖУ¬mode±íʾģʽ£¬size±íʾ´óС¡£µ±´´½¨µ¥Í¨µÀͼÏñʱ£¬colorÊǵ¥¸öÖµ£»µ±´´½¨¶àͨµÀͼÏñʱ£¬colorÊÇÒ»¸öÔª×é¡£ÈôÊ¡ÂÔÁËcolor²ÎÊý£¬ÔòͼÏñ±»Ìî³ä³ÉÈ«ºÚ£»Èôcolor²ÎÊýµÄֵΪNone£¬ÔòͼÏñ²»±»³õʼ»¯¡£

2. open()º¯Êý

open()º¯ÊýµÄ¶¨Òå¸ñʽÈçÏ£º

 open(fp, mode="r")


ÉÏÊöº¯Êý¿ÉÒÔ´ò¿ª²¢Ê¶±ð¸ø¶¨µÄͼÏñÎļþ¡£ÆäÖУ¬fp±íʾ×Ö·û´®ÐÎʽµÄÎļþÃû³Æ£¬mode²ÎÊý¿ÉÒÔÊ¡ÂÔ£¬µ«Ö»ÄÜÉèÖÃΪ“r”¡£Èç¹ûÔØÈËÎļþʧ°Ü£¬Ôò»áÒýÆðÒ»¸öIOErrorÒì³££¬·ñÔò·µ»ØÒ»¸öImageÀà¶ÔÏó¡£

ʵ¼ÊÉÏ£¬ÉÏÊöº¯Êý»á±»ÑÓ³Ù²Ù×÷£¬Êµ¼ÊµÄͼÏñÊý¾Ý²¢²»»áÂíÉÏ´ÓÎļþÖжÁÈ¡£¬¶øÊǵȵ½ÐèÒª´¦ÀíÕâЩÊý¾Ýʱ²Å±»¶ÁÈ¡¡£Õâʱ£¬¿ÉÒÔµ÷ÓÃload0º¯Êý½øÐÐÇ¿ÖÆ¼ÓÔØ¡£

´´½¨Í¼Ïñ¶ÔÏóºó£¬¿ÉÒÔͨ¹ýImageÀàÌṩµÄ·½·¨´¦ÀíÕâЩͼÏñ¡£ÎªÁËÈôó¼Ò¸üºÃµØÀí½â£¬ÏÂÃæÒÔ³£ÓõÄÁ½¸ö·½·¨(save()ºÍpoint()·½·¨)½øÐÐ˵Ã÷¡£

(1) save()·½·¨£¬ÆäÓï·¨¸ñʽÈçÏ£º

save(self, fp, format=None, **params)

ÉÏÊö·½·¨½«ÒÔÌØ¶¨µÄͼƬ¸ñʽ±£´æÍ¼Æ¬¡£´ó¶àÊýÇé¿öÏ£¬¿ÉÒÔÊ¡ÂÔͼƬµÄ¸ñʽ¡£Õâʱ£¬¸Ã·½·¨»á¸ù¾ÝÎļþµÄÀ©Õ¹ÃûÀ´Ñ¡ÔñÏàÓ¦µÄͼƬ¸ñʽ¡£¾ßÌåʾÀý´úÂëÈçÏ£º

image.save("test.jpg",'JPG")

»òÕߣº

save("test.jpg")


(2) point()·½·¨£º¿ÉÒÔ¶ÔͼÏñµÄÏñËØÖµ½øÐб任¡£ÆäÓï·¨¸ñʽÈçÏ£º

point(self, lut, mode=None)

ÔÚ´ó¶àÊý³¡ºÏÖУ¬¿ÉÒÔʹÓú¯Êý(´øÒ»¸ö²ÎÊý)×÷Ϊ²ÎÊý´«µÝ¸øpoint()·½·¨£¬Í¼ÏñµÄÿ¸öÏñËØ¶¼»áʹÓÃÕâ¸öº¯Êý½øÐб任¡£Ê¾Àý´úÂëÈçÏ£º

# ÿ¸öÏñËØ³ËÒÔ1.2
out=im.point(lambda i: i *1.2)

ÐèҪעÒâµÄÊÇ£¬Èç¹ûͼÏñµÄģʽΪ“I”(ÕûÊý)»ò“F”(¸¡µãÊý)£¬Ôò±ØÐëʹÓú¯Êý£¬ÇÒ±ØÐë¾ßÓÐÒÔϸñʽ£º

argument (²ÎÊý) *scale (±¶ÂÊ) +offset(Æ«ÒÆÁ¿)

ÀýÈ磬ӳÉ両µãͼÏñµÄʾÀýÈçÏ£º

out=im.point(lambda i:i*1.2+10)

0 ·ÖÏíµ½£º
ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿