You are currently viewing การสกัดข้อความจากภาพโดยใช้คำสั่ง Python

การสกัดข้อความจากภาพโดยใช้คำสั่ง Python


จากที่ผู้เขียนได้มีโอกาสเข้าอบรมหลักสูตร Machine Learning using Python ระหว่างวันที่ 12 – 14 มิถุนายน 2566 ที่ผ่านมา ซึ่งหลักสูตรดังกล่าว จัดโดย 9EXPERT COMPANY LIMITED โดยการอบรมครั้งนี้ได้รับการสนับสนุนจากทุนพัฒนาบุคลากรเพื่อการศึกษาทางไกล ประจำปีงบประมาณ 2566 โดยสรุปสาระสำคัญที่ได้จากการอบรมดังนี้

            การรับรู้อักษรแบบเชิงตรรกะ (Optical Character Recognition, OCR) เป็นเทคนิคที่นิยมในการแปลงข้อมูลที่อยู่ในรูปแบบภาพเป็นข้อความที่เครื่องจักรสามารถอ่านได้ ในบทความนี้ เราจะสำรวจวิธีการใช้ Google Colab และ PyTesseract เพื่อสกัดข้อความจากภาพ

ขั้นตอนที่ 1: การติดตั้งไลบรารีที่จำเป็น

ขั้นแรกคือติดตั้งไลบรารีที่จำเป็นใน Google Colab โดยใช้คำสั่ง !pip และ !apt-get เราจะติดตั้งไลบรารี pytesseract และ pillow

ภาพการติดตั้งไลบราลี่ที่จำเป็น

ขั้นตอนที่ 2: การอัปโหลดไฟล์ภาพ

Google Colab มีคำสั่งง่ายๆ ในการอัปโหลดไฟล์ คุณสามารถใช้โค้ดต่อไปนี้เพื่ออัปโหลดไฟล์ภาพที่คุณต้องการประมวลผล

โค๊ดสำหรับการอัพโหลดรูปเข้าโปรแกรม

จะมีกล่องข้อความปรากฏขึ้นเพื่อให้คุณเลือกไฟล์จากระบบไฟล์ท้องถิ่นของคุณ จากนั้นให้เลือกรูปภาพที่ต้องการจากในอุปกรณ์ของคุณ

ในบทความนี้จะขอยกตัวอย่างเป็นรูปภาพนี้

ตัวอย่างรูปภาพที่มีข้อความ

ขั้นตอนที่ 3: การสกัดข้อความจากภาพ

เมื่อไฟล์ถูกอัปโหลดแล้ว คุณสามารถใช้ไลบรารี PyTesseract เพื่อสกัดข้อความจากภาพ โดยสร้างฟังก์ชันที่รับชื่อไฟล์ภาพและส่งคืนข้อความที่สกัดได้

โค๊ดคำสั่งการสกัดตัวอักษรจากภาพ

ฟังก์ชัน Image.open จะเปิดไฟล์ภาพและ pytesseract.image_to_string จะสกัดข้อความจากภาพ

ในส่วนของ ‘your_image.png’ นั้นจะต้องถูกแทนที่ด้วยชื่อไฟล์ที่เราอัพโหลดเข้าไปในระบบ

ผลการรันโค๊ด

ขั้นตอนที่ 4: การตีความผลลัพธ์

ผลลัพธ์จากฟังก์ชัน extract_text_from_image คือข้อความที่สกัดออกมาจากภาพ คุณภาพของผลลัพธ์จะขึ้นอยู่กับคุณภาพและความชัดเจนของข้อความในภาพ หากข้อความมีความเบลอ ขนาดเล็ก หรือยากต่อการอ่าน OCR อาจไม่สามารถสกัดข้อความอย่างถูกต้องได้

การสกัดข้อความจากภาพเป็นกระบวนการที่มีประโยชน์ในการเข้าใจและวิเคราะห์ข้อมูลที่มีอยู่ในรูปแบบภาพ ด้วย Google Colab และ PyTesseract คุณสามารถสร้างระบบ OCR ที่เข้าถึงได้และง่ายต่อการใช้งาน ในการประยุกต์ใช้กระบวนการนี้ จำเป็นต้องมีความเข้าใจในภาพรวมของการทำงานของ OCR และการแปลงข้อมูลระหว่างรูปแบบต่างๆ

สุดท้ายนี้ผู้เขียนขอขอบพระคุณสถานพัฒนาบุคลากรเพื่อการศึกษาทางไกลมหาวิทยาลัยสุโขทัยธรรมาธิราชที่ได้ให้โอกาสผู้เขียนในการร่วมเข้าอบรมเพื่อพัฒนาความรู้ด้านเทคโนโลยี