trích xuất đặc trưng từ hình ảnh đơn thuốc

67 0 0
Tài liệu đã được kiểm tra trùng lặp
trích xuất đặc trưng từ hình ảnh đơn thuốc

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bao gồm các khối xử lý nhỏ là: mô hìnhphân đoạn thông tin quan trọng trong ảnh, mô hình phát hiện ký tự, mô hình nhận dạng ký tự,mô hình phân loại tên thuốc với các ký tự khác, mô hình t

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA—————————————–

TRẦN ĐỨC THẮNG

TRÍCH XUẤT ĐẶC TRƯNG TỪ HÌNH ẢNHĐƠN THUỐC

Chuyên ngành: Khoa học Máy TínhMã số: 8480101

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 1 năm 2024

Trang 2

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA—————————————–

TRẦN ĐỨC THẮNG

TRÍCH XUẤT ĐẶC TRƯNG TỪ HÌNH ẢNHĐƠN THUỐC

Chuyên ngành: Khoa học Máy TínhMã số: 8480101

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 1 năm 2024

Trang 3

TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG-HCM

Cán bộ hướng dẫn khoa học: TS Nguyễn Đức Dũng

Cán bộ chấm nhận xét 1: TS Trần Tuấn Anh

Cán bộ chấm nhận xét 2: PGS.TS Nguyễn Văn Sinh

Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG TP.HCMngày 23 tháng 1 năm 2024.

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:

1 Chủ tịch: TS Lê Thành Sách.2 Thư ký: TS Nguyễn Tiến Thịnh3 Phản biện 1: TS Trần Tuấn Anh

4 Phản biện 2: PGS.TS Nguyễn Văn Sinh5 Ủy viên: TS Võ Đăng Khoa

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khiluận văn đã được sửa chữa (nếu có).

KỸ THUẬT MÁY TÍNH

Trang 4

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAMĐộc lập - Tự do - Hạnh phúc

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Ngày, tháng, năm sinh: 04/10/1999Nơi sinh: Kiên Giang

I TÊN ĐỀ TÀI:

Trích Xuất Đặc Trưng từ Hình Ảnh Đơn ThuốcInformation Extraction from Prescription Images

II NHIỆM VỤ VÀ NỘI DUNG:

- Tìm hiểu về các mô hình trích xuất thông tin từ hình ảnh, các công trình liên quan,các phương pháp giải quyết bài toán, ưu và nhược điểm của các phương pháp, đặcbiệt là phương pháp sử dụng các mô hình học sâu.

- Nghiên cứu và đề xuất cải thiện các mô hình cho Bài toán trích xuất thông tin từhình ảnh đơn thuốc, các thuật toán nhận diện thông tin.

- Thực nghiệm, đánh giá kết quả của các mô hình đề xuất trên tập dữ liệu tự gán nhãn

III.NGÀY GIAO NHIỆM VỤ : 04/09/2023

IV.NGÀY HOÀN THÀNH NHIỆM VỤ: 18/12/2023V.CÁN BỘ HƯỚNG DẪN: TS Nguyễn Đức Dũng

Trang 5

Luận văn tốt nghiệp là quá trình đúc kết, tìm tòi và phát triển từ những kiến thức của nhữngnăm tháng học đại học và cao học dưới sự dìu dắt và giúp đỡ của các thầy, cô của Khoa Khoahọc và Kỹ thuật Máy tính, các phòng thí nghiệm, các giảng viên của trường Đại học Bách KhoaThành phố Hồ Chí Minh Đặc biệt, chúng tôi muốn bày tỏ lòng biết ơn sâu sắc đến tiến sĩNguyễn Đức Dũng, người thầy đã giúp chúng tôi có động lực để hoàn thành luận văn và cũnglà người hướng dẫn tận tình trong suốt quá trình học tập và nghiên cứu Với những kiến thứcthầy Dũng và các thầy, cô của trường Đại học Bách Khoa đã truyền dạy sẽ là hành trang quý giátrong quá trình nghiên cứu và làm việc sau này Cuối cùng, chúng tôi xin chúc quý thầy, cô vàgia đình dồi dào sức khỏe và thành công trong sự nghiệp cao quý.

Trang 6

Tóm tắt nội dung

Trong bài luận văn này, chúng tôi sẽ trình bày các cơ sở lý thuyết của khía cạnh thị giác máytính và ngôn ngữ tự nhiên áp dụng kỹ thuật học sâu Trong đó, chúng tôi sẽ chú trọng áp dụngnền tảng lý thuyết trên để tiếp cận đến bài toán trích xuất thông tin từ hình ảnh đơn thuốc Từđó, tên thuốc cũng như các loại thuốc liên quan sẽ được đề xuất Chúng tôi cũng sẽ đưa ra cáckết quả thử nghiệm và so sánh, đánh giá giữa các phương pháp đó với nhau và giữa các kết quảthí nghiệm của các bài báo khoa học đã được xuất bản.

Với các kết quả trên, chúng tôi xin đưa ra một framework hoàn chỉnh và các mô hình thựchiện từng bước để giải quyết bài toán truy xuất dữ liệu Bao gồm các khối xử lý nhỏ là: mô hìnhphân đoạn thông tin quan trọng trong ảnh, mô hình phát hiện ký tự, mô hình nhận dạng ký tự,mô hình phân loại tên thuốc với các ký tự khác, mô hình trích xuất đơn thuốc để tạo ra kết quảvà thuật toán đề xuất tên thuốc được lưu trong cơ sở dữ liệu có sẵn Tiếp theo, chúng tôi sẽ sosánh giữa các phương pháp để đi đến việc chọn phương pháp tối ưu nhất để giải quyết bài toántrích xuất thông tin từ hình ảnh đơn thuốc Cuối cùng, chúng tôi sẽ trình bày các hạn chế vànhững thứ có thể cải thiện để cho ra kết quả trích xuất thông tin cũng như đề xuất được tốt hơn.

Trang 7

In this thesis, we will present the theoretical foundations of the computer vision and naturallanguage processing aspects applied in deep learning techniques Specifically, we will empha-size the application of this theoretical framework to approach the problem of extracting informa-tion from single prescription images Subsequently, both the drug names and related types willbe suggested We will also provide experimental results, comparisons, and evaluations amongthese methods as well as against the experimental results from published scientific papers.

Based on these results, we propose a comprehensive framework and models to address thedata retrieval problem This includes smaller processing blocks: a model segmenting importantinformation within the image, a character detection model, a character recognition model, a drugname classification model alongside other characters, a prescription extraction model generatingresults, and an algorithm proposing drug names stored in an available database Subsequently,we will compare these methods to determine the most optimal approach for extracting informa-tion from prescription images Finally, we will outline limitations and potential enhancementsto improve information extraction results and suggestions.

Trang 8

Lời cam đoan

Chúng tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn củaTS Nguyễn Đức Dũng Nội dung nghiên cứu và các kết quả đều là trung thực và chưa từngđược công bố trước đây Các số liệu được sử dụng cho quá trình phân tích, nhận xét được chínhchúng tôi thu thập từ nhiều nguồn khác nhau và sẽ được ghi rõ trong phần tài liệu tham khảo.

Ngoài ra, chúng tôi cũng có sử dụng một số nhận xét, đánh giá và số liệu của các tác giảkhác, cơ quan tổ chức khác Tất cả đều có trích dẫn và chú thích nguồn gốc.

Nếu phát hiện có bất kì sự gian lận nào, chúng tôi xin hoàn toàn chịu trách nhiệm về nộidung đề cương luận văn tốt nghiệp của mình Trường đại học Bách Khoa thành phố Hồ ChíMinh không liên quan đến những vi phạm tác quyền, bản quyền do chúng tôi gây ra trong quátrình thực hiện.

Tp Hồ Chí Minh, tháng 1 năm 2024Tác giả

Trần Đức Thắng

Trang 9

3.4 Trích xuất tên thuốc và số lượng của đơn thuốc 23

3.4.1 Phân loại tên thuốc 24

3.4.2 Trích xuất số lượng trong đơn thuốc 24

3.4.3 Kết hợp tên thuốc và số lượng 24

3.5 Tìm kiếm tên thuốc trong cơ sở dữ liệu 26

3.6 Web Demo 29

4Thí nghiệm314.1 Tập dữ liệu 31

4.1.1 Tập dữ liệu phân đoạn 31

4.1.2 Tập dữ liệu phân loại tên thuốc 31

4.1.3 Tập dữ liệu tên thuốc 32

4.1.4 Tập dữ liệu tên thuốc và số lượng trong đơn thuốc 34

4.2 Độ đo đánh giá 35

4.3 Chi tiết hiện thực 36

Trang 10

5Kết quả37

5.1 Phân đoạn 37

5.2 Phân loại tên thuốc 37

5.3 Trích xuất thông tin từ đơn thuốc 39

5.4 Kết quả hoàn chỉnh của framework 40

5.5 Các kết quả chưa tốt của mô hình 41

6Tổng kết456.1 Hạn chế và cải tiến 45

6.1.1 Hạn chế 45

6.1.2 Những cải tiến tương lai 45

Tài liệu tham khảo46A Kiến thức nền tảng49A.1 Artificial Neural Network 49

A.2 Convolution Neural Network 50

A.3 Residual Neural Network 51

A.4 Long short-term memory 52

Trang 11

4.1 Vài mẫu dữ liệu thuốc trong cơ sở dữ liệu thuốc 33

4.2 Vài mẫu dữ liệu thuốc trong cơ sở dữ liệu thuốc 34

4.3 Nhãn của hình ảnh đơn thuốc 35

5.1 Kết quả huấn luyện mô hình phân đoạn thông tin đơn thuốc 37

5.2 Kết quả huấn luyện mô hình phân loại tên thuốc 39

5.3 Kết quả trích xuất thông tin từ đơn thuốc 40

Trang 12

Danh sách hình vẽ

2.1 Hình ảnh đơn thuốc trong tập dữ liệu (trái) Nhãn phân đoạn cho ảnh đơn thuốc

(giữa) Phần thông tin mà mô hình phân đoạn cần học (phải) 4

2.2 Kiến trúc mô hình U-Net [4] 6

2.3 Mô hình cấu trúc của các block RSU [1] 7

2.4 Mô hình U2-Net [1] 8

2.5 Kết quả mô hình U2-Net [1] so với các mô hình phân đoạn khác 9

2.6 Kiến trúc mô hình DBNet [2] 10

2.7 Quá trình xử lý của mô hình DBNet [2] 11

2.8 Hàm mất mát và đạo hàm khi tính Differentiable binarization trong mô hìnhDBNet [2] 12

2.9 Trực quan hóa một vài ngưỡng sinh ra từ mô hình DBNet [2] 13

2.10 Một số kết quả phát hiện của mô hình DBNet [2] 13

2.11 Kiến trúc mô hình CRAFT [3] 14

2.12 Các gán nhãn cho CRAFT [3] 15

2.13 Kết quả của CRAFT [3] so với các mô hình khác 15

2.14 VietOCR1với cơ chế seq2seq 16

2.15 VietOCR2với cơ chế Transformer 18

2.16 Kết quả của mô hình VietOCR3 18

3.1 Mô hình đề xuất thực hiện trích xuất thông tin từ hình ảnh đơn thuốc 19

3.2 Ảnh đầu vào mô hình phân đoạn 21

3.3 Ảnh đầu ra mô hình phân đoạn 22

3.4 Hình kết quả bản đồ nhiệt (trên) và các bao đóng (dưới) của mô hình CRAFT[3] mặc định của mô hình (trái) và sử dụng dilation (phải) 23

3.5 Mô hình phân loại tên thuốc 25

3.6 Kết quả của mô hình phân loại tên thuốc 26

3.7 Kết quả của thuật toán nhận diện số lượng đơn vị 27

3.8 Khi không sử dụng thuật toán nối các dòng tên thuốc (trái) và khi sử dụng thuậttoán (phải) 28

3.9 Ví dụ về kết quả trả về của thông tin đơn thuốc được trích xuất 29

3.10 Hình ảnh màn hình trang web tương tác 30

4.1 Vài ảnh trong tập dữ liệu phân đoạn Hình ảnh thuốc (trái) và hình nhãn đượcđánh dấu để huấn luyện (phải) 32

4.2 Ví dụ về tập dữ liệu phân loại tên thuốc 33

4.3 Ví dụ về tập dữ liệu tên thuốc 34

5.1 Hình ảnh đơn thuốc đầu vào (trên) và kết quả sau khi đã phân đoạn ảnh (dưới) 385.2 Kết quả đầu ra của mô hình phân loại tên thuốc 39

5.3 Một bước hoàn chỉnh của framwork trích xuất thông tin từ đơn thuốc 42

Trang 13

A.1 Caption for LOF 49

A.2 Mô hình nơ-ron thật và ảo4 50

A.3 Mô hình Convolution Neural Network5 51

A.4 Mô hình Nối tắt Residual Neural Network [5] 52

A.5 Mô hình LSTM6 53

Trang 14

Chương 1Giới thiệu

Trong những năm gần đây, sự phát triển của tất cả các lĩnh vực trên thế giới đang càng ngàycàng nhanh, nhất là về lĩnh vực công nghệ thông tin Con người luôn muốn tìm cách để ứngdụng tối đa công nghệ để đáp ứng nhu cầu của con người nhằm khiến mọi thứ dễ dàng hơn Mộttrong những sự phát triển đó chính là thương mại điện tử Hàng hóa sẽ được đặt trên trang webcủa các công ty lớn nhưng Alibaba, Amazon và sẽ được chuyển đến tận nhà của người mua.Dịch bệnh Covid-19 mới đây càng thúc đẩy việc mua sắm trực tuyến Vậy ngoài hàng hóa bìnhthường, ta cũng có thể mua các thứ khác như thuốc men Nhưng người dùng đa số không cókiến thức về dược sẽ rất khó mua đúng thứ thuốc họ cần Vì vậy, ta cần có một hệ thống có thểđọc, trích xuất và chọn ra đúng thuốc cho người mua mà họ không cần phải đến tiệm thuốc Đâylà một bài toán ta có thể giải quyết nhằm tạo ra giá trị sử dụng thực tiễn.

Động lực

Năm 2020 chứng kiến một cơn đại dịch bệnh mang tên Covid-19 ảnh hưởng đến toàn thếgiới, gây tổn hại về tính mạng và ảnh hưởng đến nhiều nền kinh tế trong nước và cả thế giới.Tính đến ngày 09/02/2023, toàn thế giới có hơn 755 triệu ca nhiễm Covid-19 Tổng số ngườichết do dịch đã lên đến hơn 6,8 triệu ca Việt Nam nói riêng, tính đến ngày 21/12/2022, có tổngcộng 11,5 triệu bệnh nhân Covid-19 và hơn 43000 trường hợp tử vong Các bệnh viện vào thờiđiểm cao điểm đều phải làm việc 100% công suất cả ngày đêm Chính phủ đã từng bạn hànhviệc cấm đi ra ngoài và chỉ có các ngành nghề thiết yếu, shipper được phép làm việc để vậnchuyển hàng hóa Dịch bệnh khiến cho mọi người không thể ra ngoài và nhu cầu thuốc tăng lênmạnh Điều đó khiến cho việc mua thuốc trực tuyến phát triển nhanh chóng Các đơn thuốc kểcả đơn Covid lẫn các đơn thuốc thường đều được chụp ảnh và gửi cho các tiệm thuốc lớn Sauđó, dược sĩ sẽ xem đơn, lấy thuốc và đưa cho shipper vận chuyển đến nhà người mua Nhưngvới số lượng đơn thuốc hàng ngày là vô cùng lớn với thời gian cao điểm đó, việc chỉ có dượcsĩ đọc đơn thuốc là rất mất thời gian, giảm doanh thu của doanh nghiệp cũng như khiến thuốcđến tay cho người mua lâu Thấy vấn đề đó, chúng tôi đề xuất một framework có thể đọc đượcđơn thuốc, trích xuất thông tin quan trọng: tên thuốc và số lượng của mỗi loại và xác định đượcchính thuốc đó cùng các thuốc có thể thay thế được trong cơ sở dữ liệu nhằm giúp dược sĩ tiếtkiệm thời gian một cách tối đa để có thể đem thuốc nhanh nhất đến tay người tiêu dùng.

Tuy hiện tại, chúng ta đã đến giai đoạn bình thường mới Covid đã được xem là một bệnhkhông còn nguy cấp, xã hội trở về bình thường nhưng việc mua sắm trực tuyến, trong đó có cảmua thuốc đã trở thành thói quen với nhiều người Vì thế, việc trích xuất thông tin từ đơn thuốckhông còn là một phương án khẩn cấp trong tình trạng Covid nữa mà sẽ là một dự án có thể pháttriển lâu dài nhằm ứng dụng trong đời sống.

Trang 15

Mục tiêu

Mục tiêu của nghiên cứu này là trích xuất thông tin từ hình ảnh đơn thuốc Mà cụ thể hơn làtên thuốc và số lượng tương ứng của đơn thuốc đó Sau đó, thuốc trong cơ sở dữ liệu sẽ được đềxuất ra cho người dùng Khi một hình ảnh đơn thuốc được đưa vào framework, một danh sáchcác tên thuốc và số lương tương ứng của nó sẽ được trả về Các tên thuốc này thường bao gồmbiệt dược hay còn gọi là tên thuốc Tiếp đến là thành phần của thuốc và cuối cùng là hàm lượngcủa thuốc đó Sẽ có thuốc có đầy đủ các thành phần trên hoặc chỉ có vài thứ trong tên thuốc Môhình phải trích xuất được thuốc đó dù cho có thiếu hay đầy đủ các thành phần Từ các phần trêncủa một thuốc, chúng tôi sẽ tìm kiếm thuốc đó và các thuốc thay thế được trong cơ sở dữ liệucho người dùng Mô hình cũng phát hiện được số lượng tương ứng của từng thuốc Số lượng nàythể hiện số thuốc được kê trong đơn và dược sĩ cần bán cho người dùng Các đối tượng trên sẽđược kết hợp với nhau và trả về kết quả cuối cùng.

Tổng quan về báo cáo

Phần còn lại của báo cáo được chia thành 6 phần gồm Chương 2, Chương 3, Chương 4,

Chương 5, Chương 6 và Phụ lục A Trong đó, Chương 2 sẽ trình bày về việc khảo sát chi

tiết các nghiên cứu liên quan đến đề tài, bao gồm các nghiên cứu về phân đoạn đối tượng, phát

hiện và nhận dạng ký tự Chương 3 trình bày về các ý tưởng đề xuất, hiện thực của các bướctrong framework Chương 4 nêu lên các tham số, cài đặt để cho ra được kết quả các mô hình.

Chương 5 mô tả các kết quả đạt được của mô hình chúng tôi đề xuất Chương 6 sẽ tổng kết và

đề xuất kế hoạch cho giai đoạn luận văn tiếp theo Phụ lục A sẽ nói về các kiến thức nền tảng

cần thiết cho nghiên cứu trong đề tài.

Trang 16

Chương 2

Những nghiên cứu liên quan

Framework trích xuất thông tin từ hình ảnh đơn thuốc bao gồm năm phần Đầu tiên, ta cần

phân đoạn (Segmentation) ra phần chứa thông tin hữu ích từ đơn thuốc Tiếp theo, ta đến môhình phát hiện ký tự (Text Detection) từ vùng chứa thông tin hữu ích đã được trích xuất từ phầnđầu Từ các ký tự được phát hiện, mô hình nhận diện ký tự (Text Recognition) dùng để xác định

nội dung từ vùng được trích xuất Mô hình trích xuất tên thuốc từ các ký tự có nhiệm vụ tách rađược thuốc và số lượng từ các ký tự mà mô hình trước nhận dạng được Cuối cùng, các thuốc sẽđược truy vấn trong cơ sở dữ liệu để gợi ý ra cho người dùng Ta sẽ xem xét mô hình phân đoạnphần chứa dữ liệu quan trọng trong ảnh.

2.1.1Tập dữ liệu

Bài toán phân đoạn phần thông tin quan trọng trong đơn thuốc là bài toán được phát triểngần đây khi thương mại điện tử phát triển nên rất khó để tìm được một tập dữ liệu đáp ứng yêucầu trên Để có thể huấn luyện được mô hình này, chúng tôi cần phải tự gán nhãn dữ liệu từ cácđơn thuốc đã có sẵn để mô hình học sâu có thể học được Tập dữ liệu này bao gồm hơn 2000ảnh các đơn thuốc được đánh nhãn bằng các khung vuông bao quanh vùng chứa thông tin cầntrích xuất Sau đó, các pixel bên trong các khu vực được gán nhãn sẽ được biến thành các vùngheatmap để mô hình học và dự đoán Ví dụ về dữ liệu được gán nhãn được miêu tả như hình 2.1

2.1.2Phân đoạn đối tượng quan trọng trong ảnh

Mô hình phân đoạn đối tượng quan trọng trong ảnh đơn thuốc có nhiệm vụ phân đoạn raphần ta quan tâm trong ảnh để trích xuất, ở đây chính là tên thuốc được kê đơn Việc sử dụngmô hình phân đoạn sẽ giúp loại bỏ đi phần dư thừa như là các phông nền bên ngoài như tayngười chụp, mặt tủ, mặt kính, giúp giảm thiểu tối đa việc nhiễu khi đi qua các mô hình pháthiện và nhận dạng ký tự ở các bước tiếp theo Ngoài ra, mô hình phân đoạn sẽ loại bỏ các phầnkhông quan tâm của đơn thuốc, giúp mô hình phát hiện và nhận dạng có thể thực thi nhanh hơn,giảm tiêu hao tài nguyên khi tính toán.

Bài toán này chính là bài toán phát hiện ra đối tượng quan trọng trong ảnh đơn thuốc, phânđoạn ra và chỉ trả về phần ảnh chứa thông tin mà ta cần để trích xuất Đó chính là tên thuốc cótrong đơn thuốc.

Vấn về phân đoạn đối tượng quan trọng trong ảnh đã là một bài toán có từ lâu và có cáchướng tiếp cận khác nhau Với hai hướng tiếp cận chính là hướng tiếp cận cổ điển với các đặc

Trang 17

trưng được trích xuất thủ công với các giải thuật như foreground consistency [6] hay histograms

[7] Những giải thuật cổ điển này có độ chính xác tương đối Với sự phát triển của trí tuệ nhântạo, các mô hình học sâu cho phân đoạn đối tượng quan trọng được chú trọng hơn và cho ra cáckết quả có độ chính xác cao hơn rất nhiều so với phương pháp truyền thống Với các bài toánphân đoạn bằng học sâu, có hai yếu tố được nghiên cứu nhiều nhất đó chính là: trích xuất đặc

trương theo nhiều tầng (Multi-level deep feature integration) [8] và trích xuất đặc trưng theonhiều kích cỡ (Multi-scale feature extraction)[9] Phương pháp trích xuất đặc trưng theo nhiều

tầng sử dụng cách chồng nhiều tầng mạng học sâu lại với nhau, khiến chiều sau của mô hìnhtăng lên và khả năng học được các đặc trưng phức tạp hơn Điều này giúp tăng độ chính xáccủa mô hình Các mô hình áp dụng phương pháp trên có thể kể đến như mô hình MDF [10].Mô hình MDF này nhận vào ảnh đầu vàng với một độ phân giải nhất định và trả về vector đặctrưng biểu diễn sự quan trọng của từng pixel đó Hay mô hình Amulet [11] tạo ra phân đoạn củađối tượng quan trọng bằng cách tổng hơn đặc trưng nhiều lớp từ nhiều độ phân giải khác nhau.Các mô hình này với sức mạnh tính toán lớn giúp đạt được kết quả phân đoạn đối tượng tốt hơnnhiều so với các phương pháp truyền thống.

Với phương pháp trích xuất đặc trưng theo nhiều kích cỡ khác nhau, mô hình sẽ trích xuất cảthông tin toàn cục và cục bộ của một ảnh, giúp việc phân đoạn có sự chi tiết nhưng vẫn không

mất đi hình dáng toàn bộ của đối tượng Điển hình như mô hình SRM [12] sử dụng pyramidpooling moduleđể lấy đặc trưng toàn cục và cục bộ hợp nhất để phân đoạn đối tương quan trọng.

Hay PAGRN [13] xây dựng các mô đun attention nhằm trích xuất đặc trưng toàn cục của mỗi

lớp mô hình để tạo ra kết quả phân đoạn Các mô hình trên với sự đa dạng vùng ảnh hưởng vàcác đặc trưng phức tạp giúp tạo ra kết quả ấn tượng trong việc phân đoạn đối tượng quan trọng.Với bài toán phân đoạn phần nội dung cần trích xuất, mô hình vừa có thể kết hợp trích xuấtbằng đặc trưng nhiều tầng và nhiều kích cỡ sẽ là một mô hình thích hợp để cho ra kết quả tốt.Sau khi tìm kiếm và nghiên cứu, chúng tôi xin đề xuất bài U2-Net: Going Deeper with NestedU-Structure for Salient Object Detection [1] có thể được dùng để áp dụng vào đề tài.

U-Net là một mô hình mạng nơ-ron sâu được sử dụng rộng rãi trong lĩnh vực xử lý ảnhy tế và phát hiện bề mặt Mô hình này được giới thiệu bởi Olaf Ronneberger, Philipp Fischer

và Thomas Brox trong một bài báo năm 2015 mang tên U-Net: Convolutional Networks for

Biomedical Image Segmentation [4] Mô hình này đã đạt được sự thành công lớn trong việc

Hình 2.1: Hình ảnh đơn thuốc trong tập dữ liệu (trái) Nhãn phân đoạn cho ảnh đơn thuốc (giữa).Phần thông tin mà mô hình phân đoạn cần học (phải).

Trang 18

NHỮNG NGHIÊN CỨU LIÊN QUAN

giải quyết các bài toán về phân đoạn hình ảnh y tế, nơi mà việc định vị đối tượng quan trọng vàphân biệt giữa các cấu trúc nhất định trong lĩnh vực y tế là vô cùng quan trọng.

U-Net được thiết kế dựa trên kiến trúc mạng nơ-ron tích chập (Convolutional Neural

Network-CNN), một dạng phổ biến của mạng nơ-ron sâu thường được sử dụng cho xử lý ảnh.

Điểm đặc biệt của U-Net là cấu trúc mã hóa-giải mã (encoder-decoder), với kiến trúc mô hình

được trình bày ở Hình 2.2, trong đó encoder dùng để trích xuất đặc trưng và decoder dùng đểtái tạo hình ảnh phân đoạn Sự kết hợp giữa hai phần này giúp mô hình U-Net có khả năng pháthiện các đặc trưng cụ thể trong ảnh và tái tạo hình ảnh phân đoạn với độ chính xác cao.

- Kiến trúc của U-Net

• Encoder: Phần này của U-Net là một chuỗi các lớp tích chập theo sau bởi các lớp

tổng hợp (pooling layers) Lớp tích chập giúp trích xuất đặc trưng từ ảnh đầu vào,

trong khi các lớp tổng hợp giúp giảm kích thước của đầu ra và tăng khả năng tổngquát hóa của mô hình Quá trình này được lặp lại nhiều lần để tạo ra một biểu diễngiảm chiều dữ liệu của ảnh gốc.

• Decoder: Phần này của U-Net chứa các lớp sampling và lớp tích chập Lớp sampling giúp tăng kích thước của đầu ra từ encoder, trong khi các lớp tích chậpgiúp tạo ra hình ảnh phân đoạn với độ phân giải cao từ biểu diễn giảm chiều ở phần

up-encoder Cấu trúc nối tắt (skip connections) được sử dụng để kết hợp thông tin từ

phần encoder và phần decoder, giúp tăng khả năng định vị các đặc trưng quan trọngtrong quá trình phân đoạn.

- Quá trình huấn luyện U-Net

• Hàm mất mát: Trong quá trình huấn luyện, U-Net sử dụng hàm mất mát entropy hoặc Dice loss, phụ thuộc vào loại bài toán phân đoạn cụ thể.

cross-• Tối ưu hóa: U-Net thường được huấn luyện bằng cách sử dụng thuật toán tối ưu hóanhư Adam hoặc RMSprop để cập nhật trọng số của mạng nơ-ron và giảm thiểu hàmmất mát.

U-Net có khả năng phân đoạn hình ảnh với độ chính xác cao, đặc biệt là trong các ứng dụngy tế nơi đòi hỏi sự chính xác cao và độ tin cậy Cấu trúc encoder-decoder và skip connectionsgiúp mô hình học được các đặc trưng cục bộ và toàn cục của hình ảnh, đồng thời giảm thiểuhiện tượng mất mát thông tin trong quá trình giảm chiều dữ liệu Tuy nhiên, U-Net vẫn còn mộtsố hạn chế, bao gồm đòi hỏi lượng dữ liệu lớn để huấn luyện, đặc biệt là trong các bài toán y tếnơi cần có sự chính xác cao và đa dạng dữ liệu Ngoài ra, việc huấn luyện mô hình U-Net cũngđòi hỏi tài nguyên tính toán lớn, đặc biệt là khi áp dụng trên các tập dữ liệu lớn và phức tạp.

Trong tổng quan, U-Net là một mô hình mạng nơ-ron sâu mạnh mẽ và linh hoạt, đã đạt đượcnhiều thành công trong việc giải quyết các bài toán phân đoạn hình ảnh y tế và không y tế Sựkết hợp giữa kiến trúc encoder-decoder và các kỹ thuật tối ưu hóa đã làm cho U-Net trở thànhmột công cụ quan trọng trong lĩnh vực xử lý ảnh và trí tuệ nhân tạo.

2.1.4U2-Net: Going Deeper with Nested U-Structure for Salient ObjectDetection [1]

U2-Net: Going Deeper with Nested U-Structure for Salient Object Detection [1] là một

bài báo được công bố vào tháng 5/2020 Bài báo xây dựng một kiến trúc mạng học sâu đơn giảnnhưng mạnh mẽ Kiến trúc của U2-Net bao gồm 2 tầng kiến trúc U-Net chồng vào nhau Với

Trang 19

thiết kế này, mô hình có thể nhận được nhiều thông tin ngữ cảnh của ảnh đầu vào với nhiều kích

cỡ khác nhau bằng cách sử dụng các vùng ảnh hưởng từ các tầng ReSidual U-blocks RSU do

bài báo đề xuất Độ sâu của kiến trúc được đảm bảo nhưng không tăng chi phí tính toán quá lớnbằng cách sử dụng các tầng pooling ở các RSU Các tầng pooling này giúp giảm kích cở củacác đặc trưng trích xuất nhưng vẫn giữ lại đặc trưng cơ bản của ảnh Cấu trúc này tuy đơn giảnnhưng đủ phức tạp để có thể huấn luyện mô hình từ đầu mà không cần dùng các backbone cósẵn của tác vụ phân loại ảnh U2-Net có hai kiến trúc khác nhau Một kiến trúc đầy đủ với độchính xác cao nhưng tốc độ tính toán chậm và một kiến trúc rút gọn có độ chính xác tuy thấphơn nhưng lại tính toán nhanh hơn nhiều.

Đầu tiên, ta sẽ xem xét đến kiến trúc của các khối RSU, những khối cấu tạo nên mô hìnhU2-Net này Các thông tin được trích xuất toàn cục và cục bộ trong một ảnh đều rất cần thiết đểcó thể phân đoạn đối tượng trong ảnh một cách chính xác Các mô hình học sâu cho ảnh sẽ sử

dụng các kiến trúc Convolutional Neural Network (CNN) nhằm trích xuất đặc trưng Nhưng khi

sử dụng các lớp CNN chồng lại với nhau thì những tầng trên chỉ có thể trích xuất thông tin cụcbộ từ một phần của bức ảnh Còn các tầng sâu nhất sẽ có thông tin toàn cục nhưng lại mất điphần cục bộ và đặc trưng đầu ra nhỏ, mất đi sự chi tiết của bức ảnh Để giải quyết vấn đề trên,RSU được đề xuất nhằm lấy các đặc trưng với các kích cỡ khác nhau và có các đặc trưng đủphức tạp Hình 2.3 mô tả cấu tạo của RSU RSU được xây dựng theo kiểu encoder-decoder Đặctrưng đầu vào sẽ qua các lớp CNN và pooling nhằm trích xuất tiếp các đặc trưng của ảnh và mởrộng vùng ảnh hưởng từ các lớp CNN sau của RSU Đây là encoder Sau đó, các đặc trưng đượctrích xuất từ các tầng dưới sẽ được sử dụng làm đầu vào cho các CNN nhằm lấy các đặc trưngtoàn cục và phức tạp bổ trợ cho các CNN ở các tầng trên Các đặc trưng này sẽ được upsamplenhằm chỉnh về đúng kích thước của các đặc trưng tầng trên nhằm dễ dàng tính toán Cuối cùng,RSU trả về đặc trưng có kích thước tương tự đầu vào đã được làm tốt hơn bằng các đặc trưng

copy and cropinput

output segmentation map

6412864 2

conv 1x1

Hình 2.2: Kiến trúc mô hình U-Net [4]

Trang 20

NHỮNG NGHIÊN CỨU LIÊN QUAN

toàn cục và phức tạp nhưng vẫn giữ lại được các thông tin cục bộ được mô hình tốt hơn.

Khi ta chồng các block RSU này lên với nhau, ta sẽ có được kiến trúc của mô hình U2-Net.Các RSU này sẽ được chồng lên với hình dạng chữ U như chính bản thân các block RSU củachính nó Hình 2.4 mô tả kiến trúc của mô hình Mỗi block RSU sẽ được chồng lên nhau Cácblock RSU đầu sẽ lớn hơn, có mục đích nhằm encode bức ảnh để trích xuất các đặc trưng phứctạp Đầu ra là các đặc trưng phức tạp từ tầng RSU này sẽ được chuyền xuống cho tầng RSU nhỏhơn phía sau để trích xuất đặc trưng phức tạp hơn Khi đến hai tầng RSU cuối, các tầng này cókích thước đặc trưng đủ nhỏ nên khi ta trích xuất nhỏ hơn nữa sẽ làm mất đi nhiều thông tin giátrị Sau khi encode, ta sẽ decode mô hình với các tầng RSU chồng nhau lên tiếp Các tầng RSUđể decode này sẽ nhận đầu vào là các đặc trưng giàu thông tin từ các tầng thấp hơn, phức tạp vàmang tính toàn cục hơn kết hợp với đặc trưng từ các RSU encode cùng tầng với các thông tincục bộ hơn của tầng đó là kết hợp vào RSU decode Dữ liệu đầu ra sẽ được dùng làm đầu vàocho các RSU ở các tầng cao hơn để hòa hợp sự toàn cục và cục bộ của từng tầng Ngoài ra, dữliệu đầu ra cũng được xem nhưng một phân đoạn đầu ra của mô hình Với mỗi phân đoạn đầura của mô hình, ta sẽ nối hết lại và qua một mạng CNN cuối cùng để cho ra phân đoạn sau cùngcủa mô hình với các đặc trưng toàn cục và cục bộ tốt nhất được trích xuất ra từ mô hình U2-Net.

Mô hình cho ra kết quả tốt so với các phương pháp khác Với việc huấn luyện và kiểm tra

Hình 2.3: Mô hình cấu trúc của các block RSU [1].

Trang 21

trên ba tập dữ liệu là DUTS dataset [14], phương pháp cho thấy cả mô hình đầy đủ và mô hìnhrút gọn đề cho ra các kết quả tốt hơn đa số các phương pháp phân đoạn đối tượng trong ảnhkhác Hình 2.5 mô tả kết quả so sánh độ chính xác so với các mô hình khác trong nhiệm vụ phânđoạn đối tượng quan trọng trong ảnh Màu đỏ, xanh lá và xanh dương thể hiện độ chính xác caonhất, thứ 2 và thứ 3 so với các mô hình khác trong cùng một cột.

2.2.1Phát hiện ký tự trong ảnh

Để có thể trích xuất được thông tin trong hỉnh ảnh đơn thuốc, chúng tôi cần biết được vị trícác ký tự ở đâu trong một bức ảnh Các ảnh đơn thuốc được thiết kế theo dạng liệt kê từng dòngvà thường có khoảng cách giữa các dòng kết hợp với căn chỉnh theo cột Vì vậy, dữ liệu nàykhác với các đoạn văn liền mạch như trong các tác phẩm, tiểu thuyết Nhiệm vụ của chúng tôi

là có thể phát hiện được các ký tư, trả về bao đóng (bounding box) của chúng để làm đầu ra cho

Hình 2.4: Mô hình U2-Net [1].

Trang 22

NHỮNG NGHIÊN CỨU LIÊN QUAN

các mô hình phía sau.

Bài toán phát hiện ký tự trong ảnh là một bài toán được đặt ra từ lâu và có nhiều hướng tiếpcận khác nhau để có thể xử lý Hướng tiếp cận đầu tiên là sử dụng phương pháp cổ điển, với cácđặc trưng trích xuất thủ công bằng các thuật toán được xây dựng Tiểu biểu như là MSER [15]hay SWT [16] Với sự bùng nổ của học sâu, các mô hình phát hiện ký tự hiện đại được phát triểnnhiều hơn với độ chính xác vượt trội.

Đầu tiên, phương pháp phát hiện ký tự bằng dự đoán Regression-based text detectors dự

đoán ra các bao đóng bằng các mô hình phát hiện nổi tiếng Đơn cử như Textboxes [17] tinh

chỉnh các tầng CNN Convolutional Neural Network và các khung định hướng để phát hiện ra

ký tự với nhiều hình dạng, kích cỡ khác nhau Hay như Rotation-Sensitive Regression Detector

[18] (RSDD) tạo ra các biến thể xoay của đặc trưng đầu ra bằng các tầng CNN được xoay Tuy

nhiên, phương pháp này giới hạn ở chỗ khó có thể phát hiện được tất cả các dạng ký tự có thểxuất hiện.

Thứ hai là phương pháp phát hiện ký tự bằng phân đoạn Phương pháp này sử dụng các môhình phân đoạn để tìm kiếm các vùng chứa ký tự ở cấp độ pixel Các phương pháp này sẽ pháthiện ký tự bằng các dự đoán ra các vùng có từ Các mô hình như Multi-scale FCN [19] hayPixelLink [20] sử dụng phương pháp phân đoạn để phát hiện ký tự.

Cuối cùng là phương pháp phát hiện ký tự bằng từng ký tự Phương pháp này sẽ phát hiệnra các ký tự riêng lẻ và nối cúng lại thành một từ hoặc một đoạn văn Mô hình trong bài báo

Multi-oriented text detection with fully convolutional networks [21] đề xuất xây dựng bộ

phát hiện từng ký tự bằng cách sử dụng mô hình MSER Hay Seglink [22] dự đoán ra các lướicủa các từ và nối chúng lại với nhau bằng một mô hình dự đoán nối từ Mô hình dựa theo phươngpháp này có thể phát hiện được các ký tự với các hình thù đa dạng, có thể bị kéo dã, cong lênxuống hay bị kéo.

Các ảnh chụp đơn thuốc thường là ảnh chụp bằng điện thoại chứ không phải là các ảnh scan.Đơn thuốc cũng không phải lúc nào cũng trong tình trạng hoàn hảo Chúng có thể bị cong lên,xuống hoặc bị mờ đi 1 phần Vì thế, để có thể phát hiện được các ký tự một cách tốt nhất, khôngbỏ sót ký tự nào thì mô hình phát hiện bằng phương pháp phát hiện từng ký tự và nối lại với nhau

là phương pháp chúng tôi đề xuất sử dụng Bài báo mà chúng tôi nghiên cứu là bài Character

Region Awareness for Text Detection [3].

Hình 2.5: Kết quả mô hình U2-Net [1] so với các mô hình phân đoạn khác.

Trang 23

2.2.2DBNet: Real-time Scene Text Detection with Differentiable rization [2]

Bina-DBNet là một kiến trúc mạng nơ-ron sâu được phát triển cho việc phát hiện văn bản trongthời gian thực trong các ảnh cảnh với việc sử dụng kỹ thuật nhị phân hoá có thể lấy đạo hàm

(Differentiable Binarization) Kiến trúc này được giới thiệu trong bài báo nghiên cứu DBNet:

Real-time Scene Text Detection with Differentiable Binarization [2] vào năm 2019 của các

tác giả Minghui Liao, Baoguang Shi, Xiang Bai, Xinggang Wang, và Wenyu Liu.

DBNet sử dụng một mạng nơ-ron sâu có kiến trúc encoder-decoder Trong bài báo, nhómtác giả giới thiệu DBNet với mục tiêu tối ưu thời gian trong quá trình hậu xử lý trong các phương

pháp phát hiện chữ bằng mô hình phân đoạn phân đoạn (segmentation-based) mà yêu cầu sửdụng ngưỡng (threshold) để thực hiện nhị phân hóa (binarization), tức là để phân biệt điểm ảnhnào là phông nền (background), điểm ảnh nào của chữ từ bản đồ xác suất (probability map) Mô

hình kiến trúc của DBNet được thể hiện trong Hình 2.6.

Ngoài ra, bài báo này còn đề xuất ngưỡng có thể học được (learnable threshold) và một nhịphân hóa (binarization function) để đảm bảo rằng mạng segmentation học được threshold một

cách liên tục trong quá trình đào tạo Việc điều chỉnh tự động threshold không chỉ cải thiện độchính xác, mà còn đơn giản hóa quá trình hậu xử lý và cải thiện hiệu suất của việc phát hiện vănbản Quá trình thực hiện của mô hình có mô tả trong Hình 2.7 được diễn ra như sau:

• Đầu tiên, ảnh input sẽ được đưa vào một mạng trích xuất đặc trưng dạng kim tự tháp

- Standard binarization

Hình 2.6: Kiến trúc mô hình DBNet [2]

Trang 24

NHỮNG NGHIÊN CỨU LIÊN QUAN

Phương pháp Standard binarization nhận đầu vào là probabilty map P ∈ RH×W được tạora từ mạng segmentation, trong đó H,W là chiều cao và chiều rộng của map Ta cầnchuyển probability map sang binary map B ∈ RH×W, trong đó pixel có giá trị 1 là vùngchứa chữ.

Bi, j =(

1 ifPi, j > t,0 ottherwise,

với t là một giá trị threshold cố định được định nghĩa trước và (i, j) là tọa độ điểm trongmap.

- Differentiable binarization

Với Standard binarization, nhược điểm của phương pháp là chúng ta khó tìm ra được mộtgiá trị threshold t hợp lý Để giải quyết vấn đề này, nhóm tác giả đề xuất phương phápDifferentiable binarization và có thể tính toán đạo hàm, do đó tích hợp được vào quá trìnhhuấn luyện.

Differentiable binarization (DB) cải thiện hiệu suất có thể được giải thích thông qua quá

trình lan truyền ngược (backpropagation) Xét hàm f (x) = 1+exp(−kx)1 là một à một hàmDB, trong đó x = Pi, j− Ti, j Khi đó hàm mất mát l+ cho nhãn positive và l− cho nhãnnegative được biểu diễn như sau

l+= log 11 + exp −kx,

l−= log

1 − 11 + exp(−kx)

Lấy đạo hàm của 2 hàm mất mát trên và sử dụng chain rule, ta có

Hình 2.7: Quá trình xử lý của mô hình DBNet [2]

Trang 25

∂ l+

∂ x = −k f (x) exp −kx,∂ l−

∂ x = k f (x).

Đồ thị hàm số loss và đạo hàm được mô tả trong Hình 2.8 Nhờ có tham số k mà ta có thểtối ưu dự đoán, phân biệt được rõ ràng hơn vùng chứa chữ và phông nền.

2.2.2.2Adaptive threshold

Bản đồ ngưỡng động (Adaptive threshold) được sinh ra từ bản đồ đặc trưng của mô hình

phân đoạn Kết quả của Adaptive threshold và Probability map được thể hiện trong Hình 2.9.Cùng sinh ra từ bản đồ đặc trưng như bản đồ xác suất nhưng thay vì thể hiện xác suất điểm ảnhnày có phải thuộc đối tương hay không thì bản đồ ngưỡng động thể hiện các điểm ảnh đó cóthuộc cạnh bao quanh đối tượng đó không Ở trong bài báo tác giả cũng so sánh bản đồ ngưỡngđộng được học không giám sát ở ảnh trái và có giám sát Kết quả việc huấn luyện có giám sáttốt hơn hẳn so với phương pháp không giám sát.

DBNet được áp dụng rộng rãi trong các ứng dụng nhận diện văn bản thời gian thực trên ảnhcảnh Các ứng dụng bao gồm nhận diện biển số xe, nhận diện tên các cửa hàng trong hình ảnhđường phố, và các ứng dụng ghi chú số liệu từ ảnh tài liệu Một số kết quả của DBNet được lấytrong bài báo gốc, được trình bày ở Hình 2.10 Trong đó, mỗi kết quả sẽ có ba ảnh, theo thứ tựtừ trái sang phải từ trên xuống dưới bao gồm ảnh gốc có kết quả phát hiện chữ, ảnh trực quanhóa threshold T và ảnh trực quan hóa bản đồ xác suất P được trích xuất từ mô hình trong quátrình suy diễn.

DBNet cung cấp khả năng phát hiện văn bản trong thời gian thực với độ chính xác cao, đồngthời giảm thiểu thời gian huấn luyện và tăng tính ổn định của quá trình huấn luyện Tuy nhiên,

Hình 2.8: Hàm mất mát và đạo hàm khi tính Differentiable binarization trong mô hình DBNet[2]

Trang 26

NHỮNG NGHIÊN CỨU LIÊN QUAN

việc triển khai trong môi trường thực tế đôi khi đòi hỏi tài nguyên tính toán lớn và phức tạp hơn,đặc biệt là khi yêu cầu thời gian thực và độ chính xác cao.

Hình 2.9: Trực quan hóa một vài ngưỡng sinh ra từ mô hình DBNet [2]

Hình 2.10: Một số kết quả phát hiện của mô hình DBNet [2]

Trang 27

2.2.3Character Region Awareness for Text Detection [3]

Character Region Awareness for Text Detection [3] được công bố vào tháng 4/2019 Bài báođề xuất một mô hình có thể phát hiện ký tự bằng cách dự đoán ra vùng chứa của từng ký tự, vàvùng khoảng cách giữa các ký tự khác nhau Sau khi có được hai đầu ra trên, mô hình sẽ nối cácký tự lại bằng xử lý ảnh và trả về các bao đóng bao quanh các vùng chứa ký tự.

Hình 2.11 mô tả cấu trúc của mô hình CRAFT [3] Mô hình bao gồm VGG16 làm backbonecủa mô hình Backbone có nhiệm vụ trích xuất ra các đặc trưng từ đơn giản đến phức tạp củaảnh Tiếp theo, các đặc trưng này sẽ được phóng to lên và kết hợp các các đặc trưng của tầngCNN phía trên Việc áp dụng phương pháp này giúp cho mô hình có thể nhận biết được các đốitượng từ toàn cục đến cục bộ với các độ phức tạp của đặc trưng khác nhau Điều này giúp môhình có thể phát hiện ra được ký tự tốt hơn Cuối cùng, mô mình qua 4 tầng CNN chồng lại nhauvà trả về hai bản đồ nhiệt, đó là bản đồ nhiệt của ký tự và bản đồ nhiệt của vùng nối các ký tựlại thành một từ Sau khi có được hai bản đồ nhiệt trên, CRAFT [3] sẽ sử dụng xử lý ảnh, nốicác ký tự có vùng nối trùng lên nhau thành một từ và trả về bao đóng chứa gọn từ đó bên tronglàm kết quả đầu ra Các tập dữ liệu gán nhãn bao đóng sẵn từng ký tự trong ảnh thì được côngbố rộng rãi và nhiều nhưng không có tập dữ liệu nào gán nhãn cả vùng nối giữa hai ký tự Để

Hình 2.11: Kiến trúc mô hình CRAFT [3].

Trang 28

NHỮNG NGHIÊN CỨU LIÊN QUAN

giải quyết vấn đề trên, CRAFT [3] đã tạo ra nhãn của vùng giao nhau này bằng giải thuât nhưhình 2.12 Đối với nhãn từng ký tư, CRAFT sẽ nối các đỉnh chéo của từng ký tự lại với nhau.Điểm giao của 2 đường chéo này sẽ là tâm, và CRAFT [3] sẽ tạo nên bản đồ nhiệt Gaussian vớitâm ký tự mới được tạo và nằm trong bao đóng của từng từ Còn đối với vùng giao nhau củaký tự, CRAFT [3] sẽ lấy tâm của phần tam giác trên và tam giác dưới được tạo bởi đường chéocủa bao đóng ký tự của 2 ký tự liên tiếp nhau 4 điểm này sẽ được nối lại thành 1 bao đóng làCRAFT [3] sẽ tạo ra bản đồ nhiệt Gaussian của vùng giao này bằng bao đóng mới được tạo ra.Cả hai loại vùng nhiệt Gaussian này sẽ được làm nhãn để mô hình phía trên có thể học được vàdự đoán ra kết quả.

Mô hình cho ra kết quả tốt hơn nhiều so với các bộ phát hiện ký tự khác trên các tập dữ liệuIC13, IC15 và MSRA-TD500 cùng với FPS tương đối ổn Hình 2.13 cho thấy kết quả recall,precision và h-mean tốt hơn nhiều so với các mô hình khác.

Trang 29

có nhiệm vụ cắt ra các vùng hình ảnh có chứa đơn thuốc Chúng tôi sẽ lần lượt cho các ảnh trênvào mô hình và trả về chuỗi ký tự Trong một hình ảnh đơn thuốc có thể chứa cả các từ tiếnganh lẫn tiếng việt Vì thế, chúng tôi cần lựa chọn các mô hình có thể nhận diện được nhiều loạingôn ngữ mà trong đó có thể nhận dạng được cả hai ngôn ngữ trên.

Nhận dạng ký tự trong ảnh là bài toán đã được xây dựng từ lâu Với sự phát triển của các

mô hình học sâu và lượng dữ liệu dồi dào, các mô hình nhận dạng ký tự sử dụng NN (NeuralNetwork)đang được nghiên cứu ngày càng nhiều và cho ra độ chính xác rất cao.

Một trong các hướng tiếp cận chính là nhận dạng ký tự không quan tâm đến ngữ cảnh Cácmô hình này sẽ dự đoán ra được ký tự từ đặc trưng hình ảnh Các ký tự sẽ không ảnh hưởng gìvới nhau Ký tự sẽ được nhận diện lần lượt và ghép lại để cho ra một kết quả nhận diện Các mô

hình trên sẽ sử dụng hướng tiếp cận CTC (Connectionist Temporal Classification) [23] để nhận

diện Các mô hình dựa trên phương pháp này có một nhược điểm là sẽ khó nhận diện chính xácvới các ảnh đầu vào bị che, mất hay bị thiếu từ Vì thế, một cách tiếp cận khác được phát triểnđể giải quyết vấn đề trên.

Các tiếp cận thứ 2 chính là nhận diện ký tự sử dụng ngữ cảnh Mô hình ngoài việc học nhậndiện ký tự trong ảnh mà còn học ngữ cảnh của câu Điều này giúp mô hình có thể tự dự đoán rakết quả khi dữ liệu đầu vào bị lỗi hoặc thiếu ký tự Mô hình theo phương pháp này thường sẽ sửdụng cơ chế attention [24] hoặc transformer [25] để tạo ra các mô hình ngôn ngữ và sẽ được sửdụng chung với phần nhận diện ảnh để có thể cho ra kết quả dự đoán cuối cùng.

Hình 2.14: VietOCR1với cơ chế seq2seq.

Trang 30

NHỮNG NGHIÊN CỨU LIÊN QUAN

Do ảnh đầu vào là đơn thuốc do người dùng chụp lên, ảnh dễ bị nhiễu, mờ hoặc mất chữ nêncách tiếp cận thứ 2 phù hợp hơn để giải bài toán này Một mô hình mà chúng tôi đề xuất sử dụngchính là mô hình VietOCR Mô hình trên có thể nhận dạng được các từ tiếng anh lẫn tiếng việtvì được huấn luyện trên một tập dữ liệu đa dạng và phong phú với các từ, chữ số của nhiều ngônngữ Ngoài ra, mô hình cũng nhận dạng rất tốt dù ảnh đầu vào bị mờ, không rõ ràng hay mất 1vài ký tự nhờ cơ chế dự đoán các ký tự bị mất dựa trên ngữ cảnh của câu văn.

Mô hình VietOCR được một nhà khoa học tên Quoc Pham xây dựng và công bố công khaivào 5/2020 Tác giả đã xây dựng mô hình nhận diện ký tự với tập dữ liệu tiếng việt và tiếng anh.Hai mô hình được sử dụng chính là cơ chế attention và transformer để huấn luyện mô hình trên.Đầu tiêng, ảnh đầu vào của cả hai cách tiếp cận trên đều được qua một mô hình CNN nhằm tríchxuất được các đặc trưng từ hình ảnh và sau đó sẽ sử dụng các mô hình ngôn ngữ như Seq2Seq[26] và Transformer để nhận dạng ký tự.

Ảnh đầu vào sẽ được đưa đến bước đầu tiên là trích xuất đặc trưng Mô hình CNN dùng

trong bài toán OCR (Optical Character Recognition) nhận đầu vào là một ảnh, thông thường có

kích thước với chiều dài lớn hơn nhiều so với chiều rộng, do đó việc điều chỉnh tham số stridesize của tầng pooling là cực kì quan trọng VietOCR thường chọn kích thước stride size của cáclớp pooling cuối cùng là w × h = 2 × 1 trong mô hình OCR Không thay đổi stride size phù hợpvới kích thước ảnh thì sẽ dẫn đến kết quả nhận dạng của mô hình sẽ tệ Sau đó, đặc trưng trênsẽ đi qua các mô hình ngôn ngữ với cơ chế end-to-end.

Với mô hình sử dụng seq2seq kết hợp attention, cách hoạt động của mô hình này tương tựnhư kiến trúc của mô hình seq2seq trong bài toán dịch máy Với bài toán dịch máy từ tiếng việtsang anh, chúng ta cần mã hóa một chuỗi tiếng việt thành một vector đặc trưng, còn trong môhình nhận dạng ký tự, thì dữ liệu đầu vào này là một ảnh Một ảnh qua mô hình CNN, sẽ chomột bản đồ đặc trưng có kích thước kênh x chiều cao x chiều ngang, này sẽ trở thành đầu vào

cho mô hình LSTM (Long short-term memory), các đặc trưng sẽ được duỗi thẳng để phù hợp

với yêu cầu của mô hình LSTM Hình 2.14 mô tả cấu trúc của VietOCR sử dụng seq2seq.Mô hình VietOCR sử dụng Transformer cũng tương tự cấu trức với mô hình trên, chỉ kháclà VietOCR thay phần seq2seq thành Transformer để làm mô hình ngôn ngữ nhận dạng ký tự.Hình 2.15 mô tả cấu trúc của VietOCR sử dụng Transformer.

Trên tập dữ liệu gồm 10 triệu ảnh nhận diện ký tư, VietOCR cho ra kết quả như hình 2.16.Mô hình VietOCR khi sử dụng cơ chế Transformer có kết quả tốt hơn không nhiều nhưng thờigian thực thi lại lâu gấp 4 lần so với cơ chế sqe2seq Và kết quả của hai mô hình đều tương đốitốt và có thể được ứng dụng để giải quyết các bài toán nhận dạng ký tự.

3https://pbcquoc.github.io/vietocr/

Trang 31

Hình 2.15: VietOCR2với cơ chế Transformer.

Hình 2.16: Kết quả của mô hình VietOCR3.

Trang 32

1 Phân đoạn ra đối tượng quan trọng trong ảnh đơn thuốc đầu vào.

2 Đối tượng được phân đoạn đó sẽ được đi qua mô hình phát hiện ký tự để trả về các vùngchứa ký tự.

3 Mô hình nhận diện ký tự sẽ nhận dạng các ký tự được mô hình phát hiện trả về kết quả.

4 Các ký tự được trả về sẽ được phân loại ra các tên thuốc Ngoài ra, số lượng cho mỗi loạithuốc sẽ được trích xuất ra và kết hợp lại với nhau.

5 Tên thuốc sẽ qua thuật toán tìm kiếm trong cơ sở dữ liệu tên thuốc và đưa ra kết quả gợiý Kết quả trả ra sẽ là tên thuốc trên đơn, các thuốc gợi ý trong cơ sở dữ liệu cùng với sốlượng tương ứng của thuốc đó.

Thông tin trong đơn thuốc mà ta quan tâm trong mô hình này chính là tên thuốc và số lượngcủa mỗi thuốc Các thông tin cá nhân như họ tên, ngày tháng năm sinh hay bệnh viện, bác sĩ tasẽ không quan tâm đến Nhưng trong một đơn thuốc thường có đầy đủ các thông tin trên Cácthông tin ta không quan tâm đến nếu để đi qua các mô hình phát hiện, nhận dạng ký tự sẽ tốnthêm nhiều tài nguyên tính toán cũng như là gây nhiễu, giảm độ chính xác khi qua mô hình phânloại tên thuốc Để giảm thiểu những trường hợp trên, chúng tôi xin đề xuất sử dụng mô hìnhphân đoạn để trích xuất ra vùng ảnh chứa thông tin tên thuốc, và dùng kết quả này làm đầu vàocho các mô hình sau để tăng độ chính xác và tốc độ xử lý.

Hình 3.1: Mô hình đề xuất thực hiện trích xuất thông tin từ hình ảnh đơn thuốc

Trang 33

Mô hình chúng tôi sử dụng để huấn luyện phân đoạn dựa trên tập dữ liệu đơn thuốc là U2Net Đây là mô hình có độ chính xác cao, cùng với hai loại mô hình chính là mô hình U2-Netđầy đủ, với độ chính xác cao nhưng thời gian thực thi lâu và một mô hình rút gọn, có khả năngthực thi cho ra phân đoạn của đơn thuốc nhanh hơn nhưng độ chính xác lại giảm Chúng tôiquyết định huấn luyện bằng cả hai mô hình trên của U2-Net.

-Với mô hình U2-Net đầy đủ, mô hình bao gồm 7 tầng RSU chồng lên nhau Chúng thôi sửdụng kiến trúc mặc định được mô tả trong bài báo của U2-Net [1] Với mô hình U2-Net rút gọn,chúng tôi cũng lựa chọn kiến trúc mặc định được công bố của bài báo trên Sự khác biệt giữa

kiến trúc của hai mô hình trên là số đặc trưng được trích xuất ở tầng giữa bằng các filter Mô

hình U2-Net thu nhỏ có số filter ít hơn nên có kích cỡ nhỏ hơn và tốc độ xử lý nhanh hơn Nhưngbù lại là độ chính xác kém hơn so với mô hình U2-Net đầy đủ.

Ảnh đầu vào đều được chỉnh xuống độ phân giải 320x320 và tăng thêm dữ liệu huấn luyệnbằng cách lật ảnh theo chiều ngang và ngẫu nhiên cắt một phần ảnh Khi chạy thực thi, ảnh đầuvào vẫn sẽ được chỉnh xuống 320x320 và cho qua mô hình để sinh ra kết quả.

Kết quả mô hình sẽ là các con số có giá trị từ 0 đến 1 đại diện cho từng pixel của ảnh.Ngưỡng chúng tôi chọn để đánh dấu pixel đó mang giá trị bằng 1 là 0.7 Các giá trị dưới 0.7 sẽmang giá trị là 0 Đầu ra của mô hình phân đoạn sẽ được hợp với ảnh đầu vào để cho ra một ảnhmới Ảnh mới là ảnh được cắt từ ảnh cũ, với hình dạng và tọa độ được lấy từ mô hình phân đoạn.Hình 3.2 là ảnh đơn thuốc đầu vào và hình 3.3 là ảnh kết quả trả về của mô hình phân đoạn vàlà dữ liệu đầu vào cho mô hình phát hiện ký tự

Sau khi ta có được phân đoạn thông tin quan trọng là tên thuốc và số lượng mỗi loại thuốctrong ảnh, ta cần một thuật toán phát hiện các ký tự trong ảnh nhằm làm đầu vào cho mô hìnhnhận dạng ký tự Mô hình phát hiện ký tự này có nhiệm vụ nhận vào một ảnh đầu vào và dự

đoán ra các bao đóng (bounding box) bao quanh các ký tự Các bao đóng này sẽ được trả về

dưới dạng tọa độ của 4 góc Các phần ảnh được cắt ra từ các bao đóng này có vai trò là ảnh đầuvào cho mô hình nhận dạng ký tự được áp dụng ở bước sau.

Mô hình phát hiệ ký tự mà chúng tôi quyết định sử dụng chính là mô hình CRAFT [3] Môhình CRAFT [3] này là một mô hình dự đoán ra bản đồ nhiệt của từng ký tự trong ảnh và bảnđồ nhiệt của sự tương quan giữa các ký tự với nhau, sau đó nối lại để tạo thành các từ trong mộtcâu và tạo ra các bao đóng Các bản đồ nhiệt được tạo ra là các bản đồ nhiệt Gaussian Đây làmột mô hình phát hiện ký tự cho độ chính xác rất cao, vượt trội hơn so với các mô hình pháthiện ký tự khác và có thời gian thực thi tương đối nhanh Với bài toán trích xuất thông tin đơnthuốc, các ký tự cần được phát hiện đầy đủ nhất có thể với một tốc độ vừa phải thì đây là mộtmô hình cực kỳ phù hợp để làm cơ sở giải quyết bài toán phát hiện ký tự Ngoài ra, các ảnh đầuvào đã được giảm kích cỡ xuống bằng việc cắt ra từ mô hình phân đoạn cũng góp phần nângcao tốc độ tính toán cũng như độ chính xác của mô hình.

Tuy nhiên, mô hình CRAFT [3] vẫn tồn tại một hạn chế rất lớn Các ký tự được dự đoán rasẽ bao gồm bản đồ nhiệt của các ký tự đó cùng với bản đồ nhiệt sự liên quan với các mô hìnhcạnh bên nên khi các ký tự chỉ đứng một mình, bản đồ nhiệt được tổng hợp lại chỉ có bản đồnhiệt của ký tự Điều này khiến cho các ký tự đơn đứng một mình, có độ lớn tương đối nhỏ nhưsố 1 sẽ bị coi là nhiễu và bị loại bỏ ra Nhưng các ký tự đó lại rất quan trọng vì các con số bị môhình CRAFT [3] loại bỏ có thể là các con số chỉ số lượng của loại thuốc nào đó Vì vậy, Chúngtôi cần phải bảo toàn bản đồ nhiệt nhưng vẫn hạn chế các giá trị nhiễu để tăng độ chính xác củamô hình Ngoài ra, mô hình CRAFT [3] được thiết kế để phát hiện từng từ trong ảnh Nếu ta lấy

Ngày đăng: 22/05/2024, 11:06