Tải bản đầy đủ (.pdf) (26 trang)

báo cáo project i nhận dạng ký tự viết tay bằng công nghệ ocr

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.91 MB, 26 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG--- ---

BÁO CÁO PROJECT I

nghệ OCR

Giảng viên hướng dẫn: Th.S Lê Đức TrungSinh viên thực hiện: Nguyễn Việt Hòa-20207673

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

Lời nói đầu

Bài báo cáo này trình bày một đánh giá tổng quan về Nhận dạng ký tự viết tay(HCR). Nhận dạng ký tự viết tay đã được áp dụng trong nhiều ứng dụng như lĩnhvực Ngân hàng, ngành chăm sóc sức khỏe và nhiều tổ chức xử lý các tài liệu viếttay. Nhận dạng ký tự viết tay là quá trình chuyển đổi văn bản viết tay thành dạngcó thể đọc được bằng máy. Đối với các ký tự viết tay, có những khó khăn cụ thểnhư các kí tự khác nhau giữa người viết này với người khác, ngay cả khi cùng mộtngười viết cùng một ký tự thì vẫn có sự khác biệt về hình dạng, kích thước và vị trícủa ký tự. Nghiên cứu mới nhất trong lĩnh vực này đã sử dụng các loại phươngpháp, bộ phân loại và tính năng khác nhau để giảm độ phức tạp của việc nhận dạngvăn bản viết tay.Trong bài báo cáo này, em sẽ sử dụng công nghệ OCR (viết tắt củacụm từ Optical Character Recognition), đây là phần mềm nhận dạng ký tự quanghọc, được áp dụng để nhận dạng các ký tự trên một file ảnh chụp hoặc pdf, sau đótrích xuất các trường thơng tin trên hình ảnh và lưu trữ dưới dạng text nhằm số hóatài liệu, cụ thể là các thơng tin, dữ liệu trên ảnh chụp đó ...

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

MỤC LỤC

<small>3.1.3 Mạng neuron nhiều lớp và giải thuật lan truyền ngược13</small>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

CHƯƠNG 1: GIỚI THIỆU BÀI TỐN

1.1 OCR là gì?

-Nhận dạng kí tự quang học (Optical Character Recognition – OCR) là lĩnh vựcnghiên cứu cách chuyển đổi ảnh số được chụp hay quét từ tài liệu viết tay, đánhmáy hay in thành dạng văn bản máy tính có thể hiểu được.

-Trên thế giới, cơng nghệ OCR đã có những tác động sâu sắc đến nhiều lĩnh vựctrong sản xuất và đời sống. Việc chuyển các văn bản in trên giấy thành dạng điệntử nhỏ gọn và dễ tìm kiếm giúp hàng triệu trang sách báo đến được với bạn đọckhắp nơi trên thế giới. Bằng cách kết hợp với phần mềm text-to-speech lượng tàiliệu này có thể được đọc thành tiếng cho những người khiếm thị. Nhiều bưu điệnđã áp dụng hệ thống phân loại thư tự động dựa trên máy đọc bì thư có cài phầnmềm OCR. Các ngân hàng đọc nội dung của séc để chống rửa tiền, gian lận và cảphát hiện khủng bố. OCR còn đi vào đời sống hàng ngày qua những thiết bị thôngtin cá nhân (PDA) giúp người sử dụng nhập dữ liệu bằng cách viết lên màn hìnhcảm ứng thay vì đem theo bộ bàn phím cồng kềnh.

-Ở Việt Nam, công nghệ OCR mới chỉ phát triển ở giai đoạn đầu với một vài bộphần mềm nhận dạng kí tự in như VnDOCR, VietOCR, ABBYY trong khi đó lĩnhvực nhận dạng chữ viết tay vẫn cịn bỏ ngỏ.

-Với số lượng lớn tài liệu viết tay cần được xử lí cũng như sự phát triển của cơngnghệ di động và PDA đây là một hướng nghiên cứu đầy triển vọng.

-Quá trình OCR gồm nhiều bước như phân tích cấu trúc văn bản, tách dạng, tách kí

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

này địi hỏi phải có thao tác can thiệp thủ cơng và cũng có thể khá buồn tẻ và lềmề.

-Hơn nữa, việc số hóa nội dung tài liệu này sẽ tạo ra các tệp hình ảnh với văn bảnẩn bên trong. Không thể xử lý văn bản trong hình ảnh bằng phần mềm xử lý vănbản theo cách giống như đối với tài liệu văn bản. Công nghệ OCR giải quyết vấnđề này bằng cách chuyển đổi hình ảnh văn bản thành dữ liệu văn bản mà phầnmềm kinh doanh khác có thể phân tích. Sau đó, bạn có thể sử dụng dữ liệu để tiếnhành phân tích, hợp lý hóa hoạt động, tự động hóa các quy trình và cải thiện năngsuất.

1.3 Một số ứng dụng thực tiễn của công nghệ OCRa. Hỗ trợ cuộc sống của người già, người khiếm thị

Vào những năm 1970, công ty Kurzweil Computer Products Inc của Mỹ đã cho rađời hệ thống phông chữ Omni đầu tiên trên thế giới. Phần mềm OCR có khả năngnhận dạng phơng chữ này. Ngay lập tức, cơng nghệ OCR đã được tích hợp vớicơng nghệ tổng hợp giọng nói (giọng máy), giúp máy có khả năng đọc hiểu vănbản.

Nói cách khác, văn bản khơng chỉ được phần mềm OCR giải mã, mà cịn đượccơng cụ tổng hợp giọng nói đọc ra thành tiếng. Giọng nói vi tính hóa đã được ứngdụng vào việc đọc văn bản trong sách, báo, tạp chí cho người cao tuổi, ngườikhiếm thị, giúp cuộc sống của họ trở nên nhẹ nhàng hơn.

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

b. Sắp xếp tài liệu trong các cơng ty luật và tồ án

Trong mỗi vụ án, các giấy tờ tài liệu pháp lí, hồ sơ rất nhiều và phức tạp. Để đảmbảo không bỏ sót bất kì chi tiết, giấy tờ nào quan trọng, luật sư phải sắp xếp và tìmkiếm mất rất nhiều thời gian.

Nhờ phần mềm OCR, các luật sư có thể số hóa tất cả các văn bản một cách vơcùng nhanh chóng. Khi cần, họ dễ dàng tìm tài liệu theo từ khoá, ngày tháng, têntệp… một cách đơn giản, tiện lợi và khoa học. Điều này đồng nghĩa với việc, luậtsư khơng phải th nhiều trợ lí để thực hiện các nhiệm vụ thủ công, mà vẫn đảmbảo giám sát được cơng việc.

c. Bảo tồn các văn bản có giá trị

Các thư viện cổ, trung tâm văn hóa lịch sử hay viện bảo tàng… là những nơi lưutrữ rất nhiều các bản thảo, tài liệu, hồi kí… Q trình cất giữ và bảo quản những tàiliệu này không hề đơn giản. Chúng rất dễ bị mối mọt và hư hại theo thời gian. Việcnhập liệu thủ cơng chính xác và đầy đủ lượng văn bản khổng lồ đấy là điều vơcùng khó khăn và vất vả, có thể mất tới hàng chục năm.

Tuy nhiên, công nghệ OCR ra đời đã giúp nhiều tổ chức giải quyết bài tốn đó mộtcách đơn giản hơn. Các văn bản, tài liệu quan trọng được chuyển đổi từ dạng giấysang file mềm, giúp việc lưu trữ và bảo tồn nhiều di sản văn học trở nên dễ dànghơn.

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

d. Nhận dạng cá nhân

Khi đăng kí mở tài khoản ngân hàng, mở thẻ thành viên hay bất kì một hành độngnào cần phải xác minh danh tính, bạn đều phải cung cấp thông tin cá nhân đúng vàđầy đủ với các bên đối tác. Quá trình kê tờ khai mất kha khá thời gian của bạn vàbên làm dịch vụ. Đôi khi, nhập liệu sai dẫn đến những rắc rối không đáng có vềsau.

Với phần mềm OCR, các tài liệu pháp lí như chứng minh nhân dân, hộ chiếu, bằnglái xe và nhiều loại giấy tờ khác đều có thể được qt nhanh chóng bởi các vănphịng cơng chứng, phịng cảnh sát, sân bay và nhiều tổ chức, dịch vụ cần xử líthơng tin cá nhân. Đối với các giấy tờ tùy thân khơng q nhiều kí tự, cơng nghệOCR có khả năng nhận dạng chính xác gần như tuyệt đối, giảm thiếu tối đa lỗinhập liệu. Hơn thế nữa, việc nhận dạng và trích xuất thơng tin bằng máy giúp cáccơ quan, đơn vị, tổ chức dễ dàng lưu trữ thơng tin và có thể truy xuất thơng tinngười dùng bất cứ lúc nào.

e. Xử lí hóa đơn và nhiều loại chứng từ

Tất cả các cơ quan, tổ chức đều có hàng nghìn các loại giấy tờ, tài liệu, với nhiềuđịnh dạng khác nhau như các văn bản in/viết tay trên giấy, file PDF, JPG… Cácnhân viên khó có thể nhập tất cả các dữ liệu đó vào hệ thống, hoặc phải tốn rấtnhiều thời gian để xử lí khối lượng giấy tờ khơng hồi kết đó. Hơn thế, xác suất saisót trong nhập liệu khá lớn.

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Nhiều cơ quan, tổ chức chọn giải pháp chuyển đổi các hợp đồng, hóa đơn, chứngtừ và nhiều loại giấy tờ khác thành văn bản dưới dạng kĩ thuật số, để tiện sử dụngdữ liệu đó cho các báo cáo tài chính, lưu trữ hay trao đổi tài liệu. Và phần mềmOCR là sự lựa chọn tuyệt vời.

● Hiện nay, hơn 60% các cơng ty lớn trên tồn thế giới đã sử dụng OCR đểnhập dữ liệu cho nhiều bước trong quy trình hoạt động của doanh nghiệp.Cơng nghệ OCR cho phép các công ty tự động lưu trữ dữ liệu vào hệ thống,dễ dàng tích hợp, chuyển đổi hay liên kết đến một nền tảng khác như quaemail, fax hoặc EDI truyền thống.

● Công nghệ OCR ngày càng trở nên phổ biến bởi những tiện ích mà nó manglại cho cả các cơ quan tổ chức cũng như người dùng. Trong tương lai khơngxa, OCR sẽ được tích hợp với rất nhiều công nghệ tiên tiến khác, để tạo ranhững sản phẩm đột phá phục vụ nhiều hoạt động của con người.● Ở Việt Nam, một trong những sản phẩm được tích hợp phần mềm OCR

tiếng việt có tính chính xác cao nhất trên thị trường đó là FPT.AI Reader,được phát triển bởi Ban cơng nghệ, thuộc tập đồn FPT. Đây là giải phápnhận dạng và trích xuất thơng tin trên các giấy tờ tùy nhân như chứng minhnhân dân, giấy phép lái xe, hộ chiếu… có độ chính xác lên đến 98%, dẫn đầuthị trường về chất lượng nhận diện.

● Ngồi ra, cơng nghệ OCR của FPT.AI cịn có khả năng nhận dạng và tríchxuất thơng tin trên các loại giấy tờ như hóa đơn, hợp đồng và nhiều yêu cầuriêng tùy nhu cầu của từng đối tác. FPT.AI Reader giúp các doanh nghiệp sốhóa giấy tờ và nhận diện thơng tin khách hàng nhanh chóng. Nhờ có OCR,thời gian nhập liệu được rút ngắn, thơng tin có độ chính xác cao, giúp tiếtkiệm thời gian, cơng sức và chi phí hoạt động.

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

CHƯƠNG 2: MƠ TẢ BÀI TỐN

2.1 Mơ tả

- Giả thiết rằng ở bước xử lí trước kí tự đã được phân lập, kết quả là các ảnh nhịphân kích thước 60x80 mỗi ảnh chứa một kí tự trong đó các kí tự có độ nghiêngkhơng q lớn và kích thước hợp chuẩn với sai số chấp nhận được, cần chuyển kítự thành dạng mã hố Unicode.

- Chuẩn kích thước của chữ cái:

• ascender height: trùng với cạnh trên của ảnh.• cap height: trùng với cạnh trên của ảnh.• median: 1/3 chiều cao ảnh.

• baseline: 4/5 chiều cao ảnh.

• descender height: trùng với cạnh dưới của ảnh.• chiều rộng: xấp xỉ chiều rộng ảnh.

Như vậy có nghĩa là chương trình sẽ khơng xử lí những chữ cái có kích thước qnhỏ, q nghiêng lệch hay biến dạng quá mức. Các chữ cái như thế giả thiết đãđược đưa về dạng chuẩn (với sai số chấp nhận được) ở bước xử lí trước.2.2 Sơ lược về giải pháp

Giải thuật thường dùng cho bài toán này là mạng nơ-ron lan truyền ngược. Em dựđịnh sử dụng kĩ thuật này với 1-2 lớp ẩn, mỗi đầu ra là một kí tự trong bảng mãUnicode . Số lượng đầu ra có thể nhân lên với số dạng chữ cần được hỗ trợ

. Ảnh đầu vào được tiền xử lí sử dụng mơ tả Fourier đểgiảm số lượng đầu vào và tăng độ chính xác.

2.3 Sơ lược về phần mềm cần xây dựngGiao diện gồm 2 phần:

-Phần hình đã có sẵn kí tự đã viết

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

-Phần ơ vng màu xanh nhận diện kí tự đã viết trên hình

Ngồi ra chương trình có thể có chức năng nạp ảnh chứa kí tự từ tập tin ngồi(sẽphát triển trong thời gian tới).

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

CHƯƠNG 3: GIẢI QUYẾT BÀI TỐN

Chương trình “Nhận dạng ký t vi t tay” s d ng mơ hình m ng neuronự ế ử ụ ạvà thu t toán lan truy n ng c. Sau đây là chi ti t v ph ng pháp này.ậ ề ượ ế ề ươ3.1 Cơ sở lý thuyết

3.1.1 Mạng neuron

● Mạng neuron nhân tạo (artificial neural network) là m t mơ hình tốn h cộ ọhay mơ hình tính tốn l y c m h ng d a trên c u trúc c a m ng th n kinh.ấ ả ứ ự ấ ủ ạ ầMột mạng neuron bao gồm các nhóm neuron được nối với nhau, trên cơ sởđó thơng tin đ c x lýượ ử

● Mơ hình m ng neuron nhân t o th ng đ c áp d ng v i các bài toán nh nạ ạ ườ ượ ụ ớ ậdạng, đặc biệt với các bài tốn có nhiều biểu diễn hình ảnh.

● Cùng v i gi i thu t lan truy n ng c, mớ ả ậ ề ượ ạng neuron thích h p v i các bàiợ ớtoán mang các đ c đi m sau:ặ ể

✔ Một thể hiện được biểu diễn bởi nhiều cặp giá tr .ị

✔ Hàm m c tiêu đ u ra có th có giá tr r i r c, giá tr th c ho cụ ầ ể ị ờ ạ ị ự ặmột vector giá tr r i r c ho c giá tr thị ờ ạ ặ ị ực.

✔ Các ví d h c có th có l iụ ọ ể ỗ

✔ Thời gian huấn luyện dài là ch p nh n đấ ậ ược.

✔ Có th yêu c u s ti n hóa nhanh c a hàm m c tiêu c n h cể ầ ự ế ủ ụ ầ ọ✔ Khả năng con người hiểu hàm mục tiêu cần học là không quan

tr ng.ọ

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

o x ,…x( <small>1n</small>)= 1 if w<small>0</small>+w x +w x +…+w x >0<small>1 12 2n n</small>-1 otherwise

vỡi mỗiw<small>i</small>là một hằng giá trị thực, hay trọng số, quyết định sự đóng góp của đầuvào x<small>i</small>vào đầu ra của perceptron. Giá trịw0là một ngưỡng để tổ hợp giữa trọng sốvà đầu vàow x<small>1 1</small>+ … + w<small>n n</small>x phải vượt qua để perceptron cho ra giá trị 1

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

perceptron phân loại các ví dụ học chính xác. Trọng số thay đổi sau mỗi bước theonguyên tắc huấn luyện perceptron như sau:

c. Sai số huấn luyện (training error)Sai số thường được xác định bằng công thức:

<small>●</small> Hàm sigmoid:<small>●</small> o x( ) =σ(w ⋅ )x● σ(y) = <sup>1</sup>

<small>1+ 𝑒</small><sup>−𝑦</sup>

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

✔ Lớp hidden: Là các lớp ẩn ở giữa, có nhiệm vụ tính tốn.

✔ Lớp output: Là đầu ra của bài toán.

=>Số neuron ở lớp input và output thường xác định với các bài toán, tuy nhiên sốlớp hidden và số neuron ở mỗi lớp hidden cần xác định bằng thực nghiệm.c. Gi i thu t backpropagationả ậ

BACKPROPAGATION(training_example, η, n , n , n<small>inouthidden</small>)

Mỗi ví dụ học là một cặp có dạng (x,t) ới x là vector đầu vào và t là vectorvmục tiêu.

η là t c đ h c. n , n , nố ộ ọ <small>inouthidden</small>lầ ượn l t là s neuron l p input, ouput và hidden.ố ở ớĐầu vào t neuron i đ n neuron j ký hi u là xji, và tr ng s t neuron i đ n neuronừ ế ệ ọ ố ừ ếj ký hi u là wji.ệ

▪ Tạo một mạng feedforward với n input neuron, n ouput neuron, n<small>inouthidden</small>hidden neuron.

▪ Khởi tạo trọng số là các giá tr ng u nhiên nh (VD gi a -.05 và .05)ị ẫ ỏ ữ▪ Cho đến khi thỏa mãn điều kiện kết thúc:

Với mỗi (x,t) thuộc ví dụ học:

1. Cho giá trị đầu vào và tính tốn giá trị đầu ra của mỗi neuron.x oLan truyền sai số ngược lại mạng:

2. Với mỗi neuron k ở lớp output, tính sai số δ<small>k</small>δ<small>k</small>= o<small>k</small>(1 − o t<small>k</small>)(<small>k</small>− o<small>k</small>)

3. Với mỗi neuron h ở lớp hidden, tính sai số δ<small>h</small>δ<small>k</small>= o<small>h</small>(1 − o<small>h</small>)

4. Cập nhật lại mỗi trọng số wjiw<small>ji</small>=w<small>ji</small>+Δw<small>ji</small>với

Δw<small>ji</small>= ηδ<small>j</small>x<small>ji</small>

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

d. Momentum

Một cách phổ biến để thay đổi nguyên tắc cập nhật trọng số trong thuật toán là làmcho cập nhật trọng số trong vòng lặp thứ n phụ thuộc một phần vào lần cập nhậtthứ (n - 1) như sau:

Δw n<small>ji</small>( ) =ηδ<small>j</small>x<small>ji</small>+ α wΔ <small>ji</small>(n −1)0 ≤α< 1 là một hằng số gọi là momentum.

3.2 Giải quyết bài tốn3.2.1 Chương trình

➢ Input: Là một ảnh nhị phân của chữ cần nhận dạng.➢ Ouput: Ký tự đã được nhận dạng.

➢ Chương trình gồm chức năng vẽ (sẽ phát triển trong tương lai) và lấy ảnh từbên ngoài để nhận dạng.

3.2.2 Khởi tạo mạng neuron● Lớp input: Gồm 60 đầu vào.

60 đầu vào được lấy bằng cách tách biên ảnh thành chuỗi Fourier, lấy nhiềunhất 6 thành phần liên thông và 10 giá trị của chuỗi Fourier với mỗi thànhphần.

● Lớp output: Gồm 16 đầu ra.

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

✔ Các mẫu sau khi scan được xử lý thành ảnh nhị phân và tách sẵn thànhcác thành phần đầu ra và đầu vào tương ứng để huấn luyện và kiểm tra.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

3.2.4 Các kết quả thực nghiệma.Số lớp hidden

Mạng neuron với 3 lớp ẩn có xác suất nhận dạng đúng tương đương với mạng có 2lớp ẩn nhưng có error nhỏ hơn 1 chút .Thời gian training của mạng tăng khá nhanhkhi số lớp hidden tăng từ 0 đến 3

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

Khi số neuron lớp ẩn vượt qua 80 thì tăng số neuron khơng tác động nhiều đến kết quả.Với mạng 150 neuron mỗi lớp ẩn, kết quả thấp hơn hẳn do không thoả mãn điều kiệndừng giống như phần a.

c. Tốc độ học

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

d. Momentum

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

● Số lớp hidden: 3● Tốc độ học: 0.5● Momentum: 0.6f. Kết quả huấn luyện

● Tỉ lệ nhận dạng đúng: 49%● Tổng lỗi khi validate: ~0.33● Số bước lặp: 2338

Thử nghiệm với bộ dữ liệu đầy đủ

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

Tỉ lệ về sự mất mát và độ chính xác sau khi training model

<small>g. Kết quả chạy thực nghiệm</small>

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<small>Tỉ lệ % độ chính xác các chữ cái đã được nhận diện</small>

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

CHƯƠNG 4: ĐÁNH GIÁ VÀ ĐỊNH HƯỚNG PHÁT TRIỂN

4.1 Đánh giáa.Ưu điểm

Một điểm mạnh của OCR để nhận dạng chữ viết tay là khả năng nhận dạng nhanhchóng và chính xác nhiều kiểu chữ viết tay khác nhau. Phần mềm OCR được thiếtkế để có thể xử lý một loạt các kiểu chữ viết tay, bao gồm in, chữ thảo và kịch bảnhỗn hợp. Điều này làm cho nó trở thành một cơng cụ hữu ích cho các tác vụ nhưsao chép ghi chú viết tay hoặc trích xuất dữ liệu từ các biểu mẫu viết tay.Một điểm mạnh khác của OCR để nhận dạng chữ viết tay là khả năng xử lý cácbiến thể về chất lượng chữ viết tay. Phần mềm OCR thường được thiết kế để có thểnhận dạng chữ viết tay có thể viết kém, mờ dần hoặc khó đọc. Điều này làm cho nótrở thành một cơng cụ hữu ích cho các tác vụ như số hóa các tài liệu viết tay cũ.b.Nhược điểm

Tuy nhiên, OCR cũng có một số hạn chế khi nói đến nhận dạng chữ viết tay. Mộtđiểm yếu là nó có thể gặp khó khăn trong việc nhận dạng chính xác chữ viết tay rấtkhác so với phong cách viết tay mà nó đã được đào tạo. Đây có thể là một vấn đềcụ thể với các kiểu chữ viết tay khác thường hoặc rất đặc biệt, chẳng hạn nhưnhững kiểu chữ rất lớn hoặc nhỏ, hoặc sử dụng các hình thức chữ cái độc đáo.Một điểm yếu khác của OCR đối với nhận dạng chữ viết tay là nó có thể nhạy cảmvới các biến thể về chất lượng của hình ảnh được quét. Nếu hình ảnh quá mờ hoặc

</div>

×