การรู้จําตัวอักษรด้วยแสง (OCR)

เสร็จสมบูรณ์เมื่อ

หมายเหตุ

ดูแท็บ ข้อความและรูปภาพ สําหรับรายละเอียดเพิ่มเติม!

การรู้จําอักขระด้วยแสง (OCR) เป็นเทคโนโลยีที่แปลงข้อความภาพในรูปภาพโดยอัตโนมัติ ไม่ว่าจะจากเอกสารที่สแกน ภาพถ่าย หรือไฟล์ดิจิทัล ให้เป็นข้อมูลข้อความที่แก้ไขและค้นหาได้ แทนที่จะถอดเสียงข้อมูลด้วยตนเอง OCR ช่วยให้สามารถดึงข้อมูลอัตโนมัติจาก:

  • ใบแจ้งหนี้และใบเสร็จรับเงินที่สแกน
  • ภาพถ่ายดิจิทัลของเอกสาร
  • ไฟล์ PDF ที่มีรูปภาพของข้อความ
  • ภาพหน้าจอและเนื้อหาที่บันทึกไว้
  • แบบฟอร์มและบันทึกย่อที่เขียนด้วยลายมือ

ไปป์ไลน์ OCR: กระบวนการทีละขั้นตอน

ไปป์ไลน์ OCR ประกอบด้วยห้าขั้นตอนสําคัญที่ทํางานร่วมกันเพื่อแปลงข้อมูลภาพเป็นข้อมูลข้อความ

ไดอะแกรมของไปป์ไลน์ OCR

ขั้นตอนในกระบวนการ OCR คือ:

  1. การรับภาพและการป้อนข้อมูล
  2. การประมวลผลล่วงหน้าและการปรับปรุงภาพ
  3. การตรวจจับขอบเขตข้อความ
  4. การจดจําอักขระและการจําแนกประเภท
  5. การสร้างผลลัพธ์และการประมวลผลภายหลัง

ลองตรวจสอบแต่ละขั้นตอนในเชิงลึกมากขึ้น

ขั้นตอนที่ 1: การรับและการป้อนภาพ

ไปป์ไลน์เริ่มต้นเมื่อรูปภาพที่มีข้อความเข้าสู่ระบบ นี่อาจเป็น:

  • ภาพถ่ายที่ถ่ายด้วยกล้องสมาร์ทโฟน
  • เอกสารที่สแกนจากเครื่องสแกนเอกสารแบบแท่นหรือเอกสาร
  • เฟรมที่แยกจากสตรีมวิดีโอ
  • หน้า PDF ที่แสดงเป็นรูปภาพ

เคล็ดลับ

คุณภาพของภาพในขั้นตอนนี้ส่งผลกระทบอย่างมากต่อความแม่นยําขั้นสุดท้ายของการแยกข้อความ

ขั้นตอนที่ 2: การประมวลผลล่วงหน้าและการปรับปรุงภาพ

ก่อนเริ่มการตรวจจับข้อความ จะใช้เทคนิคต่อไปนี้เพื่อเพิ่มประสิทธิภาพรูปภาพเพื่อความแม่นยําในการจดจําที่ดีขึ้น:

  • การลดสัญญาณรบกวนจะขจัดสิ่งประดิษฐ์ทางภาพ จุดฝุ่น และความไม่สมบูรณ์ของการสแกนที่อาจรบกวนการตรวจจับข้อความ เทคนิคเฉพาะที่ใช้ในการลดสัญญาณรบกวน ได้แก่:

    • อัลกอริธึมการกรองและการประมวลผลภาพ: ฟิลเตอร์เกาส์เซียน ฟิลเตอร์มัธยฐาน และการดําเนินการทางสัณฐานวิทยา
    • โมเดลแมชชีนเลิร์นนิง: การลดเสียงรบกวนของตัวเข้ารหัสอัตโนมัติและโครงข่ายประสาทเทียมแบบบิดเบี้ยว (CNN) ที่ได้รับการฝึกอบรมโดยเฉพาะสําหรับการล้างข้อมูลรูปภาพเอกสาร
  • การปรับความคมชัด ช่วยเพิ่มความแตกต่างระหว่างข้อความและพื้นหลังเพื่อทําให้อักขระมีความชัดเจนมากขึ้น อีกครั้งมีหลายวิธีที่เป็นไปได้:

    • วิธีการแบบคลาสสิก: การปรับสมดุลฮิสโตแกรม เกณฑ์การปรับตัว และการแก้ไขแกมมา
    • แมชชีนเลิร์นนิง: โมเดลการเรียนรู้เชิงลึกที่เรียนรู้พารามิเตอร์การเพิ่มประสิทธิภาพที่เหมาะสมที่สุดสําหรับเอกสารประเภทต่างๆ
  • การแก้ไขความเอียง จะตรวจจับและแก้ไขการหมุนเอกสาร เพื่อให้มั่นใจว่าบรรทัดข้อความอยู่ในแนวนอนอย่างเหมาะสม เทคนิคการแก้ไขความเอียง ได้แก่ :

    • เทคนิคทางคณิตศาสตร์: การแปลง Hough สําหรับการตรวจจับเส้น โปรไฟล์การฉายภาพ และการวิเคราะห์ส่วนประกอบที่เชื่อมต่อ
    • แบบจําลองโครงข่ายประสาทเทียม: CNN การถดถอยที่คาดการณ์มุมการหมุนโดยตรงจากคุณสมบัติของภาพ
  • การเพิ่มประสิทธิภาพความละเอียด จะปรับความละเอียดของภาพให้อยู่ในระดับที่เหมาะสมที่สุดสําหรับอัลกอริธึมการจดจําอักขระ คุณสามารถปรับความละเอียดของภาพให้เหมาะสมได้ด้วย:

    • วิธีการแก้ไข: อัลกอริธึมการสุ่มตัวอย่างแบบ Bicubic, bilinear และ Lanczos
    • โมเดลความละเอียดสูง: เครือข่ายปฏิปักษ์เชิงกําเนิด (GAN) และเครือข่ายที่เหลือที่ยกระดับรูปภาพข้อความความละเอียดต่ําอย่างชาญฉลาด

ขั้นตอนที่ 3: การตรวจหาขอบเขตข้อความ

ระบบจะวิเคราะห์รูปภาพที่ประมวลผลล่วงหน้าเพื่อระบุพื้นที่ที่มีข้อความโดยใช้เทคนิคต่อไปนี้:

  • การวิเคราะห์เค้าโครง จะแยกความแตกต่างระหว่างขอบเขตข้อความ รูปภาพ กราฟิก และพื้นที่สีขาว เทคนิคในการวิเคราะห์เค้าโครง ได้แก่ :

    • วิธีการแบบดั้งเดิม: การวิเคราะห์ส่วนประกอบที่เชื่อมต่อ การเข้ารหัสความยาวรัน และการแบ่งส่วนตามการฉายภาพ
    • โมเดลการเรียนรู้เชิงลึก: เครือข่ายการแบ่งส่วนเชิงความหมาย เช่น U-Net, Mask R-CNN และโมเดลการวิเคราะห์เค้าโครงเอกสารเฉพาะทาง (เช่น LayoutLM หรือโมเดลที่ผ่านการฝึกอบรม PubLayNet)
  • การระบุบล็อกข้อความจะจัดกลุ่มอักขระแต่ละตัวเป็นคํา บรรทัด และย่อหน้าตามความสัมพันธ์เชิงพื้นที่ แนวทางทั่วไป ได้แก่ :

    • วิธีการแบบคลาสสิก: การจัดกลุ่มตามระยะทาง การวิเคราะห์พื้นที่สีขาว และการดําเนินการทางสัณฐานวิทยา
    • โครงข่ายประสาทเทียม: โครงข่ายประสาทเทียมกราฟและแบบจําลองหม้อแปลงที่เข้าใจโครงสร้างเอกสารเชิงพื้นที่
  • การกําหนดลําดับการอ่าน จะกําหนดลําดับที่ควรอ่านข้อความ (จากซ้ายไปขวา จากบนลงล่างสําหรับภาษาอังกฤษ) ลําดับที่ถูกต้องสามารถกําหนดได้โดย:

    • ระบบตามกฎ: อัลกอริทึมทางเรขาคณิตโดยใช้พิกัดกล่องขอบเขตและฮิวริสติกเชิงพื้นที่
    • โมเดลแมชชีนเลิร์นนิง: โมเดลการคาดการณ์ลําดับและแนวทางตามกราฟที่เรียนรู้รูปแบบการอ่านจากข้อมูลการฝึกอบรม
  • การจําแนกขอบเขตจะระบุขอบเขตข้อความประเภทต่างๆ (ส่วนหัว ข้อความเนื้อหา คําอธิบายภาพ ตาราง)

    • ตัวแยกประเภทตามคุณลักษณะ: รองรับเครื่องเวกเตอร์ (SVM) โดยใช้คุณสมบัติที่สร้างขึ้นด้วยมือ เช่น ขนาดตัวอักษร ตําแหน่ง และการจัดรูปแบบ
    • โมเดลการเรียนรู้เชิงลึก: โครงข่ายประสาทเทียมแบบ Convolutional และตัวแปลงวิชันที่ได้รับการฝึกฝนเกี่ยวกับชุดข้อมูลเอกสารที่มีป้ายกํากับ

ขั้นตอนที่ 4: การจดจําอักขระและการจําแนกประเภท

นี่คือหัวใจสําคัญของกระบวนการ OCR ที่มีการระบุอักขระแต่ละตัว:

  • การแยกคุณสมบัติ: วิเคราะห์รูปร่าง ขนาด และลักษณะเฉพาะของอักขระหรือสัญลักษณ์แต่ละตัว

    • วิธีการแบบดั้งเดิม: คุณลักษณะทางสถิติ เช่น ช่วงเวลา ตัวอธิบายฟูริเยร์ และคุณลักษณะโครงสร้าง (ลูป จุดสิ้นสุด จุดตัด)
    • แนวทางการเรียนรู้เชิงลึก: โครงข่ายประสาทเทียมแบบ Convolutional ที่เรียนรู้คุณลักษณะการเลือกปฏิบัติโดยอัตโนมัติจากข้อมูลพิกเซลดิบ
  • การจับคู่รูปแบบ: เปรียบเทียบคุณลักษณะที่แยกออกมากับโมเดลที่ผ่านการฝึกอบรมซึ่งจดจําแบบอักษร ขนาด และสไตล์การเขียนที่แตกต่างกัน

    • การจับคู่เทมเพลต: การเปรียบเทียบโดยตรงกับเทมเพลตอักขระที่เก็บไว้โดยใช้เทคนิคความสัมพันธ์
    • ตัวแยกประเภททางสถิติ: Hidden Markov Models (HMMs), Support Vector Machines และ k-nearest neighbors โดยใช้เวกเตอร์คุณลักษณะ
    • โครงข่ายประสาทเทียม: เพอร์เซปตรอนหลายชั้น CNN และสถาปัตยกรรมพิเศษ เช่น LeNet สําหรับการจดจําตัวเลข
    • การเรียนรู้เชิงลึกขั้นสูง: สถาปัตยกรรมเครือข่ายที่เหลือ (ResNet), DenseNet และ EfficientNet เพื่อการจําแนกอักขระที่มีประสิทธิภาพ
  • การวิเคราะห์บริบท: ใช้อักขระและคําโดยรอบเพื่อปรับปรุงความแม่นยําในการจดจําผ่านการค้นหาพจนานุกรมและแบบจําลองภาษา

    • แบบจําลอง N-gram: แบบจําลองภาษาทางสถิติที่ทํานายลําดับอักขระตามการแจกแจงความน่าจะเป็น
    • การแก้ไขตามพจนานุกรม: การค้นหาพจนานุกรมด้วยอัลกอริธึมระยะการแก้ไข (เช่น ระยะทาง Levenshtein) สําหรับการแก้ไขการสะกด
    • โมเดลภาษาประสาท: LSTM และโมเดลที่ใช้หม้อแปลง (เช่น ตัวแปร BERT) ที่เข้าใจความสัมพันธ์ตามบริบท
    • กลไกความสนใจ: โมเดลหม้อแปลงที่มุ่งเน้นไปที่ส่วนที่เกี่ยวข้องของอินพุตเมื่อทําการคาดการณ์อักขระ
  • การให้คะแนนความเชื่อมั่น: กําหนดคะแนนความน่าจะเป็นให้กับอักขระที่รู้จักแต่ละตัวโดยพิจารณาจากความแน่นอนของระบบเกี่ยวกับการระบุตัวตน

    • แนวทางเบย์เซียน: แบบจําลองความน่าจะเป็นที่วัดความไม่แน่นอนในการคาดการณ์อักขระ
    • เอาต์พุต Softmax: การเปิดใช้งานเลเยอร์สุดท้ายของโครงข่ายประสาทเทียมที่แปลงเป็นการแจกแจงความน่าจะเป็น
    • วิธีการรวม: การรวมการคาดการณ์จากหลายแบบจําลองเพื่อปรับปรุงการประมาณความเชื่อมั่น

ขั้นตอนที่ 5: การสร้างผลลัพธ์และการประมวลผลภายหลัง

ขั้นตอนสุดท้ายจะแปลงผลการจดจําเป็นข้อมูลข้อความที่ใช้งานได้:

  • การรวบรวมข้อความ: รวบรวมการจดจําอักขระแต่ละตัวเป็นคําและประโยคที่สมบูรณ์

    • การประกอบตามกฎ: อัลกอริทึมที่กําหนดซึ่งรวมการคาดการณ์อักขระโดยใช้ความใกล้ชิดเชิงพื้นที่และเกณฑ์ความเชื่อมั่น
    • แบบจําลองลําดับ: เครือข่ายโครงข่ายประสาทเทียมที่เกิดซ้ํา (RNN) และเครือข่ายหน่วยความจํา Short-Term ยาว (LSTM) ที่สร้างแบบจําลองข้อความเป็นข้อมูลตามลําดับ
    • โมเดลตามความสนใจ: สถาปัตยกรรมหม้อแปลงที่สามารถจัดการลําดับความยาวตัวแปรและเค้าโครงข้อความที่ซับซ้อน
  • การรักษารูปแบบ: รักษาโครงสร้างเอกสาร รวมถึงย่อหน้า ตัวแบ่งบรรทัด และระยะห่าง

    • อัลกอริทึมทางเรขาคณิต: ระบบตามกฎโดยใช้พิกัดกล่องขอบเขตและการวิเคราะห์พื้นที่สีขาว
    • โมเดลการทําความเข้าใจเค้าโครง: กราฟโครงข่ายประสาทเทียมและจัดทําเอกสารโมเดล AI ที่เรียนรู้ความสัมพันธ์เชิงโครงสร้าง
    • หม้อแปลงหลายรูปแบบ: โมเดลเช่น LayoutLM ที่รวมข้อความและข้อมูลเค้าโครงเพื่อการรักษาโครงสร้าง
  • การแมปพิกัด: บันทึกตําแหน่งที่แน่นอนของแต่ละองค์ประกอบข้อความภายในรูปภาพต้นฉบับ

    • การแปลงพิกัด: การทําแผนที่ทางคณิตศาสตร์ระหว่างพิกเซลรูปภาพและพิกัดเอกสาร
    • การจัดทําดัชนีเชิงพื้นที่: โครงสร้างข้อมูล เช่น R-trees และ quad-trees สําหรับการสืบค้นเชิงพื้นที่ที่มีประสิทธิภาพ
    • แบบจําลองการถดถอย: โครงข่ายประสาทเทียมที่ได้รับการฝึกฝนให้ทํานายพิกัดการวางตําแหน่งข้อความที่แม่นยํา
  • การตรวจสอบคุณภาพ: ใช้การตรวจสอบการสะกดและไวยากรณ์เพื่อระบุข้อผิดพลาดในการจดจําที่อาจเกิดขึ้น

    • การตรวจสอบความถูกต้องตามพจนานุกรม: ค้นหารายการคําศัพท์ที่ครอบคลุมและคําศัพท์โดเมนเฉพาะ
    • แบบจําลองภาษาทางสถิติ: แบบจําลอง N-gram และตัวแยกวิเคราะห์ความน่าจะเป็นสําหรับการตรวจสอบไวยากรณ์และบริบท
    • โมเดลภาษาประสาท: โมเดลที่ได้รับการฝึกอบรมล่วงหน้า เช่น GPT หรือ BERT ได้รับการปรับแต่งอย่างละเอียดสําหรับการตรวจจับและแก้ไขข้อผิดพลาด OCR
    • การตรวจสอบความถูกต้องของกลุ่ม: การรวมแนวทางการตรวจสอบความถูกต้องที่หลากหลายเพื่อปรับปรุงความแม่นยําในการตรวจจับข้อผิดพลาด