2 S(x, y), với S là giá trị biên độ (được biểu diễn bằng màu sắc) tại vị trí không gian (x, y). Phân loại ảnh: − Ảnh tương tự S(x, y): (x, y) liên tục, S liên tục. − Ảnh số S(m,n): (m,n) rời rạc, S rời rạc. Một ảnh (gồm một tập các điểm ảnh) có thể xem như bao gồm tập các ảnh con (các vùng ảnh). Thuật ngữ gọi là ROIs – vùng quan tâm. Ảnh số trong không gian rời rạc thu được từ ảnh tương tự trong không gian liên tục thông qua quá trình số hóa. Quá trình số hóa có thể hiểu đơn giản như sau: + Ảnh tương tự được chia thành M hàng, N cột. + Giao của hàng và cột được gọi là: pixel + Giá trị biên độ của pixel tại tọa độ nguyên (m, n) là s (m, n): là trung bình độ sáng trong pixel đó. S (m, n) ≤ L (L số mức xám dùng biểu diễn ảnh). M, N thường được chọn là M=N=2K (K=8, 9, 10). L =2B, B là số bít mã hóa cho độ sáng (biên độ) mỗi pixel. − Ảnh số được biểu diễn bởi ma trận 2 chiều. Các phần tử của nó là biểu diễn cho các pixel số hóa. − Ta ký hiệu 1 ảnh số là S (M, N). Ta nói ảnh có độ phân giải MxN. Ký hiệu S (m, n) để chỉ ra một phần tử ảnh. 1.1.3 Mức xám. Mức xám là kết quả của sự mã hóa tương ứng với một cường độ sáng của mỗi điểm ảnh với một giá trị số, kết quả của quá trình lượng tử hóa. Cách mã hóa kinh điển là dùng 16, 32 hay 64 mức. Mã hóa 256 mức được dùng phổ biến. Do 28 = 256 nên mỗi pixel được mã hóa bởi 8 bit. 3 1.1.4 Ảnh đen trắng. Thực tế ảnh đen trắng gồm có ảnh nhị phân và ảnh đa cấp xám. Chúng ta phân biệt sự biến đổi thành L mức. Nếu L bằng 2, nghĩa là chỉ có hai mức 0 và 1 còn gọi là ảnh nhị phân. Nếu L lớn hơn hai mức ta có ảnh đa cấp xám. Việc xác định số mức phụ thuộc vào tiêu chí lượng tử hóa. L thường được chọn bằng 32, 64, 128 và 256. Trong đó ảnh đa cấp xám 256 mức là ảnh có chất lượng cao và thường được sử dụng. Với ảnh nhị phân, mỗi pixel được mã hóa trên một bit. Còn với ảnh xám 256 mức được mã hóa trên 1 byte = 8 bit. Ảnh nhị phân khá đơn giản, các phần tử ảnh có thể coi như phần tử logic. Ảnh nhị phân được dùng theo tính logic, để phân biệt ảnh với nền hay đơn giản để phân biệt biên với điểm khác. 1.1.5 Ảnh màu. Màu sắc của một tia sáng là cảm giác mà tia sáng đó gây nên ở mắt người. Màu sắc của vật thể là màu của ánh sáng phát từ chúng. Ánh sáng này nằm trong dải phổ nhìn thấy (visible). Tùy theo ngữ cảnh nhất định mà ảnh màu được diễn tả theo những mô hình màu khác nhau. Không có mô hình màu nào là đầy đủ cho mọi khía cạnh của màu. Do đó người ta sử dụng những mô hình màu khác nhau để mô tả các tính chất được nhận biết khác nhau của màu. Ví dụ: + Mô hình màu RGB: ánh sáng Red, Green, Blue ứng dụng cho màn hình TV. + Mô hình HSV: Nhận thức con người. + Mô hình CYK: Máy in. Chúng ta đi sâu vào một số mô hình màu sau: − Mô hình màu RGB 4 Theo lý thuyết màu do Thomas đưa ra từ năm 1802, mọi màu đều có thể tổ hợp từ ba màu cơ bản: Đỏ (Red), Lục (Green), Lam (Blue). Ba màu này là các màu cơ bản của hệ màu cộng (Additive Color System). Hệ màu RGB dựa trên cơ sở hệ thống tọa độ Cartesian – hệ thống tọa độ Decac: mỗi màu cơ bản đều được mã hóa bởi 8 bit, vậy với ba màu phối hợp nhau tạo thành 2 24 = 16.777.216 màu thứ cấp mà mắt người có thể cảm nhận được. Ảnh màu được lưu trữ từng màu riêng biệt như ảnh đa cấp xám. Ứng với một pixel của ảnh màu sẽ chiếm 3 byte, do đó ảnh màu sẽ chiếm bộ nhớ gấp ba lần ảnh đa cấp xám cùng kích thước. Hình 1.1: Không gian màu và các màu cơ bản. − Mô hình màu CMY: Gồm ba màu cơ bản: Xanh Lơ (Cyan), Tím (Magenta), Vàng (Yellow), là bù màu của không gian màu RGB, còn gọi là hệ màu trừ (Subtractive Color System). Mối quan hệ giữa hai không gian: C=1–R M=1–G Y=1–B 5 Hình 1.2: Các màu cơ bản của hệ màu CMY. − Mô hình màu HSV (Hue, Saturation, Value) : Dựa trên cảm nhận màu sắc của con người. Ánh sáng màu là tổ hợp của ánh sáng đơn sắc. Mắt người chỉ có thể cảm nhận được vài chục màu, song lại có thể phân biệt tới hàng ngàn màu. Mô hình HSV suy diễn từ mô hình RGB: hãy quan sát hình hộp RGB theo đường chéo từ White đến Black (gốc) ta có hình chóp nón, sử dụng làm đỉnh hình nón HSV. − Có ba thuộc tính chủ yếu trong cảm nhận màu: + Hue: bước sóng của ánh sáng, được biểu diển bằng góc từ 0 – 3600 giúp ta phân biệt các màu khác nhau. + Saturation: độ bão hòa, đo độ tinh khiết của ánh sáng gốc. S nằm trong khoảng [0-1]. + Value (brightness): cường độ hay độ chói ánh sáng. V có giá trị trong khoảng [0-1], V = 0 có màu đen. − Mô hình HSV trực giác hơn mô hình RGB. Bắt đầu từ Hue (H cho trước và V=1, S=1). Thay đổi S: bổ sung hay bớt trắng; thay đổi V: bổ sung hay bớt đen đến khi có màu mong muốn. Hình 1.3: Không gian màu HSV 6 1.1.6 Các định dạng cơ bản. − Ảnh BMP (Bitmap): Là ảnh được mô tả bởi một ma trận các giá trị số xác định màu và bảng màu của các điểm ảnh tương ứng khi hiển thị. Ưu điểm của ảnh Bitmap là tốc độ vẽ và tốc độ xử lý nhanh. Nhược điểm của nó là kích thước rất lớn. Cấu trúc lưu trữ của ảnh BMP: File Header Số ý nghĩa Nội dung bytes 2 Tên, Kí hiệu BM 4 Kích thước file ảnh 2 Dự trữ (Không dùng) 0 2 Dự trữ (Không dùng) 0 4 Byte offset in file where image begin (Kích thước vùng 54 Information và Header) Windows 3 Bitmap Header 4 Size of this Header 4 Image width in pixels 4 Image height in pixels 2 Number of iImage planes, must be 1 2 Bits per pixel 40 1, 4, 8, 24 4 Compression type 4 Size in byte of compressed image, or 0 4 Horizontal resolution, in pixels/meter 4 Vertical resolution, in pixels/meter 4 Number of colors used 4 Number of “important” colors 4*n Colors palette Với ảnh 24-bits không có Colors palette 7 Thông tin điểm ảnh lưu trữ ngược với ảnh hiển thị, tức là điểm ảnh ở cuối file ảnh là điểm ảnh sẽ được hiển thị ở góc trên bên trái màn hình và điểm ảnh ở đầu phần dữ liệu của file ảnh sẽ là điểm ảnh hiển thị ở góc dưới bên phải màn hình. Quá trình phát triển của kỹ thuật xử lý ảnh tồn tại nhiều định dạng khác nhau từ ảnh đen trắng IMG cho đén ảnh đa cấp xám, ảnh màu: PCX, GIF, JPEG… − Ảnh IMG: là ảnh đen trắng. Phần đầu của ảnh IMG có 16 byte chứa các thông tin cần thiết của ảnh. Ảnh IMG được nén theo từng dòng. Mỗi dòng bao gồm các gói, các dòng giống nhau cũng được nén thành các gói. Toàn bộ ảnh chỉ gồm có những điểm sáng và điểm tối là các bit 0 hoặc 1. − Ảnh PCX: là một trong những định dạng cổ điển nhất. Nó sử dụng loạt mã dài RLE để nén dữ liệu ảnh. Quá trình nén và giải nén được thực hiện trên từng dòng ảnh. Thực tế phương pháp nén PCX kém hiệu quả hơn kiểu IMG. − Ảnh GIF: có lợi về không gian lưu trữ, với ảnh đen trắng kích thước tệp có thể nhỏ hơn bản gốc từ 5-7 lần; với ảnh 16 màu, kích thước nhỏ hơn ảnh gốc 2-3 lần, có trường hợp xấp xỉ ảnh gốc. Tuy nhiên với ảnh 256 màu thì nó bộc lộ khả năng nén rất kém. 8 − Ảnh JPEG: sử dụng chuẩn nén cho ảnh tone liên tục. Tiêu chuẩn này có thể được ứng dụng trong nhiều lĩnh vực: lưu trữ ảnh, truyền bá báo chí, ảnh y học, camera số. 1.2 Một số kỹ thuật tiền xử lý ảnh . 1.2.1 Chuyển ảnh xám. Ảnh là tập hợp từ rất nhiều điểm ảnh. Với ảnh 24 bít của hệ màu RGB do CIE đề xuất thì mỗi thành phần màu cấu tạo nên điểm ảnh có giá trị thể hiện bởi 8 bít (tức là có 256 giá trị). Mô hình màu RGB sử dụng mô hình bổ sung trong đó ánh sáng đỏ, xanh lá cây và xanh lam được tổ hợp với nhau theo nhiều phương thức khác nhau để tạo thành các màu khác nhau. Đối với ảnh xám, thông thường mỗi pixel mang thông tin của 256 mức xám (tương ứng với tám bít) như vậy ảnh xám hoàn toàn có thể tái hiện đầy đủ cấu trúc của một ảnh màu tương ứng thông qua tám mặt phẳng bít theo độ xám. Bước chuyển từ ảnh màu thành ảnh xám là một công đoạn phổ biến trong các quá trình xử lý ảnh vì nó làm tăng tốc độ xử lý, giảm mức độ phức tạp của các thuật toán trên ảnh. Để chuyển về ảnh đa cấp xám, ta cần làm cho 3 thành phần R,G,B bằng nhau theo cách sau: G=αR+βG+γB với điều kiện α+β+γ=1 Trong đó các giá trị R,G,B lần lượt là các mức độ màu Đỏ, Xanh lá và Xanh biển của pixel màu. Ảnh kết quả 9 Ảnh gốc Ảnh xám Hình 1.4: Chuyển ảnh xám. 1.2.2 Lọc nhiễu. Trong nhiều lĩnh vực kỹ thuật, nhiễu đóng vai trò chủ yếu gây nên những khó khăn khi ta cần phân tích một tín hiệu nào đó. Giữa một ảnh thực và ảnh số hoá thu nhận được khác nhau khá nhiều vì có nhiều quá trình can thiệp vào. Nguyên nhân là do nhiễu điện tử của máy thu hay chất lượng kém của bộ số hoá. Giả sử ảnh là một miền có mức xám đồng nhất, như vậy các phần tử của ma trận biểu diễn ảnh sau quá trình số hoá phải có cùng giá trị. Nhưng thực tế quan sát ta thấy: gần giá trị trung bình của mức xám có những phần tử trội lên khá nhiều. Đó chính là hiện tượng nhiễu. Như vậy nhiễu trong ảnh số được xem như sự dịch chuyển nhanh của tín hiệu thu nhận trên một khoảng cách ngắn. Xem xét một cách tương đương trong không gian tần số, nhiễu ứng với các thành phần tần số cao trong ảnh. Do vậy, người ta nghĩ đến việc biến đổi có tính đến ảnh hưởng của các phần tử lân cận bằng cách lấy “tổ hợp” các điểm lân cận này (trong không gian thực) hay lọc các thành phần tần số cao (trong không gian tần số). Đây chính là kỹ thuật lọc. Trong kỹ thuật này, ta sử dụng một mặt nạ di chuyển khắp ảnh gốc. Tuỳ theo cách tổ hợp điểm đang xét với các điểm lân cận mà có kỹ thuật lọc tuyến tính hay phi tuyến. Điểm ảnh chịu tác động là điểm ở tâm mặt nạ. Bộ lọc tuyến tính Trong kỹ thuật lọc tuyến tính, ảnh thu được sẽ là tổng trọng số hay là trung bình trọng số các điểm lân cận với nhân cuộn hay mặt nạ.Vì có nhiều loại nhiễu can thiệp vào quá trình xử lý ảnh nên cần có nhiều bộ lọc thích hợp. Để làm trơn nhiễu ta sử dụng các mặt nạ thông thấp. 10 Hình 1.5: Mặt nạ thông thấp Lọc trung bình Là kĩ thuật lọc tuyến tính, hoạt động như một bộ lọc thông thấp. Ý tưởng chính của thuật toán là: ta sử dụng một cửa sổ lọc (ma trận 3x3) quét qua lần lượt từng điểm ảnh của ảnh đầu vào input. Tại vị trí mỗi điểm ảnh lấy giá trị của các điểm ảnh tương ứng trong vùng 3x3 của ảnh gốc “lấp” vào ma trận lọc. Giá trị điểm ảnh của ảnh đầu ra là giá trị trung bình của tất cả các điểm ảnh trong cửa sổ lọc. Việc tính toán này khá đơn giản với hai bước gồm tính tổng các thành phần trong cửa sổ lọc và sau đó chia tổng này cho số các phần tử của cửa sổ lọc. Sơ lược một cách ngắn gọn các bước của giải thuật: • Quét cửa sổ lọc lần lượt lên các thành phần của ảnh đầu vào; điền các giá trị được quét vào cửa sổ lọc. • Xử lý bằng cách thao tác trên các thành phần của cửa sổ lọc. • Tính giá trị trung bình các thành phần trong cửa sổ lọc. • Gán giá trị trung bình này cho ảnh đầu ra. Nhận xét: Đây là mạch lọc tuyến tính đơn giản trong tính toán. Ảnh đạt độ trơn mịn. Tuy vậy, nó không hoàn toàn loại bỏ tác dụng của nhiễu, các pixel đơn lẻ (nhiễu) sẽ ảnh hưởng đến giá trị trung bình của các pixel lân cận. Nó cũng làm cho độ sắc nét của ảnh kém cũng như độ tương phản thấp. Ảnh kết quả: 11 Ảnh gốc Ảnh lọc trung bình Hình 1.6: Lọc trung bình Lọc tuyến tính ngoài làm trơn nhiễu còn có thể trích chọn biên (nổi biên). Dễ dàng nhận thấy rằng biên là điểm có độ biến thiên nhanh về giá trị mức xám. Theo quan điểm về tần số tín hiệu, các điểm biên ứng với các thành phần tần số cao. Do vậy, ta có thể dùng bộ lọc thông cao để cải thiện: lọc các thành phần tần số thấp và chỉ giữ lại thành phần tần số cao. Vì thế, lọc thông cao thường được dùng làm trơn biên trước khi tiến hành các thao tác với biên ảnh. Dưới đây là một số mặt nạ dùng trong lọc thông cao: Hình 1.7: Mặt nạ thông cao Bộ lọc phi tuyến Khác với lọc tuyến tính, kỹ thuật lọc phi tuyến coi một điểm ảnh kết quả không phải là tổ hợp tuyến tính của các điểm lân cận. Người ta thường sử dụng 3 bộ lọc đó là: trung vị, giả trung vị và lọc ngoài. a. Lọc trung vị Điểm ảnh đầu vào sẽ được thay thế bằng trung vị các điểm ảnh. Kích thước của sổ cũng được chọn (2k+1)x(2k+1). Lọc trung vị có tác dụng sau: 12 + Hữu ích cho việc loại bỏ các điểm ảnh hay các hàng mà vẫn bảo toàn + Hiệu quả giảm các điểm nhiễu trong cửa sổ lớn hơn hoặc bằng một nửa số điểm trong cửa sổ. Ảnh kết quả: Ảnh gốc Ảnh lọc trung vi Hình 1.8: Lọc trung vị 1.2.3 Nhị phân ảnh. Phân ngưỡng hay còn gọi là nhị phân hóa. Mục đích của phân ngưỡng là chuyển từ ảnh mầu, ảnh đa cấp xám sang ảnh nhị phân (ảnh 2 cấp xám, ảnh đen trắng). Nếu phân ngưỡng hợp lý thì có thể phân biệt được vật thể với nền. Từ đó ảnh hưởng lớn đến các thao tác lựa chọn vật thể đúng hay lẫn cả vào với nền. Giả sử đã chọn được một ngưỡng L thích hợp. Ta thực hiện việc sau: • Nếu điểm ảnh có mức xám cao hơn ngưỡng L thì đặt cho nó giá trị 255 • Nếu ngược lại thì đặt giá trị 0. • Từ đó ta thấy rõ ánh xạ của ảnh mới chính là 1 ánh xạ sang ảnh nhị phân có 2 giá trị 0 và 1 (1 tương ứng với 255). Có nhiều phương pháp để xác định giá trị ngưỡng. Một phương pháp là thiết lập ngưỡng sao cho số lượng các điểm đen đạt một ngưỡng chấp nhận được theo phân phối xác suất mức xám. Ví dụ, chúng ta có thể biết rằng các ký tự chiếm 25% diện tích của một trang văn bản thông thường. Vì thế chúng ta có thể thiết lập ngưỡng sao cho số lượng điểm đen còn lại chiếm ¼ trang văn bản. Một |