Thạc Sĩ Các phương pháp tiền xử lý trong nhận dạng chữ Nôm trên thiết bị di động

Thảo luận trong 'THẠC SĨ - TIẾN SĨ' bắt đầu bởi Phí Lan Dương, 1/8/15.

  1. Phí Lan Dương

    Phí Lan Dương New Member
    Thành viên vàng

    Bài viết:
    18,524
    Được thích:
    18
    Điểm thành tích:
    0
    Xu:
    0Xu
    3

    LỜI CẢM ƠN
    Lời đầu tiên, em xin chân thành cám ơn các thầy cô giáo, các cán bộ của
    Trường Đại học Công Nghệ - Đại học Quốc Gia Hà Nội đã ân cần dạy dỗ, chỉ
    bảo và định hướng cho em trong suốt 3 năm học vừa qua, truyền đạt cho chúng
    em những kiến thức quý báu góp phần quan trọng để xây dựng và định hướng
    cho con đường sự nghiệp của mình.
    Em xin chân thành cám ơn PGS. TS Nguyễn Ngọc Bình, thầy đã giải
    thích và truyền cảm hứng cho chúng em, giúp chúng em hiểu được vai trò của
    CNTT trong bài toán bảo toàn chữ Nôm. Thầy cũng thường xuyên góp ý và
    tạo mọi điều kiện để em có thể hoàn thành được luận văn này. Em xin cám ơn
    thầy.
    Em xin chân thành cám ơn TS Lê Quang Minh, thầy đã dành nhiều thời
    gian chỉ dẫn, góp ý, giúp em định hướng phương pháp nghiên cứu và tạo mọi
    điều kiện tốt nhất để em có thể hoàn thành luận văn này. Em xin cám ơn thầy.
    Để hoàn thành luận văn này, sự giúp đỡ và định hướng, góp ý thường
    xuyên của các thành viên nhóm nghiên cứu LES – trường Đại học Công Nghệ
    đặc biệt là NCS Phạm Văn Hưởng đóng một vai trò vô cùng quan trọng. Em
    xin gửi lời cám ơn chân thành đến nhóm nghiên cứu.
    Cuối cùng em cũng xin gửi lời cám ơn đến gia đình và bạn bè em,
    những người đã luôn bên cạnh, động viên, và tạo mọi điều kiện tốt nhất cho
    em để có thể hoàn thành khóa học cũng như đề tài nghiên cứu.
    Tác giả
    Nguyễn Văn Bách
    4

    MỤC LỤC
    Chương 1. NHẬN DẠNG CHỮ NÔM . 6
    2.1. Nhận dạng ký tự quang học (OCR) . 6
    2.2. Bài toán nhận dạng chữ Nôm của nhóm LES-Nôm . 8
    2.3. Mô hình nhận dạng trên thiết bị di động 10
    Tổng kết chương 1 11
    Chương 2. TIỀN XỬ LÝ . 12
    2.1. Tính quan trọng của tiền xử lý . 12
    2.2. Mục tiêu của tiền xử lý trong bài toán nhận dạng 12
    2.3. Các kỹ thuật tiền xử lý trong OCR 12
    Tổng kết chương 2 23
    Chương 3. TIỀN XỬ LÝ CHỮ NÔM TRÊN DI ĐỘNG 24
    3.1. Mô hình nhận dạng trên di động 24
    3.2. Các phương pháp tiền xử lý áp dụng, đề xuất 25
    Tổng kết chương 3 35
    Chương 4. THỰC NGHIỆM, ĐÁNH GIÁ 36
    4.1. Xây dựng mô hình nhận dạng client-server 36
    4.2. Kết quả đạt được . 42
    4.3. Hướng cải tiến và nghiên cứu tiếp . 47
    Tổng kết chương 4 47
    KẾT LUẬN 48
    TÀI LIỆU THAM KHẢO 49
    5

    DANH MỤC BẢNG BIỂU
    Bảng 1 Các giá trị phương sai . 28
    Bảng 2 Kết quả thực nghiệm và đánh giá 46
    6

    DANH MỤC HÌNH VẼ
    Hình 1 Teseract OCR trên Android . 7
    Hình 2 Mô hình nhận dạng chữ Nôm 9
    Hình 3 Mô hình nhận dạng client-server . 10
    Hình 4 Bộ lọc trung bình . 16
    Hình 5 Bộ lọc không trung bình 17
    Hình 6 Lọc trung vị . 17
    Hình 7Ăn mòn . 20
    Hình 8 Giản nở 20
    Hình 9 Giản nở theo chiều ngang 20
    Hình 10 Mở 21
    Hình 11 Đóng 21
    Hình 12 Phác thảo trong 21
    Hình 13 Phác thảo ngoài 22
    Hình 14 Lấy khung xương . 22
    Hình 15 Các phương pháp lấy khung xương . 22
    Hình 16 Mô hình nhận dạng chữ Nôm trên di động 24
    Hình 17 Minh họa đầu vào của nhị phân hóa Otsu . 26
    Hình 18 Histogram nền . 26
    Hình 19 Histogram nội dung . 27
    Hình 20 Kết quả nhị phân hóa Otsu 28
    Hình 21 Chụp nghiêng . 29
    Hình 22 Chụp lệch . 29
    Hình 23 Xác định các điểm trái . 30
    Hình 24 Loại bỏ điểm dưới . 31
    Hình 25 Loại bỏ điểm lùi . 31
    Hình 26 Xác định góc nghiêng 32
    Hình 27 Minh họa thuật toán xác định góc nghiêng . 33
    Hình 28 Ảnh gốc với minh họa hàng cột . 34
    Hình 29 Chiếu histogram theo chiều ngang 34
    Hình 30 Chiếu histogram theo chiều dọc 34
    Hình 31 Các bước tiến hành thực nghiệm . 36
    Hình 32 Thông tin dịch vụ (service) nhận dạng của server . 37
    Hình 33 Thiết kế kiến trúc của chương trình client . 38
    Hình 34 Ảnh minh họa chụp và chọn chữ . 39
    Hình 35 Kết quả nhị phân hóa . 39
    Hình 36 Hiển thị nút nhận dạng 40
    Hình 37 Hiển thị kết quả nhận dạng 41
    Hình 38 Ảnh đầu vào . 42
    Hình 39 Kết quả kiểm thử . 43 1

    MỞ ĐẦU
    1. Tính cấp thiết
    Chữ Nôm là một di sản văn hóa dân tộc. Chữ Nôm ra đời có ý nghĩa hết sức lớn
    lao, đánh dấu bước phát triển của nền văn hóa dân tộc, ý thức tự cường và khẳng định
    vai trò, địa vị của Tiếng Việt.
    Lâu nay nghiên cứu Hán Nôm là việc làm hết sức có ý nghĩa đối với sự nghiệp
    tìm hiểu tri thức văn hóa của con người Việt Nam; là cầu nối của quá khứ với hiện tại
    và tương lai. Tìm hiểu nghiên cứu, khai tác thư tịch, di tích, văn hóa lịch sử, con người
    xưa để xây dựng nền văn hóa mới, tạo cơ hội cho người Việt Nam hiện tại và mai sau
    tiếp cận, lĩnh hội và thưởng thức những giá trị văn hóa Việt Nam, góp phần giữ vững
    bản sắc dân tộc và có thể hòa nhập với thế giới, vượt qua những thử thách lớn lao,
    phức tạp của thời đại [3].
    Nghiên cứu Hán Nôm vì thế gắn liền và làm rạng ngời nền văn hóa dân tộc,
    khẳng định bản sắc riêng biệt của dân tộc. Để góp phần đưa các tác phẩm chữ Nôm
    đến gần hơn, dễ dàng tiếp cận hơn, ứng dụng Công Nghệ Thông Tin là một trong
    những cách tiếp cận. Một trong những nhiệm vụ được đặt ra cho Công Nghệ Thông
    Tin là xây dựng bộ ứng dụng nhận dạng chữ Nôm.
    Bên cạnh đó, hiện nay hầu hết các quốc gia đã có thể xây dựng bộ ứng dụng
    nhận dạng ngôn ngữ chữ viết của họ, do đó vấn đề xây dựng bộ ứng dụng nhận dạng
    chữ Nôm càng trở nên cấp thiết hơn.

    2. Chữ Nôm – Quốc âm
    Chữ Nôm (chữ Nôm: 字喃· 喃· 喃) là tên gọi cách viết biểu ý trong thời cổ
    đại và trung đại của Tiếng Việt, có một thời kỳ dài được xem là ngôn ngữ quốc gia
    (quốc ngữ), gọi là Quốc Âm.
    Theo các nhà nghiên cứu, chữ Nôm xuất hiện ở Việt Nam dựa trên cơ sở chữ
    Hán của người Trung Quốc và âm Hán-Việt đã hình thành một cách có hệ thống ở
    Việt Nam. Dần dần, có những chữ Hán không ghi được âm Hán-Việt nên các chữ
    Nôm được sáng tạo ra để ghi âm tiếng Việt, tạo thành các văn tự Nôm.
    Chữ Nôm hình thành và phát triển khoảng từ thế kỷ X đến đầu thế kỷ XX (về
    thời điểm chữ Nôm ra đời vẫn còn nhiều tranh cãi). Cứ liệu sớm nhất về chữ Nôm là
    bản khắc trên quả chuông Vân Bản năm 1076, thời nhà Lý, thế kỷ XI. Ban đầu chữ
    Nôm thường dùng để ghi tên người, tên đất, nhưng càng về sau, chữ Nôm càng trở nên
    phổ biến và tìm thấy ý nghĩa trong đời sống văn hóa của Người Việt. Tuy nhiên, chữ
    Nôm chưa bao giờ được các triều đại phong kiến coi là ngôn ngữ chính thống trên
    phương diện nhà nước, trừ nhà Hồ đầu thế kỷ XV (1400-1407), nhà Tây Sơn cuối thế
    kỷ XVII (1788-1802), với số năm ít ỏi, đã từng có xu hướng sử dụng chữ Nôm trong
    các văn bản hành chính. Sau khi Việt Nam thoát khỏi ách đô hộ của phương Bắc vào 2

    năm 939, chữ Nôm được hoàn chỉnh dần dần và chỉ đến thế kỷ XIII – XV mới được
    dùng nhiều trong văn chương.
    Ban đầu khi mới xuất hiện, chữ Nôm thuần túy mượn chữ Hán y nguyên để ghi
    âm tiếng Việt cổ. Phép đó gọi là “giả tá”. Dần dần phép ghép hai chữ Hán lại với nhau,
    một phần gợi âm, một phần gợi ý được dùng ngày càng nhiều và có hệ thống hơn.
    Phép này gọi là “hài thanh” để cấu tạo chữ mới. Kể từ thời Lê về sau số lượng sáng tác
    bằng chữ Nôm tăng dần trong suốt 500 năm từ thế kỷ XIV đến thế kỷ XX. Dồi dào
    nhất là các áng thi văn có tính cách cảm hứng, tiêu khiển và nặng phần tình cảm.
    Những tác phẩm Nôm này rất đa dạng: từ Hàn luật (thơ Nôm (tiếng Việt) theo luật
    Đường), đến văn tế, truyện thơ lục bát, song thất lục bát, phú, hát nói, tuồng, chèo.
    Văn Nôm đã diễn tả đầy đủ mọi tình cảm của dân tộc Việt, khi thì hào hùng, khi thì bi
    ai; khi thì trang nghiêm, khi thì bỡn cợt.
    Chữ Nôm có gốc rễ từ chữ Hán, do đó nguyên tắc và phương pháp cấu tạo chữ
    tự nhiên cũng có chổ giống hoặc tương tự. Nhưng chữ Nôm lại có chổ độc đáo riêng
    của nó.
    Tuy nhiên nhờ mang nhiều nét tương đồng, bài toán nhận dạng chữ Nôm có thể
    tham khảo được những phương pháp nhận dạng đả được áp dụng cho chữ Trung Quốc.
    So sánh với chữ Latinh, cấu tạo chữ Nôm có nhiều nét khác biệt. Do đó phương
    pháp xử lý cũng mang tính đặc thù hơn. Chữ Nôm thường được viết gióng hàng, gióng
    cột, do đó việc tách chữ có phần đơn gian hơn chữ latinh. Tuy nhiên các hàng chữ
    Nôm thường bố cục cách xa nhau hơn so với chữ Latinh, do đó bài toán xử lý nghiêng
    có một số khó khăn hơn.
    Động lực nghiên cứu nhận dạng chữ Nôm
    Mặc dù lịch sử hình thành chữ Nôm còn không ít vấn đề cần làm sáng tỏ, nhưng
    về ý nghĩa của sự ra đời của chữ Nôm, các nhà nghiên cứu đều thống nhất nhận định
    rằng: trong suốt quãng thời gian tồn tại, chữ Nôm là công cụ duy nhất, hoàn toàn Việt
    Nam, ghi lại lịch sử, văn hóa của dân tộc Việt. Chữ Nôm ra đời bắt nguồn từ ý thức
    phản vệ của dân tộc chống lại xu hướng Hán hóa của người phương Bắc, khẳng định
    tinh thần dân tộc của người Việt. Sự hình thành và phát triển của chữ Nôm, dù nói gì
    đi chăng nữa, cũng mang đậm tính thuần Việt ở chỗ nó đi lên từ đòi hỏi của đời sống
    Việt, nó được cư dân Việt Nam chấp nhận trong nền văn hóa của mình mà không cần
    một “sắc lệnh” nào từ giới cầm quyền [4].
    Sự hình thành và phát triển của chữ Nôm là bước ngoặt thứ nhất trong lịch sử
    ngôn ngữ văn tự của người Việt và cũng là một bước ngoặt trong lịch sử văn hóa Việt
    Nam, đáp ứng đòi hỏi của việc trực tiếp ghi chép hoặc diễn đạt lời ăn tiếng nói cùng
    tâm tư, suy nghĩ và tình cảm của bản than người Việt.
    Chữ Nôm đã tạo nên những thành tựu rực rỡ, làm phong phú kho tàng văn hóa
    Việt Nam, điều mà trước đó chữ Hán trên đất Việt không hề có được. Hơn nữa, cái đặc
    sắc của bước ngoặt này là: nó do chính con người Việt Nam tạo ra và phát triển từ sức
    sống của dân tộc, từ sâu thẳm của bản sắc văn hóa đã được tạo dựng ngàn năm của
    chính mình. Có lẽ vì vậy, con người Việt Nam cùng với chữ Nôm là những con người 3

    thuần Việt hơn bao giờ hết. Chữ Nôm đã góp phần to lớn trong việc giữ gìn và phát
    huy bản sắc của dân tộc Việt Nam trên con đường tự khẳng định mình vậy.
    Những ý nghĩa to lớn trên của chữ Nôm là động lực của những nghiên cứu
    nhằm đưa chữ Nôm trở nên có thể nắm bắt được bởi thế hệ hiện tại, những người
    không được học, đào tạo và sử dụng chữ Nôm.
    3. Tình hình nghiên cứu
    Hiện nay liên quan đến chữ Nôm đã có nhiều nhóm nghiên cứu thực hiện, cả
    trên lĩnh vực ngôn ngữ học và ứng dụng Công Nghệ Thông Tin. Một trong những
    thành tựu đầu tiên là việc hình thành từ điển chữ Nôm, xây dựng các kho chữ Nôm
    được số hóa, số hóa và dịch các tài liệu, tác phẩm chữ Nôm như Truyện Kiều (Nguyễn
    Du) của Hán Nôm Foundation. Tiếp tới sau những nổ lực trong thời gian dài, chữ Nôm
    đã được xác lập vị trí trong bộ ký tự thế giới Unicode và ISO 10646, trong đó có 5067
    ký tự trùng hình với chữ Trung Quốc, 4232 chữ thuần Nôm và hiện đang đề nghị đưa
    vào thêm 2200 chữ. Kế tiếp bước đi đó, nhiều bộ font Nôm, bộ gõ chữ Nôm đã được
    xây dựng. Và một trong những bước đi tiếp của lộ trình trên là xây dựng ứng dụng
    nhận dạng ký tự quang học Nôm (OCR-Nôm) [5].
    Liên quan đến nhận dạng chữ Nôm, nhóm nghiên cứu LES Nôm (Laboratory of
    Embeded System) của trường Đại học Công Nghệ - ĐHQG Hà Nội cũng đã có một số
    nghiên cứu và đạt được thành quả nhất định. Các nghiên cứu chủ yếu tập trung nghiên
    cứu, xây dựng các Engine nhận dạng, để xây dựng ứng dụng nhận dạng chạy trên PC
    với đầu vào là ảnh của 1 chữ, chưa triển khai nhận dạng bằng Camera trên nền tảng di
    động.
    4. Đối tượng và phạm vi nghiên cứu
    Chúng tôi tập trung nhận dạng bài toán nhận dạng chữ Nôm dựa trên những
    nghiên cứu đã có của nhóm nghiên cứu LES Nôm nhằm xây dựng một phần mềm
    nhận dạng hoàn chỉnh có chức năng chụp hình chữ Nôm, nhận dạng và đưa ra nghĩa
    Tiếng Việt.
    Hệ thống nhận dạng ký tự quang học (OCR – optical character recognition) nói
    chung và hệ thống nhận dạng chữ Nôm nói riêng bao gồm 4 thành phần chính: tiền xử
    lý, trích chọn đặc trưng, nhận dạng, hậu xử lý. Luận văn dựa trên ứng dụng nhận dạng
    trên PC trong “Nhận dạng chữ Nôm bằng mạng Nơ ron” của Trần Nguyên Hoàng [1]
    được thực hiện với kho mẫu NOM-DB0 chứa 495 chữ Nôm, để xây dựng hệ thống
    nhận dạng chữ Nôm hoàn chỉnh. Ứng dụng nhận dạng trên PC yêu cầu đầu vào là ảnh
    nhị phân của một chữ Nôm, do đó để hoàn chỉnh hệ thống nhận dạng trên thiết bị di
    động, với đầu vào là ảnh chụp sử dụng Camera, đầu ra là nghĩa Tiếng Việt của chữ
    Nôm, đề tài tập trung nghiên cứu các phương pháp tiền xử lý cần áp dụng.
    5. Mục đích và nhiệm vụ nghiên cứu 4

    Đề tài tập trung hoàn chỉnh hệ thống nhận dạng, nhằm cụ thể hóa bài toán nhận
    dạng trên thiết bị di dộng dựa trên ứng dụng nhận dạng trên PC hiện có của LES-Nôm
    xây dựng. Hệ thống được xây dựng dựa trên mô hình Client-Server. Client ứng dụng
    trên điện thoại thông minh chạy hệ điều hành Android, thực hiện việc chụp hình chữ
    Nôm, tiền xử lý ảnh chụp được, gửi ảnh chữ Nôm lên Server và nhận về và hiển thị kết
    quả nhận dạng.
    Trong bước tiền xử lý, đề tài thực hiện tìm hiểu, và cài đặt thuật toán nhị phân
    hóa ảnh, đề xuất thuật toán phát hiện và xử lý nghiêng của ảnh và phân đoạn, tách chữ.
    Sau đó tiến hành thực nghiệm, phân tích kết quả đạt được, đề xuất các hướng nghiên
    cứu tiếp theo nhằm cải tiến tiếp.
    Để đạt được mục tiêu trên, chúng tôi đã tiến hành tìm hiểu, từ đó làm rỏ, và đề
    xuất phương pháp tiền xử lý trong bài toán nhận dạng chữ Nôm. Luận văn tập trung
    tìm hiểu các vấn đề chính sau:
     Xây dựng hệ thống theo mô hình client-server
     Phương pháp nhị phân hóa ảnh
     Phương pháp phát hiện, và xử lý nghiêng ảnh chụp các ký từ bằng
    camera có thiết bị di động
     Phương pháp tách rời các chữ từ ảnh chụp được
    Như được trình bày trong chương 2, các phương pháp trên chưa bao hàm hết tất
    cả các phương pháp áp dụng trong tiền xử lý. Nhưng do thời gian hạn chế, chúng tôi
    chỉ tìm hiểu những phương pháp cốt yếu nhất để có thể hoàn chỉnh hệ thống nhận dạng
    trên Android.
    6. Những nội dung nghiên cứu
    Chúng tôi tìm hiểu nghiên cứu về bài toán tiền xử lý trong nhận dạng ký tự
    quang học nhằm mục đích xây dựng ứng dụng nhận dạng chữ Nôm trên thiết bị di
    động. Để tiến hành nghiên cứu và đánh giá, chúng tôi sử dụng kết quả nghiên cứu -
    ứng dụng nhậng dạng trên PC của nhóm LES-Nôm được tiến hành trên bộ dữ liệu
    Nôm-DB0. Trên cơ sở các kiến thức tìm hiểu được, và ứng dụng nhận dạng hiện có,
    tiến hành xây dựng hệ thống. Chúng tôi áp dụng thuật toán xác định ngưỡng toàn cục
    Otsu để nhị phân hóa ảnh chụp được, đề xuất thuật toán phát hiện và xử lý nghiêng
    dựa trên ý tưởng của Wojciech Biniecki, Szymon Grabowski & Wojciech Rozenberg
    [11], dựa trên đặc điểm viết gióng hàng, gióng cột của chữ Nôm đề xuất thuật toán
    tách chữ đơn giản, từ đó xây dựng ứng dụng nhận dạng hoàn chỉnh trên thiết bị
    Android.
    7. Kết cấu luận văn
    Luận văn được chia làm 4 chương. Trong chương 1, chúng tôi trình bày về bài
    toán nhận dạng ký tự quang học nói chung, và nhận dạng chữ Nôm nói riêng. Tiếp đó,
    trong chương 2, chúng tôi trình bày về Tiền xử lý trong bài toán nhận dạng – mục tiêu 5

    nghiên cứu của đề tài. Trong chương 3, chúng tôi đi sâu trình bày về các thuật toán mà
    chúng tôi sẽ sử dụng trong bước tiền xử lý nhận dạng chữ Nôm: thuật toán xác định
    ngưỡng toàn cục Otsu, thuật toán phát hiện và xử lý nghiêng và thuật toán tách chữ. Ở
    chương cuối, chúng tôi trình bày về thực nghiệm xây dựng hệ thống, các kết quả đạt
    được và phân tích về những hạn chế của chương trình, từ đó đề xuất hướng nghiên cứu
    tiếp theo nhằm cải tiến hệ thống.
     
Đang tải...