Tải bản đầy đủ (.docx) (16 trang)

Chương 5 Xử lý ảnh số và OpenCv.docx

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 (555.15 KB, 16 trang )

Chương 5 Xử lý ảnh số và OpenCv
———————————————————————————————————
Chương 5
XỬ LÝ ẢNH VÀ OPENCV
5.1 CƠ BẢN VỀ XỬ LÝ ẢNH SỐ :
5.1.1 Giới thiệu về hệ thống xử lý ảnh :
Xử lý ảnh là một lĩnh vực mang tính khoa học và công nghệ. Nó là một ngành khoa học
mới mẻ so với các ngành khoa học khác nhưng tốc độ phát triển của nó rất nhanh, kích thích
các trung tâm nghiên cứu ứng dụng, đặc biệt là máy tính chuyên dụng cho nó.
Xét các bước trong hệ thống xử lý ảnh số. Đầu tiên ảnh từ thế giới bên ngoài được thu
nhận qua các thiết bị thu ảnh như camera, máy chụp ảnh. Trước đây ảnh thu được qua
camera là ảnh tương tự nhưng gần đây với sự phát triển của công nghệ, ảnh màu hay ảnh
đen trắng lấy được từ camera sau đó được chuyển trực tiếp thành ảnh số tạo thuận lợi cho
xử lý tiếp theo. Mặt khác ảnh có thể thu được từ vệ tinh hoặc máy quét ảnh. Hình dưới đây
mô tả các bước quan trọng trong xử lý ảnh :
Hình 5.1 Các bước cơ bản trong xử lý ảnh
Sơ đồ này bao gồm các phần sau :
a) Phần thu nhận ảnh ( Image Acquisition)
Ảnh có thể được nhận qua camera màu hay đen trắng. Thường ảnh nhận được qua
camera là ảnh tương tự ( loại camera ống chuẩn CCIR với tần số 1/25, mỗi ảnh 25 dòng) hay
camera đã số hóa ( như lọai CCD, Change Couple Device) là loại photodiode tạo cường độ
sáng tại mỗi điểm ảnh.
Camera thường là loại quét dòng; ảnh tạo ra là ảnh hai chiều. Chất lượng của ảnh phụ
thuộc vào chất lượng thiết bị thu và môi trường.
b) Tiền xử lý (Image Pre-processing)
Sau bộ thu nhận ảnh có thể bị nhiễu hoặc có độ tương phản thấp nên cần đưa vào bộ tiền
xử lý để nâng cao chất lượng. Chức năng của bộ tiền xử lý là lọc nhiễu, nâng cao độ tương
phản,…
c) Phân đoạn (Segmentation) hay phân vùng ảnh
Robot tránh chướng ngại vật - GVHD: TS.Nguyễn Đức Thành Trang 1
Phân vùng ảnh là tách một ảnh đầu vào thành các vùng thành phần để biểu diễn phân


tích, nhận dạng ảnh, ví dụ như khoanh vùng khuôn mặt để nhận dạng, khoanh vùng mã vạch
để đọc code. Đây là phần phức tạp và khó khăn nhất trong xử lý ảnh và cũng dễ gây lỗi làm
mất độ chính xác của ảnh.
d) Biểu diễn ảnh :
Đầu ra ảnh sau khi phân đoạn chứa các điểm ảnh ( ảnh đã phân đoạn ) cộng với mã liên
kết các vùng lân cận. Việc biến đổi các số liệu này thành dạng thích hợp là cần thiết cho các
xử lý tiếp theo bằng máy tính. Việc chọn các tính chất để thể hiện ảnh gọi là trích chọn đặc
trưng (Feature Selection) gắn với việc tách đặc tính của ảnh dưới dạng các thông tin định
lượng hoặc làm cơ sở để phân biệt lớp đối tượng này với lớp đối tượng khác trong phạm vi
ảnnh nhận được. Ví dụ trong nhận dạng chữ viết trên bì thư, ta phân biệt đặc trưng của kí tự
này so với kí tự khác.
e) Nhận dạng và giải thích ảnh ( Image Recognition and Interpretation)
Nhận dạng ảnh là quá trình xác định ảnh. Quá trình được thực hiện nhờ so sánh với mẫu
chuẩn đã được học hoặc lưu từ trước. Giải thích là phán đoán theo ý nghĩa trên cơ sở nhận
dạng. Ví dụ một loạt chữ số và nét gạch ngang trên bì thư có thể phán đoán là mã điện thoại.
Theo lý thuyết về nhận dạng, các mô hình toán học về ảnh được phân loại theo hai loại nhận
dạng ảnh cơ bản:
 Nhận dạng theo tham số
 Nhận dạng theo cấu trúc
Một số đối tượng nhận dạng ảnh khá phổ biến hiện nay là nhận dạng kí tự ( chữ in, chữ
viết tay, chữ kí điện tử), nhận dạng vân tay, nhận dạng mã vạch, nhận dạng mặt người.
f) Cơ sở tri thức
Như đã nói ở trên, ảnh là một đối tượng khá phức tạp về đường nét, độ sáng tối, dung
lượng điểm ảnh, môi trường để thu ảnh phong phú kéo theo nhiễu. Trong nhiều khâu xử lý
và phân tích ảnh, ngòai việc đơn giản hóa các phương pháp toán học đảm bảo cho việc xử
lý, người ta mong muốn bắt chước quy trình tiếp nhận và xử lý ảnh theo cách của con người.
Vì vậy ở đây các cơ sở tri thức được phát huy.
5.1.2 Các khái niệm cơ bản
 Phần tử ảnh:
Ảnh trong thực tế là một ảnh liên tục về không gian và giá trị độ sáng. Để có thể xử lý

bằng máy tính cần thiết phải đưa về dạng ảnh số. Trong quá trình số hóa, người ta biến
đổi tín hiệu liên tục sang tín hiệu rời rạc thông qua quá trình lấy mẫu ( rời rạc hóa không
gian) và lượng tử hóa thành phần giá trị ( rời rạc hóa biên độ giá trị) mà về nguyên tắc
mắt thường không phân biệt được hai điểm kề nhau. Trong quá trình này người ta sử
dụng một khái niệm là Picture Element mà ta quen gọi là pixel.
Pixel là một điểm trên dữ liệu ảnh, các pixel được sắp xếp thành một mảng 2 chiều và
được biểu diễn bằng các chấm hay ô vuông. Mỗi pixel là một kết quả lấy mẫu của ảnh
Chương 5 Xử lý ảnh số và OpenCv
———————————————————————————————————
gốc, và càng nhiều mẫu thì việc biểu diễn ảnh càng chính xác hơn. Giá trị của của mỗi
pixel bao gồm tọa độ và giá trị màu sắc tùy vào ảnh nhị phân, ảnh xám hay ảnh màu.
Hình 5.2 Biểu diễn ảnh bằng pixel trong ảnh đơn sắc, nửa bên trái là dữ liệu
ảnh, nửa bên phải là phần ảnh hiển thị, mỗi pixel biểu diễn bằng 1 bit
 Độ phân giải ảnh :
Độ phân giải ảnh ( resolution) là mật độ điểm ảnh ấn định trên một ảnh số được hiển
thị. Theo định nghĩa, khoảng cách giữa các điểm ảnh phải được chọn sao cho mắt người
vẫn thấy được sự liên tục của ảnh.
Ví dụ độ phân giải ảnh trên màn hình CGA ( Color Graphic Adapter) là một lưới điểm
theo chiều ngang màn hình: 320 điểm chiều dọc * 200 điểm ảnh (320x200) . Rõ ràng
cùng một độ phân giải thì màn hình 12’’ ta nhận thấy mịn hơn màn hình 17’’. Lý do là
cùng một mật độ ( độ phân giải ) thì diện tích màn hình rộng hơn thì độ mịn ( liên tục
các điểm kém hơn).
 Ảnh xám và ảnh màu :
Mức xám của ảnh số hay ảnh xám là trong đó giá trị của mỗi pixel là một giá trị đơn,
chỉ mang một thông tin về cường độ. Ảnh xám còn được gọi là ảnh trắng đen với giá trị
biến thiên từ đen với cường độ yếu nhất đến trắng với cường độ cao nhất. Ảnh xám khác
với ảnh trắng đen một bit với chỉ hai giá trị trắng và đen, trong khi ảnh xám có các giá trị
trung gian giữa trắng và đen.
Ảnh xám thu được từ việc đo cường độ ánh sáng mỗi pixel tại một tần số nhất định
trong dãy quang phổ ánh sáng, do đó nó được gọi là ảnh đơn sắc..

Ảnh xám được mã hóa bởi n bit sẽ có là 2
n
mức, đi từ đen (mức 0) tới trắng (mức 2
n

1). Các mức từ 1 đến 2
n
– 2 biểu diễn các sắc độ xám khác nhau.
Hình 5.3 Thang màu xám
Ảnh màu là ảnh mà mỗi pixel chứa 3 kênh màu: Đỏ (Red), Lục (Green) và Lam (Blue)
(hay còn gọi là hệ màu RGB). Cũng như ảnh xám, mỗi kênh màu trong ảnh màu có thể
Robot tránh chướng ngại vật - GVHD: TS.Nguyễn Đức Thành Trang 3
được mã hoá n bit cho mỗi kênh. Như vậy 1 pixel sẽ được mã hoá bởi 3*n bit. Do đó
dung lượng ảnh màu sẽ lớn hơn 3 lần so với ảnh xám có cùng mức mã hoá.
Hình 5.4 Ví dụ về việc chia ảnh màu RBG thành các kênh màu và ảnh xám tương đương
của mỗi kênh màu.
 Mẫu dương và mẫu âm :
Mẫu dương là những hình ảnh chứa đối tượng cần được xác định. Mẫu âm là những
hình ảnh không chứa đối tượng cần được xác định.
Hình 5.5 Một số mẫu dương dùng trong việc phát hiện khuôn mặt
Chương 5 Xử lý ảnh số và OpenCv
———————————————————————————————————
Hình 5.6 Một số mẫu âm dùng trong việc phát hiện khuôn mặt
 Histogram và cân bằng histogram :
Histogram là một xấp xỉ rời rạc của hàm phân phối xác suất biến ngẫu nhiên. Trong
ảnh xám, histogram là sự tính toán số pixel có cùng một giá trị trên gray-scale, tức là tìm
ra sự phân bố mức xám trong ảnh. Quá trình tính toán như sau:
 Đối với một ảnh B bit, khởi động counter với giá trị 0
 Quét qua tất cả cácpixel (x,y)
 Khi f(x,y) = I, tăng giá trị cho counter thứ i

Việc cân bằng histogram là để tăng độ tương phản của ảnh số, thường nằm ở khâu tiền
xử lý, giúp cho các thuật toán có thể dễ dàng nhận diện các đặc tính có trong ảnh như
nhận dạng khuôn mặt, phát hiện biên,… Việc này rất hữu ích khi mà phần đối tượng
( foreground) và phần nền ( background) cùng sáng hoặc cùng tối. Tuy nhiên việc cân
bằng histogram có thể gây nên những hiệu ứng không mong muốn, đôi khi nó có thể
tăng độ phân giải phần tín hiệu nhiễu và làm giảm phần đối tượng trong ảnh.
Phương pháp cân bằng histogram có đưa ra một khái niệm hàm phân phối tích lũy
( cumulative distribution function) , giá trị hàm này tại mỗi này tại mỗi giá trị mức xám
bằng tổng các pixel có mức xám nhỏ hơn hoặc bằng giá trị đó. Để ý là sau khi cân bằng
thì phân phối tích lũy có dạng tuyến tính.
Robot tránh chướng ngại vật - GVHD: TS.Nguyễn Đức Thành Trang 5
Obj293


Hình 5.7 Ảnh trước và sau khi cân bằng histogram. Đường thẳng trong đồ thị
histogram là hàm tích lũy.
5.2 NHẬN DẠNG KHUÔN MẶT VỚI THUẬT TOÁN ADABOOST
Giới thiệu
Mục tiêu của quá trình nhận dạng là phân loại phân loại ảnh nhận được dựa trên giá trị
của các thuộc tính đơn giản. Có nhiều lý do để đưa đến việc dùng các thuộc tính thay cho phân
tích trên các pixel, lý do chính đó là các thuộc tính có thể được dùng để mã hóa thành dạng kiến
thức học mà nếu thực hiện dựa trên pixel sẽ chậm hơn rất nhiều. Paul Viola và Michael Johns
đã trình bày một phương pháp phát hiện khuôn mặt bằng cách áp dụng chuỗi phân loại với thuật
toán Adaboost trong bài báo "Rapid Object Detection using a Boosted Cascade of Simple
Features " [4].

×