Luận văn Phát hiện biên biểu diễn fourier elliptic và ứng dụng

Tài liệu Luận văn Phát hiện biên biểu diễn fourier elliptic và ứng dụng: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN PHẠM NGỌC QUÝ PHÁT HIỆN BIÊN, BIỂU DIỄN FOURIER ELLIPTIC VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN ` Thái Nguyên - 2009 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên i ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN PHẠM NGỌC QUÝ PHÁT HIỆN BIÊN, BIỂU DIỄN FOURIER ELLIPTIC VÀ ỨNG DỤNG Chuyên ngành: Khoa học máy tính Mã số: 604801 ` LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Ngƣời hƣớng dẫn khoa học: TS. Phạm Việt Bình Thái Nguyên - 2009 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên i MỤC LỤC Lời cảm ơn .................................................................................................... i Danh mục các ký hiệu, các chữ viết tắt ......................................................... ii Danh mục các hình ...................................................................................... iii MỞ ĐẦU ..........

pdf83 trang | Chia sẻ: haohao | Lượt xem: 1486 | Lượt tải: 1download
Bạn đang xem trước 20 trang mẫu tài liệu Luận văn Phát hiện biên biểu diễn fourier elliptic và ứng dụng, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN PHẠM NGỌC QUÝ PHÁT HIỆN BIÊN, BIỂU DIỄN FOURIER ELLIPTIC VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN ` Thái Nguyên - 2009 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên i ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN PHẠM NGỌC QUÝ PHÁT HIỆN BIÊN, BIỂU DIỄN FOURIER ELLIPTIC VÀ ỨNG DỤNG Chuyên ngành: Khoa học máy tính Mã số: 604801 ` LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Ngƣời hƣớng dẫn khoa học: TS. Phạm Việt Bình Thái Nguyên - 2009 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên i MỤC LỤC Lời cảm ơn .................................................................................................... i Danh mục các ký hiệu, các chữ viết tắt ......................................................... ii Danh mục các hình ...................................................................................... iii MỞ ĐẦU ..................................................................................................... 1 CHƢƠNG 1. TỔNG QUAN VỀ XỬ LÝ ẢNH VÀ BIÊN ..................................... 3 1.1. Một số khái niệm cơ bản trong xử lý ảnh ............................................... 3 1.1.1. Xử lý ảnh. .................................................................................. 3 1.1.2 Quá trình thu nhận, biểu diễn và lưu giữ ảnh ............................... 3 1.1.3 Histogram của ảnh ...................................................................... 7 1.1.4 Nhận dạng ảnh ............................................................................ 8 1.2 Biên ảnh và vai trò trong nhận dạng ảnh ................................................. 9 1.2.1 Khái niệm về biên ảnh và các phương pháp phát hiện biên cơ bản........................................................................................... 9 1.2.2 Vai trò của biên trong nhận dạng ảnh ........................................ 14 1.2.3 Biểu diễn biên dựa trên mô tả Fourier ....................................... 14 1.2.3.1 Phương pháp dựa trên mô tả Fourier................................. 16 1.2.3.2 Phương pháp góc quay ............................................... 19 CHƢƠNG 2: MỘT SỐ PHƢƠNG PHÁP PHÁT HIỆN BIÊN VÀ PHÉP BIỂU DIỄN FORIER ELLIPTIC ............................................................. 22 2.1 Một số phương pháp phát hiện biên ...................................................... 22 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ii 2.1.1. Phương pháp phát hiện biện trực tiếp ....................................... 22 2.1.2 Phương pháp phát hiện biên gián tiếp ........................................ 31 2.1.3 Phương pháp phát hiện biên kết hợp.......................................... 32 2.1.4 Phát hiện biên dựa vào trung bình cục bộ .................................. 38 2.1.5 Cải thiện và nâng cao chất lượng biên ảnh ................................ 40 2.2 Phép biến đổi Fourier ........................................................................... 49 2.2.1 Định nghĩa ................................................................................ 49 2.2.1 Elliptic Fourier .......................................................................... 50 2.2.3 Biến đổi Fourier rời rạc ............................................................. 55 2.2.4 Các thuộc tính khác của biến đổi Fourier .................................. 61 CHƢƠNG 3: CHƢƠNG TRÌNH THỬ NGHIỆM ..................................................... 62 3.1 Giới thiệu ............................................................................................. 62 3.2 Số hóa biên đối tượng ảnh .................................................................... 62 3.2 Chương trình thử nghiệm ..................................................................... 66 KẾT LUẬN ................................................................................................................. 70 TÀI LIỆU THAM KHẢO ............................................................................................ 72 Tiếng Việt .................................................................................................. 72 Tiếng Anh .................................................................................................. 72 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên i LỜI CẢM ƠN Trong quá trình làm luận văn thạc sĩ với đề tài “Phát hiện biên, biểu diễn Fourier Elliptic và ứng dụng”, em đã nhận được nhiều đóng góp và tạo điều kiện của các thầy cô và đồng nghiệp. Lời đầu tiên em xin chân thành cảm ơn tới toàn thể các thầy cô, những người đã giảng dạy em. Đặc biệt, em xin tỏ lòng cảm ơn chân thành và sâu sắc tới thầy thầy Phạm Việt Bình, người đã luôn tận tình hướng dẫn, định hướng, và có những chỉ bảo cặn kẽ em trong thời suốt thời gian qua. Em rất cảm ơn các bạn, các đồng nghiệp đã động viên, khích lệ, cũng như trao đổi tài liệu cho em trong thời gian làm luận văn. Em cũng chân thành mong được sự đóng góp ý kiến của các thầy, các cô và các đồng nghiệp để em có phát triển đề tài trong thời gian tới. Xin chân thành cảm ơn ! Thái Nguyên, ngày 12 tháng 11 năm 2009 Học viên Phạm Ngọc Quý Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ii Danh mục các ký hiệu, các chữ viết tắt CSDL Cơ sở dữ liệu FD (Fourier descriptors) - Mô tả Fourier Pixel Điểm ảnh Radius Bán kính RGB Không gian màu RGB Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên iii Danh mục các hình Hình 1.1 Các giai đoạn chính trong quá trình xử lý ảnh ................................ 3 Hình 1.2 Điểm 8 láng giềng và điểm 4 láng giềng ........................................ 6 Hình 1.3(a) Đồ thị biểu diễn Histogram ảnh ................................................. 8 Hình 1.3(b) Ảnh gốc..................................................................................... 8 Hình 1.3(c) Histogram của ảnh gốc theo RGB và Gray ................................ 8 Hình 1.4 Ví dụ chu tuyến của đối tượng ảnh .............................................. 12 Hình 1.5 Phân loại biểu diễn hình dạng và các kỹ thuật biểu diễn .............. 15 Hình 1.6 Biểu diễn góc quay ...................................................................... 20 Hình 1.7 Biểu diễn góc quay trong trường hợp có thay đổi nhỏ .................. 21 Hình 2.1 Mô hình 8 hướng ......................................................................... 23 Hình 2.2 Ảnh trước khi dò biên .................................................................. 24 Hình 2.3 Ảnh sau khi dò biên ..................................................................... 25 Hình 2.4 (a) Ảnh gốc (b) Đạo hàm bậc nhất (c) Đạo hàm bậc hai ............... 25 Hình 2.5(a) Ảnh gốc (b) Ảnh biên dùng Laplace H1 (a) Ảnh biên H2 ......... 27 Hình 2.6 Minh họa biểu diễn biên nhờ các phép hình thái .......................... 30 Hình 2.7 Ảnh gốc ....................................................................................... 33 Hình 2.8 Ảnh đen trắng .............................................................................. 33 Hình 2.9 Ảnh đen trắng dùng hàm ConvertRGB ........................................ 34 Hình 2.10 Ảnh đen trắng ............................................................................ 34 Hình 2.11 Biên của ảnh đen trắng............................................................... 35 Hình 2.12 Ảnh gốc ..................................................................................... 36 Hình 2.13 Ảnh biên với cách đánh giá độ chênh lệch mức xám của điểm ảnh ..................................................................................................... 36 Hình 2.14 So sánh với mức xám trung bình của cửa sổ ảnh trong trường hợp N=5 .......................................................................................... 36 Hình 2.15 Xác định điểm biên thực sự ....................................................... 37 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên iv Hình 2.16 Ảnh biên kết hợp phương pháp kết hợp với N =5 ...................... 37 Hình 2.17 Ma trận điểm ảnh trước và sau lọc ............................................. 39 Hình 2.18 Các ảnh biên kết quả thu được theo thuật toán đề xuất ............... 39 Hình 2.19 Lấy tổ hợp các điểm ảnh lân cận ................................................ 41 Hình 2.20 Một số kiểu mặt nạ sử dụng cho kỹ thuật lọc phi tuyến.............. 41 Hình 2.21 Minh họa thuật toán hậu xử lý ................................................... 46 Hình 2.22 Ví dụ về chain code ................................................................... 51 Hình 2.23 Minh họa sự kết hợp của chuỗi mã 4, 8-láng giềng ................... 52 Hình 2.24 Minh họa chuỗi mã .................................................................... 54 Hình 2.25 Biển đổi xung mẫu ..................................................................... 57 Hình 2.26 Ảnh dùng biến đổi Fourier rời rạc 2D ........................................ 58 Hình 2.27 (a) Ảnh mặt (b) Biển đổi ảnh mặt .............................................. 60 Hình 2.28 Biến đổi Fourier 2D ................................................................... 61 Hình 3.1 Thuật toán số hóa biên ảnh của đối tượng ảnh ............................. 63 Hình 3.2 Thuật toán chaincodeal ................................................................ 64 Hình 3.3 Lá gấc ban đầu ............................................................................. 66 Hình 3.4 Lá gấc sau khi Histogram ............................................................ 67 Hình 3.5 Lá gấc sau khi chain code ............................................................ 67 Hình 3.6 (a) Lá gấc trước khi được xử lý .................................................... 68 Hình 3.6 (b) Lá gấc sau khi được xử lý ...................................................... 68 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên v Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 1 PHẦN MỞ ĐẦU Xử lý ảnh là một lĩnh vực đã và đang được quan tâm của nhiều nhà khoa học trong và ngoài nước bởi tính phong phú và lợi ích của nó được ứng dụng trong khoa học kỹ thuật, kinh tế, xã hội và đời sống con người. Lĩnh vực xử lý ảnh liên quan tới nhiều ngành khác như: hệ thống tin học, trí tuệ nhân tạo, nhận dạng, viễn thám, y học, nông học... Hiện nay, thông tin hình ảnh đóng vai trò rất quan trọng trong trao đổi thông tin, bởi phần lớn thông tin mà con người thu được thông qua thị giác. Do vậy, vấn đề nhận dạng trong xử lý ảnh, đặc biệt là nhận dạng biên ảnh đang được quan tâm bởi yêu cầu ứng dụng đa dạng của chúng trong thực tiễn. Mục đích đặt ra cho xử lý ảnh được chia thành hai phần chính: phần thứ nhất liên quan đến những khả năng từ các ảnh thu lại các ảnh để rồi từ các ảnh đã được cải biến nhận được nhiều thông tin để quan sát và đánh giá bằng mắt, chúng ta coi như là sự biến đổi ảnh (image transformation) hay sự làm đẹp ảnh (image enhancement). Phần hai nhằm vào nhận dạng hoặc đoán nhận ảnh một cách tự động, đánh giá nội dung các ảnh. Quá trình nhận dạng ảnh nhằm phân loại các đối tượng thành các lớp đối tượng đã biết (supervised learning) hoặc thành những lớp đối tượng chưa biết (unsupervised learning). Sau quá trình tăng cường và khôi phục (đối với những ảnh có nhiễu), giai đoạn tiếp theo, người ta phải trích rút các đặc tính quan trọng, quyết định của ảnh cần nhận dạng. Các đặc tính đó có thể là đặc tính hình học, đặc tính ngữ cảnh. Các đặc tính hình học chứa những thông tin về vị trí, kích thước hình học, hình dạng của các đối tượng trong ảnh, là đặc tính rất quan trọng trong xử lý nhận dạng ảnh. Các đặc tính này thường được trích rút ra thông qua việc xác định các đường biên các đối tượng trong ảnh. Biên chứa các thông tin về Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 2 hình dạng ngoài của đối tượng ảnh. Có thể nói xác định biên là một trong những vấn đề quan trọng và hấp dẫn trong lĩnh vực nghiên cứu xử lý ảnh bởi khả năng biểu đạt cấu trúc đối tượng và tính ứng dụng rộng rãi của nó vào việc giải quyết nhiều bài toán khó như: nhận dạng tự động, thị thực máy tính, hoạt hình… Bên cạnh đó, trong những năm gần đây các nghiên cứu về biên ảnh và phép biến đổi Fourier đã và đang được ứng dụng rộng rãi. Thực tế này đặt ra các bài toán như: đưa những ứng dụng đó vào xã hội và đời sống con người. Một số nhóm nghiên cứu trong và ngoài nước đã đưa ra các phương pháp giải quyết kết hợp các phương pháp phát hiện biên và phép biến đổi Fourier để hoàn thành những ứng dụng góp phần vào sự phát triển trong xã hội. Chình vì những ứng dụng thực tiễn đó em đã nghiên cứu luận văn thạc sĩ với đề tài “Phát hiện biên, biểu diễn Forier Elliptic và ứng dụng”. Luận văn gồm phần mở đầu, phần kết luận, và 3 chương nội dung: Chương 1: Tổng quan về xử lý ảnh và biên. Chương 2: Một số phương pháp phát hiện biên và phép biểu diễn Fourier Elliptic. Chương 3: Chương trình thử nghiệm. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 3 CHƢƠNG 1: TỔNG QUAN VỀ XỬ LÝ ẢNH VÀ BIÊN 1.1. Một số khái niệm cơ bản trong xử lý ảnh 1.1.1. Xử lý ảnh Xử lý ảnh(Image processing) là đối tượng nghiên cứu của lĩnh vực thị giác máy, là quá trình biến đổi từ một ảnh ban đầu sang một ảnh mới với các đặc tính mà tuân theo ý muốn của việc xử lý. Xử lý ảnh có thể là quá trình phân tích, phân lớp các đối tượng, làm tăng chất lượng, phân đoạn và tìm biên, gán nhãn cho vùng hay quá trình biên dịch các thông tin hình ảnh của ảnh. Hình dưới sẽ minh họa các giai đoạn chính trong quá trình xử lý ảnh. Hình 1.1. Các giai đoạn chính trong quá trình xử lý ảnh 1.1.2. Quá trình thu nhận, biểu diễn và lƣu giữ ảnh 1.1.2.1.Quá trình thu nhận ảnh Ảnh tồn tại trong thực tế là một ảnh liên tục cả về không gian cũng như về giá trị độ sáng, và việc thu nhận ảnh có thể dùng Scanner, camera... Muốn đưa ảnh liên tục trong thực tế vào máy tính để xử lý cần phải qua một khâu trung gian đó là quá trình số hoá. Số hoá là quá trình rời rạc hoá về không gian và lượng tử hoá về giá trị.Quá trình rời rạc hoá về không gian là quá trình thu nhận những điểm rời rạc từ một ảnh liên tục, nhưng phải đảm bảo bằng mắt thường không phân biệt được hai điểm kề nhau. Quá trình này cũng HÖ Q.®Þnh L•u tr÷ SENSOR Sè ho¸ Thu nhËn ¶nh NhËn d¹ng camera L•u tr÷ Ph©n tÝch ¶nh Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 4 chính là việc tìm cách biểu diễn cả một ảnh lớn có vô số điểm, bởi một số hữu hạn điểm, sao cho không làm mất đi hay thay đổi tính chất của ảnh, để việc lưu trữ và xử lý ảnh được dễ dàng. Còn quá trình lượng tử hoá về giá trị là quá trình rời rạc hoá về mặt giá trị để có thể đơn giản hoá việc tính toán và đưa vào máy để xử lý. Tuỳ theo từng loại ảnh, độ chính xác yêu cầu và khả năng xử lý của máy tính mà ta có các mức lượng tử thích hợp. Ví dụ với ảnh 256 cấp xám, ta phải dùng 256 mức lượng tử và biểu diễn trong máy tính bằng 8 bits. 1.1.2.2. Quá trình biểu diễn ảnh Sau quá trình số hoá sẽ thu được một ma trận tương ứng với ảnh cần xét, mỗi phần tử của ma trận tương ứng với một điểm ảnh. Ảnh thường được biểu diễn bởi một mảng hai chiều I(n,p) gồm n dòng và p cột. Như vậy, ảnh gồm nxp pixels và người ta thường kí hiệu I(x,y) để chỉ một pixel cụ thể trong ảnh. Các điểm này được đặc trưng bằng toạ độ màu (R,G,B) tương ứng với nó trên hệ toạ độ màu cơ bản sau: Trong đó R = Red, G = Green, B = Blue Hệ toạ độ (R,G,B ) là hệ cơ bản nhất, người ta đã chứng minh được R,G,B là ba màu độc lập, là một hệ cơ sở. Hầu như các màu khác nhau trong Black Blue Cyan White Green Yellow Red Mag Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 5 thực tế đều có thể biểu diễn bởi toạ độ của chúng trong hệ toạ độ này, tức là từ ba màu này chúng ta có thể tổng hợp được nhiều màu trong thực tế. Xét một số trường hợp đặc biệt sau:  Màu đen (Black) tạo bởi R=B=G=0  Màu vàng (Yellow) tạo bởi R=G=1, B=0  Màu tím (Magenta) tạo bởi R=B=1, G=0  Màu xanh (Cyan) tạo bởi R=0, G=B=1  Màu trắng (White) tạo bởi R=G=B=1 Từ đó ta có thể thấy rằng, ảnh đa cấp sáng là trường hợp đặc biệt của ảnh màu, trong đó các thành phần tọa độ màu tương ứng bằng nhau (R=G=B=1). Về mặt toán học có thể xem ảnh là một hàm hai biến f(x,y) với x,y là các biến tọa độ. Giá trị số ở điểm (x,y) tương ứng với giá trị xám hoặc độ sáng của ảnh (x là các cột còn y là các hàng). Giá trị của hàm ảnh f(x,y) được hạn chế trong phạm vi của các số nguyên dương. 0 = f(x,y) = fmax Thông thường đối với ảnh xám, giá trị fmax là 255 ( 2 8 =256) và mỗi phần tử ảnh được mã hóa bởi một byte. Ảnh có thể được biểu diễn theo một trong hai mô hình: mô hình Vector hoặc mô hình Raster.  Mô hình Raster: là mô hình biểu diễn ảnh thông dụng nhất hiện nay. Ảnh được biểu diễn dưới dạng ma trận các điểm ảnh. Tùy theo nhu cầu thực tế mà mỗi điểm ảnh có thể được biểu diễn bởi một hay nhiều bit. Mô hình Raster thuận lợi cho việc thu nhận, hiển thị và in ấn.  Mô hình Vector: Bên cạnh mục đích tiết kiệm không gian lưu trữ, dễ dàng hiển thị và in ấn, các ảnh biểu diễn theo mô hình vector còn có ưu điểm cho phép dễ dàng lựa chọn, sao chép, di chuyển, tìm kiếm … Theo những yêu cầu này thì kỹ thuật biểu diễn vector tỏ ra ưu việt hơn. Trong mô hình này, người ta sử dụng hướng vector của các điểm ảnh Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 6 lân cận để mã hóa và tái tạo lại hình ảnh ban đầu. Các ảnh vector được thu nhận trực tiếp từ các thiết bị số hóa như Digitalize hoặc được chuyển đổi từ các ảnh Raster thông qua các chương trình vector hóa. Khi xử lý các ảnh Raster chúng ta có thể quan tâm đến mối quan hệ trong vùng lân cận của các điểm ảnh. Các điểm ảnh có thể xếp hàng trên một lưới (raster) hình vuông, lưới hình lục giác hoặc theo một cách hoàn toàn ngẫu nhiên với nhau. Cách sắp xếp theo hình vuông là được quan tâm đến nhiều nhất và có hai loại: điểm 4 láng giềng (4 liền kề) hoặc 8 láng giềng (8 liền kề). Hình dưới đây minh họa điểm 4 láng giềng và điêm 8 láng giềng. 1.1.2.3. Lưu giữ ảnh Trong sự phát triển công nghệ thông tin nói chung, một vấn đề lớn chi phối các hoạt động thuộc lĩnh vực này là vấn đề bộ nhớ. Cần thiết phát triển quá trình xử lý thông tin sao cho nhanh chóng và chính xác, song cũng cần phát triển khả năng lưu trữ, bảo toàn các thông tin này. Các thế hệ máy tính ngày nay đã có bộ nhớ rất lớn, song bao giờ nó cũng ít đối với những gì chúng ta muốn lưu trữ và xử lý. Trong kĩ thuật xử lý ảnh cũng vậy, vì lượng thông tin chứa trong một bức ảnh là khá lớn, lên việc lưu giữ nó là vấn đề cần quan tâm. Trong thực tế ma trận điểm ảnh tạo ra bởi quá trình số hoá, được H×nh 1.2 : §iÓm 8 l¸ng giÒng vµ ®iÓm 4 l¸ng giÒng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 7 lưu trữ trong máy tính dưới dạnh các files và thường thì các files này được nén để tiết kiệm bộ nhớ . Hầu hết các files ảnh đều có phần đề ở đầu files để ghi những thông tin cơ bản về ảnh như: Kích thước ảnh, số planes, số bits cho một điểm ảnh ... Trong thực tế, ta hay gặp và xử lý đầu vào là các ảnh bitmap đó là ảnh được tạo ra từ các điểm ảnh. Ngoài ra trong quá trình thực hiện, sau một số phép biến đổi có thể chuyển nó về dạng vectơ có đơn vị là các đường để tiện cho việc lưu giữ. 1.1.3. Histogram của ảnh Như ta đã biết, mỗi điểm có một giá trị độ sáng nào đó. Histogram của ảnh là đồ thị cho biết tần suất hiện các điểm ảnh với các mức biến thiên độ sáng. Thí dụ: Có một ảnh 100 điểm , độ sáng của ảnh được phân thành 5 mức sáng: level1, level2,..., level 5. Số điểm ảnh của các mức tương ứng là 20, 25, 10, 30, 15. Như vậy tần suất hiện của các điểm ảnh ở mức tương ứng là 20%, 25%, 10%, 30%, 15%, với ảnh này ta có histogram của ảnh như hình 1.3. Từ kết quả histogram của ảnh, chỉ cho ta nhìn nhận tổng quát quá trình phân bố giải độ sáng trên ảnh, chứ không cho ta biết kết cấu chi tiết của ảnh. Ngoài ra, căn cứ vào số đỉnh trên histogram của ảnh sẽ có sự nhìn nhận ban đầu về số vùng của ảnh. Đó là cơ sở cho việc phân vùng ảnh và tìm biên sau này, đặc biệt là phương pháp tìm biên gián tiếp. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 8 b) c) Hình 1.3. b) Ảnh gốc; c) Histogram của ảnh gốc theo RGB và Gray 1.1.4. Nhận dạng ảnh Nhận dạng ảnh là quá trình liên quan đến các mô tả đối tượng mà người ta muốn đặc tả nó. Quá trình nhận dạng thường đi sau quá trình trích chọn các đặc tính chủ yếu của đối tượng. Có hai kiểu mô tả đối tượng: - Mô tả tham số (nhận dạng theo tham số). - Mô tả theo cấu trúc ( nhận dạng theo cấu trúc). 0.1 0.2 0.3 1 2 3 4 5 level 20% 25% 10% 30% 15% H×nh 1.3a Đå thÞ biÓu diÔn Histogram ¶nh Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 9 Trên thực tế, người ta đã áp dụng kỹ thuật nhận dạng khá thành công với nhiều đối tượng khác nhau như: nhận dạng ảnh vân tay, nhận dạng chữ (chữ cái, chữ số, chữ có dấu). Nhận dạng chữ in hoặc đánh máy phục vụ cho việc tự động hoá quá trình đọc tài liệu, tăng nhanh tốc độ và chất lượng thu nhận thông tin từ máy tính. Nhận dạng chữ viết tay (với mức độ ràng buộc khác nhau về cách viết, kiểu chữ, v.v.. ) phục vụ cho nhiều lĩnh vực. Ngoài hai kỹ thuật nhận dạng trên, hiện nay một số kỹ thuật nhận dạng mới dựa vào kỹ thuật mạng nơron và fourier đang được áp dụng và cho kết quả khả quan. 1.2 Biên ảnh và vai trò trong nhận dạng ảnh 1.2.1 Khái niệm về biên ảnh và các phương pháp phát hiện biên cơ bản 1.2.1.1 Khái niệm biên ảnh  Các phương pháp phát hiện biên là các phương pháp xử lý cục bộ rất quan trọng trong việc xác định sự thay đổi độ sáng của hàm ảnh.  Một điểm ảnh được coi là biên nếu ở đó có sự thay đổi đột ngột về mức xám. Tập hợp các điểm biên tạo thành biên hay đường bao của ảnh.  Phương pháp phát hiện biên trực tiếp nhằm làm nổi biên dựa vào sự biến thiên về độ sáng của điểm ảnh. Sử dụng kỹ thuật đạo hàm để phát hiện biên. Nếu lấy đạo hàm bậc nhất của ảnh ta có phương pháp gradient, nếu lấy đạo hàm bậc hai ta có kỹ thuật Laplace.  Một hàm ảnh phụ thuộc vào 2 biến đó là toạ độ của điểm ảnh, vì vậy các toán tử mô tả biên ảnh được biểu diễn bởi các đạo hàm riêng (theo 2 hướng x,y).  Phương pháp gradient là phương pháp dò biên cục bộ dựa vào cực đại của đạo hàm. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 10  Biên ảnh được biểu diễn bởi 1 véc tơ với 2 thành phần: o Biên độ của gradient o Và hướng của biên với góc , hướng của biên lệch so với hướng của gradient  một góc -900  Hướng gradient là hướng của sự gia tăng lớn nhất của hàm ảnh.  Như mô tả trong hình dưới, các đường biên khép kín là các đường có cùng độ sáng; quy ước hướng là chỉ hướng đông.  Biên thường được sử dụng trong phân tích ảnh để xác định đường bao của các vùng trong ảnh.  Đường bao và các thành phần của nó (các điểm biên) vuông góc với hướng của gradient  Một số dạng của đường bao ảnh Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 11 Roof là dạng điển hình cho các đối tượng có đường biên mảnh.  Các kỹ thuật phát hiện biên thường được điều chỉnh để phù hợp với dạng của biên ảnh.  Đôi khi chúng ta chỉ chú ý đến sự thay đổi biên độ mà không quan tâm đến sự thay đổi về hướng; khi đó chúng ta sử dụng toán tử tuyến tính Laplace để phát hện biên.  Toán tử Laplace có cùng tính chất ở mọi hướng, và do đó nó là thành phần bất biến quay trong các ảnh. 1.2.1.2 Các phương pháp phát hiện biên cơ bản Phát hiện biên trực tiếp: Phương pháp này làm nổi biên dựa vào sự biến thiên mức xám của ảnh. Kỹ thuật chủ yếu dùng để phát hiện biên ở đây là dựa vào sự biến đổi theo hướng. Nếu lấy đạo hàm bậc nhất của ảnh ta có kỹ thuật Gradient, nếu lấy đạo hàm bậc hai của ảnh ta có kỹ thuật Laplace. Phát hiện biên gián tiếp: Nếu bằng cách nào đó ta phân được ảnh thành các vùng thì ranh giới giữa các vùng đó gọi là biên. Kỹ thuật dò biên và phân vùng ảnh là hai bài toán đối ngẫu nhau vì dò biên để thực hiện phân lớp đối tượng mà khi đã phân lớp xong nghĩa là đã phân vùng được ảnh và ngược lại, khi đã phân vùng ảnh đã được phân lớp thành các đối tượng, do đó có thể phát hiện được biên. 1.2.1.2.1. Phương pháp phát hiện biên trực tiếp a) Kỹ thuật phát hiện biên Gradient Theo định nghĩa gradient là một véctơ có các thành phần biểu thị tốc độ thay đổi giá trị của điểm ảnh. b) Kỹ thuật phát hiện biên Laplace Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 12 Các phương pháp đánh giá gradient ở trên làm việc khá tốt khi mà độ sáng thay đổi rõ nét. Khi mức xám thay đổi chậm, miền chuyển tiếp trải rộng, phương pháp cho hiệu quả hơn đó là phương pháp sử dụng đạo hàm bậc hai Laplace. 1.2.1.2.2. Phương pháp phát hiện biên gián tiếp a) Một số khái niệm cơ bản *Ảnh và điểm ảnh: Ảnh là một mảng số thực 2 chiều (Iij) có kích thước (mn), trong đó mỗi phần tử Iij(i = 1,...,m; j = 1,...,n) biểu thị mức xám của ảnh tại (i,j) tương ứng. *Các điểm 4 và 8-láng giềng Giả sử (i,j) là một điểm ảnh, các điểm 4 và 8 láng giềng là: N4= {(i’,j’) : |i- i’|+|j-j’| = 1}, N8 = {(i’,j’) : max(|i-i’|,|j-j’|) =1}. b) Chu tuyến của một đối tượng ảnh Định nghĩa 1: [Chu tuyến] Chu tuyến của một đối tượng ảnh là dãy các điểm của đối tượng ảnh P1,,Pn sao cho Pi và Pi+1 là các 8-láng giềng của nhau (i=1,...,n-1) và P1 là 8-láng giềng của Pn, i Q không thuộc đối tượng ảnh và Q là 4-láng giềng của Pi (hay nói cách khác i thì Pi là biên 4). Kí hiệu .Hình 1.4 biểu diễn chu tuyến của ảnh, P là điểm khởi đầu chu tuyến. Hình 1.4 Ví dụ về chu tuyến của đối tượng ảnh P Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 13 Định nghĩa 2: [Chu tuyến đối ngẫu] Hai chu tuyến C= và C  = được gọi là đối ngẫu của nhau nếu và chỉ nếu i j sao cho: 1. Pi và Qj là 4-láng giềng của nhau. 2. Các điểm Pi là vùng thì Qj là nền và ngược lại. Định nghĩa 3: [Chu tuyến ngoài] Chu tuyến C được gọi là chu tuyến ngoài nếu và chỉ nếu: 1. Chu tuyến đối ngẫu C là chu tuyến của các điểm nền 2. Độ dài của C nhỏ hơn độ dài C Định nghĩa 4: [Chu tuyến trong] Chu tuyến C được gọi là chu tuyến trong nếu và chỉ nếu: 1. Chu tuyến đối ngẫu C là chu tuyến của các điểm nền 2. Độ dài của C lớn hơn độ dài C c) Thuật toán dò biên tổng quát Về cơ bản, các thuật toán dò biên trên một vùng đều bao gồm các bước sau:  Xác định điểm biên xuất phát  Dự báo và xác định điểm biên tiếp theo Lặp bước 2 cho đến khi gặp điểm xuất phát Thuật toán dò biên tổng quát Bước 1: Xác định cặp nền-vùng xuất phát Bước 2: Xác định cặp nền-vùng tiếp theo Bước 3: Lựa chọn điểm biên Bước 4: Nếu gặp lại cặp xuất phát thì dừng, nếu không quay lại bước 2 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 14 1.2.2. Vai trò của biên trong nhận dạng Như đã đề cập tới ở phần tổng quan về một hệ thống nhận dạng và xử lý ảnh, quá trình nhận dạng có hai giai đoạn cần thực hiện: Giai đoạn học: Các đặc điểm của đối tượng mẫu được lưu trữ (gọi là học mẫu) và tập các phần tử mẫu được chia thành các lớp. Giai đoạn nhận dạng: Khi có đối tượng cần nhận dạng, các đặc điểm của đối tượng sẽ được trích chọn và sử dụng hàm quyết định để xác định đối tượng cần nhận dạng thuộc lớp nào. 1.2.3 Biểu diễn biên dựa trên mô tả Fourier Hình dạng mà một đặc trưng trực quan quan trọng và nó là một trong những đặc trưng gốc của việc mô tả nội dung ảnh. Tuy nhiên, mô tả nội dung hình dạng là một công việc khó. Bởi vì khó xác định được các đặc trưng hình dạng và phép đo sự tương tự giữa các hình dạng. Để tạo vấn đề phức tạp hơn, hình dạng thường không rõ ràng cùng với các nhiễu không rõ ràng. Trong phần này mục tiêu chính nghiên cứu về hình dạng để nhận dạng đối tượng. Mỗi một kỹ thuật biểu diễn hình dạng nhằm vào các ứng dụng riêng biệt. Sự chính xác là mối quan tâm chính trong các kỹ thuật biểu diễn. Các yêu cầu được đưa ra để đo hiệu quả biểu diễn hình dạng gồm: truy vấn chính xác, các đặc trưng cô đọng, ứng dụng tổng quát, độ phức tạp tính toán thấp, thao tác truy vấn đơn giản. Biểu diễn biên dựa trên mô tả Fourier: là mô tả hình dạng của đối tượng ảnh bằng một biến đổi Fourier của đường biên của đối tượng. Ba loại biểu diễn đường biên: bằng độ cong, bằng khoảng cách trọng tâm, bằng hàm toạ độ phức. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 15 Phương pháp chung nhất và tổng quát nhất là dựa trên việc sử dụng điểm nằm trên đường bao hình dạng trái ngược với các điểm bên trong hình dạng. Các kỹ thuật biểu diễn hình dạng có thể nhận ra giữa vùng không gian và vùng đặc trưng. Các phương pháp trong vùng không gian tương xứng với hình dạng trên các điểm cơ sở (hoặc đặc trưng điểm), trong khi kỹ thuật vùng đặc trưng tương xứng với hình dạng trên các đặc trưng cơ sở (véc tơ). Sự phân loại khác của các kỹ thuật biểu diễn hình dạng được dựa trên sự bảo toàn thông tin gốc. Các phương pháp cho phép xây dựng lại hình dạng từ các mô tả gọi là bảo toàn thông tin, trong khi các phương pháp khác chỉ có thể xây dựng lại một phần hoặc mô tả không rõ ràng gọi là không bảo toàn thông tin. Hình 1.5 Phân loại biểu diễn hình dạng và các kỹ thuật biểu diễn Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 16 Một khi đối tượng trong ảnh đã được xác định, chúng sẽ được đặc trưng hóa thông qua các phương pháp như: miền, độ lệch tâm - eccentricity (chẳng hạn như tỷ lệ giữa trục chính và trục phụ), vòng tròn - circularity (sự tương đồng với vòng tròn bao quanh vùng có kích thước tương tự), dấu hiệu hình dạng (một dãy các số chỉ khoảng cách từ biên tới tâm của hình dạng), mô men hình dạng (shape moments), sự uốn cong - curvature (xác định mức độ đường biên đổi hướng), chiều fractal – fractal dimension (mức độ tự tương tự), .v.v. Một số tiêu chuẩn biểu diễn hình dạng:  Bất biến đối với phép quay, co giãn và tịnh tiến.  Nhỏ gọn, dễ thao tác.  Tương tự với cảm nhận của con người.  Bền vững với phép biến đổi hình dạng.  Độc lập với các ứng dụng. Sau đây sẽ trình bày một số phương pháp biểu diễn hình dạng 1.2.3.1 Phƣơng pháp dựa trên mô tả Fourier Năm 1977, Persoon và Fu lần đầu tiên đã đưa ra kỹ thuật sử dụng ký hiệu mô tả Fourier để biểu diễn hình dạng. Rất nhiều nghiên cứu đã được thực hiện theo sau ý tưởng này. Trong số đó, Refiei và Mendlzon đã đưa ra phương pháp biểu diễn hình dạng của họ sử dụng các dấu hiệu mô tả Fourier để mô tả hình dạng của một đối tượng. Giả sử biên hình dạng được trích chọn trong quá trình tiền xử lý là: ( ( ), ( )), 0,1,..., 1x t y t t N  . Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 17 Nếu ta xem xét hình dạng trên một mặt phẳng phức, ta có thể thu được hàm phức một chiều )(tf bằng cách lần theo biên của nó. )(tf đơn giản là một số phức được tổng quát hóa từ hệ tọa độ đường bao.    cc ytyjxtxtf  )()()( Với  cc yx , là trọng tâm của hình dạng, được tính theo công thức sau:     1 0 )( 1 N t c tx N x ,     1 0 )( 1 N t c ty N y )(tf miêu tả đường bao của hình dạng, )(tf là dấu hiệu hình dạng bất biến đối với phép dịch chuyển. Biến đổi Fourier rời rạc của dấu hiệu hình dạng )(tf được cho bởi:           1 0 2 exp).( 1 N t u N utj tf N F  với u=0 đến M-1, trong đó M là tổng số mẫu f(t). Có nhiều loại dấu hiệu hình dạng. Các loại dấu hiệu hình dạng hay sử dụng là trên cơ sở độ cong, trên cơ sở bán kính và trên cơ sở tọa độ biên hình dạng. Hiệu năng phân lớp hình dạng trên cơ sở ba loại dấu hiệu này không khác nhau nhiều. Dấu hiệu trên cơ sở bán kính là đơn giản và dễ cài đặt nhất. Dấu hiệu trên cơ sở bán kính bao gồm một số khoảng cách theo thứ tự từ tâm hình dạng đến các điểm trên biên (gọi là radius - các bán kính). Radius được định nghĩa như sau: 22 )()( icici yyxxr  trong đó, c c(x , y ) là tọa độ tâm hình dạng, ),( ii yx với i=0 đến 63 là tọa độ của 64 điểm mẫu theo biên hình dạng. Các điểm biên được lấy mẫu sao cho tổng số điểm ảnh theo biên giữa hai điểm láng giềng là như nhau. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 18 Radius hình dạng và biến đổi giữa chúng là bất biến dịch chuyển. Chú ý rằng các hình dạng không chuẩn hóa hướng trước khi sử dụng radius hình dạng. Thực hiện chuẩn hóa bằng cách bỏ qua các giá trị pha của Fourier (FD). Xoay hình dạng được phản ánh trong thông tin pha của uF và độ lớn của uF , hay u| F | là bất biến với xoay. 0| F | phản ánh năng lượng của radius hình dạng, vậy u o| F | / | F | sẽ bất biến co dãn. Do vậy, ta sử dụng véc tơ đặc trưng sau (nó bất biến với dịch chuyển, xoay, và co dãn) để chỉ mục hình dạng:          0 63 0 1 ,..., F F F F x Khoảng cách giữa các hình dạng được tính toán bằng khoảng cách Euclidean giữa các véc tơ đặc trưng của chúng. Chỉ mục mỗi hình dạng trong CSDL cùng với mô tả Fourier. Sự tương tự giữa hai hình dạng truy vấn và mỗi hình dạng trong CSDL với 1 2( , ,..., ) mq q q qf f f f và 1 2( , ,..., ) mt t t tf f f f lần lượt là các véc tơ đặc trưng của hai hình dạng. 1 2 2 1 ( ( ) )    m q t i i i d f f Tại sao ta sử dụng FD để chỉ mục hình dạng thay cho trực tiếp radius? Lý do chính là biểu diễn trực tiếp là rất nhạy với thay đổi nhỏ và nhiễu, dẫn tới hiệu năng truy tìm rất thấp. Nếu 64 độ dài bán kính sử dụng trực tiếp làm chỉ mục, có thể sẽ rất khó co dãn và chuẩn hóa xoay. Có thể thực hiện chuẩn hóa xoay bằng nhận ra bán kính ngắn nhất (hay dài nhất) và thực hiện chuẩn hóa co dãn bằng cố định độ dài của bán kính ngắn nhất. Nhưng chuẩn hóa này không ổn định vì với thay đổi nhỏ trên đường biên sẽ ảnh hưởng đến vị trí bán kính nhỏ nhất và các vị trí của điểm mẫu, dẫn tới chỉ mục rất khác nhau và khoảng cách rất lớn giữa các hình dạng do thay đổi nhỏ. Mục tiêu sử dụng FD Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 19 là chuyển đổi độ dài bán kính nhạy cảm vào miền tần số nơi dữ liệu bền vững hơn đối với thay đổi nhỏ và nhiễu. 1.2.3.2 Phƣơng pháp góc quay Arkin và các đồng nghiệp đề xuất một phương pháp hiệu quả để biểu diễn các hình đa giác gọi là phương pháp góc quay. Tổng quát, phương pháp biểu diễn một hình đa giác A đơn giản sẽ mô tả biên của A bằng cách liệt kê dãy các đỉnh (vertex) trong đó mối đỉnh được mô tả bởi cặp tọa độ (x,y). Tuy nhiên, Arkin đưa ra một cách biểu diễn khác cho biên của một hình đa giác. Theo phương pháp của ông, biên có thể được mô tả bởi hàm quay  SA . Hàm  SA đo góc của tiếp tuyến của cung (arc-length) theo chiều ngược chiều quay đồng hồ. Cung S được tính từ điểm tham chiếu bắt đầu O trên biên của đa giác. Khi đó  OA là góc tạo bởi tiếp tuyến tại O và trục tham chiếu nào đó, chẳng hạn là trục x. Theo cách này, hàm quay  SA sẽ đi dọc theo biên, tăng khi quay sang bên trái và giảm khi quay sang bên phải. Không mất tính tổng quát, Arkin giả thiết rằng mọi đa giác được thay đổi kích thước hay chuẩn hóa sao cho chu vi của nó bằng 1. Khi đó  SA là một hàm với đối số nằm trong khoảng [0,1]. Hình mô tả việc biểu diễn góc quay của một đa giác. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 20 Hình 1.6 Biểu diễn theo góc quay Trong Hình 1.6a, O là điểm bắt đầu và góc quay tương ứng với nó là v1. Mọi góc quay được biểu diễn trong Hình 1.6b có thể tính được bằng cách di chuyển ngược chiều quay đồng hồ dọc theo biên của đa giác. Chú ý rằng với đa giác lồi A, hàm quay của nó  SA sẽ tăng đơn điệu từ v đến 2v  . Cho trước hai đa giác A và B với các hàm quay tương ứng là  SA và  SB , sự khác biệt giữa chúng được định nghĩa là: 2 ,( , ) min ( ( ( ) ( )) )   r A B i D A B i i trong đó, ,minr  đại diện cho giá trị nhỏ nhất của mọi trường hợp dịch chuyển và xoay của đa giác B. Việc biểu diễn hình dạng này là bất biến với việc dịch chuyển, thay đổi kích thước và việc xoay. Mặc dù cách biểu diễn này có nhiều ưu điểm, nó vẫn nhạy cảm với các thay đổi nhỏ của hình ảnh. Điều này được mô tả trong Hình. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 21 Hình 1.7 Biểu diễn góc quay trong trường hợp có thay đổi nhỏ Trong Hình 1.7 đa giác Q chỉ có một chút thay đổi nhỏ so với P. Tuy nhiên, khi ta sử dụng các hàm quay của chúng để so sánh, sự khác biệt do phần mờ trong đồ thị sẽ không đủ nhỏ để cho biết hai hình này là rất tương tự nhau. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 22 CHƢƠNG 2: MỘT SỐ PHƢƠNG PHÁP PHÁT HIỆN BIÊN VÀ PHÉP BIỂU DIỄN FOURIER ELLIPTIC 2.1 Một số phƣơng pháp phát hiện biên 2.1.1. Phƣơng pháp phát hiện biện trực tiếp 2.1.1.1 Kỹ thuật Gradient Đây là phương pháp dò biên cục bộ dựa vào cực đại của đạo hàm. Theo định nghĩa Gradient là một vector biểu thị tốc độ thay đổi giá trị của một đại lượng. Vì ảnh là một mảng hai chiều nên ta tính vi sai giữa hai điểm ảnh cạnh nhau theo hai hướng x và y. dx yxfydxxf x yxf fx ),(),(),(      dy yxfdyyxf y yxf fy ),(),(),(      Với dx, dy là khoảng cách giữa các điểm theo hướng x và y (được tính bằng số điểm ảnh) và fx, fy là các đạo hàm gián đoạn hay các Gradient theo các hướng x và hướng y. Đạo hàm theo hướng r và góc  bất kỳ được tính theo công thức:              r y y f r x x f r f fxcos + fysin.               y y fx x ff rfxsin + rfycos. Thực tế, ảnh số là tín hiệu rời rạc nên không có đạo hàm thực mà người ta chỉ mô phỏng và xấp xỉ đạo hàm bằng các kỹ thuật nhân chập (phép cuộn). Trong kỹ thuật Gradient người ta chia nhỏ thành hai kỹ thuật (do sử dụng các toán tử nhân chập khác nhau) là kỹ thuật Gradient và kỹ thuật la bàn. Kỹ thuật Gradient dùng toán tử Gradient lấy đạo hàm theo một hướng, Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 23 còn kỹ thuật la bàn dùng toán tử la bàn lấy đạo hàm theo 8 hướng của tất cả các điểm ảnh cạnh nó. Hình 2.1 minh họa mô hình 8 hướng. Có khá nhiều toán tử đạo hàm đã được áp dụng. Các toán tử sử dụng kỹ thuật Gradient đáng kể nhất là toán tử Robert, Sobel và Prewitt. Còn toán tử la bàn hay được sử dụng là toán tử Krish. Dưới đây là các mặt nạ tương ứng với các kỹ thuật nêu trên: 1 2 0 7 6 5 4 3 E NE N NW W SW S SE Hình 2.1: Mô hình 8 hướng Ngang (hướng x) Dọc (hướng y) -1 0 1 Hx = -2 0 2 -1 0 1 -1 -2 -1 Hy = 0 0 0 1 2 1 (b) Mặt nạ Sobel Ngang (hướng x) Dọc (hướng y) -1 0 1 Hx = -1 0 1 -1 0 1 -1 -1 -1 Hy = 0 0 0 1 1 1 (c) Mặt nạ Prewitt 0 1 H1 = -1 0 -1 0 H2 = 0 -1 (a) Mặt nạ Robert Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 24 Tiếp theo là một số kết quả minh họa của sử dụng các mặt nạ Robert, Sobel. Hình 2.2 Ảnh trước khi dò biên (d) Các mặt nạ toán tử Krish theo các hướng 00, 450, 900, 135 0 , 180 0 , 225 0 , 270 0 , 315 0 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 25 Hình 2.3 Ảnh sau khi dò biên Các kỹ thuật đánh giá Gradient ở trên làm việc khá tốt khi mà độ sáng thay đổi rõ nét. Nhưng khi mức xám thay đổi chậm miền chuyển tiếp trải rộng thì phương pháp Laplace (sử dụng đạo hàm bậc hai) tỏ ra hiệu quả hơn. 2.1.1.2. Kỹ thuật Laplace Toán tử Laplace được định nghĩa như sau: Trong đó f(x,y) là hàm cường độ của ảnh. Để hiểu hoạt động của phương pháp Laplace trong việc trích ra đường biên chúng ta có thể xem các sơ đồ dưới đây. y yxf x yxf yxf 2 2 2 2 2 ),(),(),(       f(x) a   fx x b   2 2 fx x c Hình 2.4. (a) ảnh gốc (b) Đạo hàm bậc nhất (c) Đạo hàm bậc hai Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 26 Như vậy, đạo hàm bậc hai có thể dùng để phát hiện đường biên ảnh. Thông thường các điểm không (cross-zero) của đạo hàm bậc hai là nơi có đường biên, tuy nhiên phải chú ý là đạo hàm của một hàm hai biến tại bất kỳ điểm nào cũng phụ thuộc vào hướng lấy đạo hàm. Toán tử Laplace dùng nhiều kiểu mặt nạ khác nhau để xấp xỉ cho đạo hàm bậc hai. Có ba kiểu mặt nạ hay dùng Các kết quả nhiên cứu cho thấy trong phương pháp đạo hàm bậc hai, toán tử Laplace rất nhậy cảm với nhiễu và tạo thành biên kép. Để khắc phục nhược điểm này người ta mở rộng toán tử Laplace và dùng xấp xỉ Laplace- Gauss để phát hiện các điểm không: h(m,n)=c[1-(m 2 +n 2 )/ σ 2]exp(-(m2+n2)/2 σ 2) Với σ là tham số điều khiển độ rộng, và c là chuẩn tổng các phần tử có kích thước mặt nạ là đơn vị. Cắt điểm không của ảnh cho trước chập với h(m,n) sẽ cung cấp cho ta vị trí biên của ảnh. Các điểm biên của ảnh được xác định bởi các điểm cắt điểm không (cross-zero) và các điểm không là duy nhất. Do vậy kỹ thuật này cho đường biên mảnh. Tuy nhiên như đã nói ở trên, kỹ thuật Laplace rất nhạy cảm với nhiễu do đạo hàm bậc hai thường không ổn định. 0 -1 0 H1 = -1 4 -1 0 -1 0 -1 -1 -1 H2 = -1 8 -1 -1 -1 -1 1 -2 1 H3 = -2 5 -2 1 -2 1 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 27 a) b) c) Hình 2.5 a) Ảnh gốc; b) Ảnh biên dùng Laplace H1; c) Ảnh biên dùng Laplace H2; Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 28 Ngoài hai kỹ thuật dò biên kể trên, trong các phương pháp phát hiện biên trực tiếp người ta còn sử dụng một số kỹ thuật khác nữa đó là: phương pháp dò biên theo quy hoạch động, phương pháp tiếp cận bởi mô hình mặt, phương pháp tiếp cận tối ưu hóa.  Phương pháp dò biên theo quy hoạch động là phương pháp tìm cực trị của các quá trình nhiều bước dựa vào nguyên lý tối ưu của Bellman. Thuật toán xác định một đường bao tối ưu của ảnh trên cơ sở đánh giá khoảng cách, gradient biên độ và gradient hướng của các đỉnh.  Phương pháp tiếp cận bởi mô hình mặt dựa vào việc thực hiện xấp xỉ đa thức trên ảnh gốc hay ảnh đã thực hiện phép lọc Laplace. Cách tiếp cận tối ưu nhằm xác định một hàm (một bộ lọc), làm giảm phương sai σ 2 hoặc giảm một số điểm cực trị cục bộ.  Phương pháp tiếp cận tối ưu hóa định vị đúng vị trí bằng cách cực tiểu hóa phương sai σ 2 của vị trí các điểm cắt không (cross-zero) hoặc hạn chế số điểm cực trị cục bộ để chỉ tạo ra một đường bao. Nhìn chung các phương pháp phát hiện biên như đã trình bày ở trên đều có ít nhiều sử dụng đến các kỹ thuật đạo hàm. Ý tưởng chung của các kỹ thuật tìm biên sử dụng đạo hàm đó là sử dụng các bộ lọc thông cao để làm nổi biên. Bởi vì các điểm biên là các chi tiết có tần số không gian cao nên khi ảnh được lọc thông cao, các phần tử có tần số không gian cao sẽ sáng hơn còn các phần tử có tần số không gian thấp sẽ tối đi. Kỹ thuật lọc thông cao được thực hiện nhờ thao tác nhân chập. Việc sử dụng các mặt nạ nhân chập có một nhược điểm chung đó là bản thân phép lọc không tự động loại bỏ hoặc hạn chế được nhiễu. Bởi vì đặc tính của nhiễu, nếu 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. Các phép lọc thông cao tuy làm nổi các điểm biên nhưng đồng thời cũng làm nổi các nhiễu. Hơn thế nữa để Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 29 phân tích, nhận dạng ảnh người ta thường muốn xử lý trên các ảnh biên chỉ có hai màu (màu biên và màu nền) để cho đơn giản. Các ảnh qua lọc lấy biên không cho ra ảnh biên (hai màu) mà cần phải thông qua một vài phép xử lý trung gian nữa (chẳng hạn phân ngưỡng) thì mới thu được ảnh biên thực sự. Bản thân quá trình xử lý này cũng có thể lại làm mất đi các chi tiết của ảnh biên sau phép lọc. Ngoài ra, các kỹ thuật tìm biên sử dụng đạo hàm còn có một hạn chế nữa là không cho phép điều chỉnh độ chi tiết của ảnh biên thu được. Trong các ảnh chụp thế giới thực, sẽ có rất nhiều các đối tượng trong ảnh có độ chi tiết (mờ, rõ) khác nhau. Khi nhận dạng, không hẳn là chúng ta sẽ quan tâm đến tất cả các đối tượng mà chủ yếu là chỉ quan tâm đến các đối tượng chính trong ảnh. Các đối tượng này thường có độ chi tiết và độ rõ cao. Sử dụng các mặt nạ nhân chập không cho phép chúng ta điều chỉnh độ chi tiết của các ảnh biên thu được một cách dễ dàng, rõ ràng buộc tổng các hệ số của bộ lọc phải bằng 1; nhằm ngăn cản sự tăng quá giới hạn của các giá trị mức xám (các giá trị điểm ảnh phải giữ được giá trị của nó một cách gần đúng không thay đổi quá nhiều so với giá trị thực). Phần dưới đây, tôi xin giới thiệu tổng quan kỹ thuật phát hiện biên thuộc loại phát hiện biên trực tiếp nhưng không dựa và đạo hàm mà dựa vào phép toán hình thái [29] đang được nhiều nhà khoa học quan tâm. 2.1.1.3. Tìm biên bằng phép toán hình thái Ở phần này, em chỉ xin được giới thiệu tổng quan phép toán hình thái để làm định hướng cho quá trình nghiên cứu sau này. Phép toán hình thái thực hiện trên cơ sở ảnh ban đầu đã được làm trơn bằng phép lọc trung vị. Giả sử P là một điểm của ảnh đã được làm trơn, tính hai độ lệch của điểm đó với các giá trị lớn nhất và nhỏ nhất của cửa sổ xung quanh P, (cửa sổ 33). Giá trị nhỏ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 30 hơn trong hai giá trị đó sẽ được chọn làm giá trị điểm ảnh đầu ra. Quá trình này sẽ được mô tả mhư sau: Giả sử ảnh gốc I(m,n) được làm trơn bằng bộ lọc trung bình tạo ra ảnh O1(m,n): W(m,n) là cửa sổ của (m,n) nhận điểm này làm trung tâm (phép xếp chồng tại trung tâm) được chọn thích hợp. Nw là số điểm của cửa sổ này. Một điểm ảnh đầu ra O2(m,n) được tính từ ảnh O1(m,n) thông qua phép so sánh và lựa chọn bởi: Trong đó F(m,n) là cửa sổ lân cận của điểm (m,n) cũng được chọn thích hợp Như vậy, các điểm biên được làm nổi lên, nhờ phép so sánh, chọn ra độ sai khác nhỏ nhất giữa nó và giá trị độ sáng của các điểm ảnh thuộc lân cận. Sai khác này càng lớn thì điểm biên càng được làm nổi.    ),(, 1 ),( 1 ),( nmWlkw lnkmI N nm                         ),( 11 )( 112 ),()(max,)(min),(mi),( nmFqmnFq nmOqOqOnmOnm XTB = ((XB)B) Xấp xỉ trên của X (chứa X) XDB = ((XB)B) Xấp xỉ dưới của X (thuộc X) X B = XTB\XDB Xấp xỉ biên của X theo mẫu B Hình 2.6. Minh hoạ biểu diễn biên nhờ các phép toán hình thái Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 31 2.1.2. Phƣơng pháp phát hiện biên gián tiếp 2.1.2.1. Phân vùng ảnh dựa theo ngưỡng biên độ Ảnh khi được miêu tả thông qua hàm f(x,y) có thể được quan niệm như một môi trường vật lý. Trong đó, các hiện tượng như phản xạ, truyền sáng, màu sắc hoặc đáp ứng đa phổ đều có thể mô tả được. Các hàm f(x,y) có thể đặc trưng cho biên độ của các tính chất vật lý của ảnh, còn các biến (x,y) ngoài ý nghĩa vị trí có thể được sử dụng như là điện áp, nhiệt độ, hoặc vận tốc. Chúng ta có thể dùng ngưỡng biên độ để phân vùng ảnh khi mà biên độ là đủ lớn để đặc trưng cho ảnh. Kỹ thuật phân ngưỡng theo biên độ được tiến hành theo các bước như sau:  Xem xét lược đồ xám của ảnh để xác định các đỉnh và các khe. Nếu ảnh có dạng rắn lượn (nhiều đỉnh và khe), các khe có thể sử dụng để chọn ngưỡng.  Chọn ngưỡng t sao cho một phần xác định trước của toàn bộ số mẫu là thấp hơn t.  Điều chỉnh ngưỡng dựa trên xem xét lược đồ xám của các điểm lân cận.  Chọn ngưỡng như xem xét lược đồ xám của những điểm thỏa mãn tiêu chuẩn chọn. Thí dụ, với ảnh có độ tương phản thấp, lược đồ của những điểm có biên độ Laplace g(m,n) lớn hơn giá trị t định trước (sao cho từ 5% đến 10% số điểm ảnh với Gradient lớn nhất sẽ coi như biên) sẽ cho phép xác định các đặc tính của ảnh lưỡng cực tốt hơn ảnh gốc. Khi có một mô hình phân lớp xác suất, việc xác định ngưỡng dựa vào tiêu chuẩn nhằm cực tiểu xác suất của sai số hoặc một số tính chất khác theo luật của Bayes. 2.1.2.2. Phân vùng dựa theo miền đồng nhất Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 32 Kỹ thuật phân vùng ảnh thành các vùng đồng nhất dựa vào các tính chất quan trọng nào đó của miền. Việc lựa chọn các tính chất của miền sẽ xác định các tính chất phân vùng. Các tiêu chuẩn hay được dùng là sự thuần nhất về mức xám, màu sắc đối với ảnh màu, kết cấu sợi và chuyển động. Có 3 cách tiếp cận chủ yếu trong phân vùng ảnh theo miền đồng nhất và độc lập với tiêu chuẩn chọn lựa tính đồng nhất đó là:  Phương pháp phân tách - cây tứ phân (split-quad stress)  Phương pháp hợp (merge)  Phương pháp tách hợp (split-merge) Mức độ hiệu quả của các phương pháp là tùy thuộc vào việc chọn tiêu chuẩn đánh giá độ thuần nhất. Nhìn chung các kỹ thuật phân vùng ảnh cho phép chúng ta phát hiện biên một cách chính xác hơn các kỹ thuật đạo hàm do ít chịu ảnh hưởng của nhiễu, nhưng hầu hết các kỹ thuật phân vùng này đều có cài đặt khá phức tạp và thường làm mất nhiều chi tiết của các đối tượng trong ảnh nên thường không được sử dụng để tìm biên. 2.1.3. Phƣơng pháp phát hiện biên kết hợp Để phát hiện biên của đối tượng trong frame ảnh. Phương pháp này được áp dụng để tìm biên cho ảnh 256 cấp xám đã thử nghiệm và được đánh giá khá hiệu quả. Việc xử lý và thao tác trên các ảnh xám có một ưu điểm là dễ xử lý hơn các ảnh màu mà vẫn giữ được nhiều đặc tính của ảnh. Khi muốn nhận dạng biên cho các ảnh màu, chúng ta có thể dễ dàng chuyển đổi về khuôn dạng ảnh 256 cấp xám bằng hàm ConvertRGB được cài đặt trong chương trình Demo. Việc không xử lý ở ảnh đen trắng, bởi các frames ảnh được quay hoặc thu trực tiếp từ Camera là ảnh màu 16 bits hoặc 24 bits. Do Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 33 đó, khi chuyển sang ảnh đen trắng sẽ làm mất rất nhiều thông tin. Hình 2.7, 2.8 và hình 2.9 dưới đây sẽ minh họa điều này. Hình 2.7 Ảnh gốc Hình 2.8 Ảnh đen trắng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 34 Hình 2.11. biên của ảnh đen trắng PCX Hình 2.9 Ảnh đen trắng dùng hàm ConvertRGB Để xây dựng thuật toán tìm biên cho ảnh đa cấp xám, trước hết chúng ta nhắc lại một thuật toán tìm biên cho ảnh trắng đen rất đơn giản và hiệu quả. Ý tưởng của thuật toán này là dựa vào định nghĩa: trong ảnh trắng đen, một điểm có thể gọi là biên nếu nó là điểm đen và có ít nhất một điểm trắng lân cận. Ảnh sẽ được quét từ trái sang phải, từ trên xuống dưới, khi gặp điểm đen đầu tiên sẽ thực hiện quay theo 8 láng giềng để tìm điểm biên tiếp theo, cứ thế cho đến khi quay được về điểm biên được xác định đầu tiên thì dừng. Kết quả chúng ta sẽ được biên của ảnh. Hình dưới đây minh họa kết quả dò biên ảnh đen trắng PCX Hình 2.10 Ảnh đen trắng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 35 Hình 2.11 Biên ảnh đen trắng Thủ tục phát hiện biên của ảnh đen trắng PCX có thể được viết ngắn gọn như sau: LPSTR Detect_Edge_BW_Image(LPSTR pOrgImg, LPSTR pEdgImg) { int i,j,k struct Point { int x,y; }; Point Orient[8] = {(0,1), (-1,1), (-1,0), (-1,-1), (0,-1), (1,-1),(1,0),(1,1) }; for (i=0; i<biHeight; i++) for (j=0; j<biWidth; j++) if ( GetPoint(pOrgImg,i,j)==BLACK ) for (k=0; k<8; k++) if (GetPoint(pOrgImg,i+Orient[k].x,j+Orient[k].y)==WHITE) { SetPoint(pEdgImg,i,j,BLACK); break; } return pEdgImg; } Trong đó:  biWidth, biHeight lần lượt là chiều rộng và chiều cao của ảnh (tính theo đơn vị pixel) .  GetPoint() và SetPoint() là các hàm đọc, ghi điểm ảnh.  pOrgImg, pEdgImg là các con trỏ lần lượt trỏ tới các vùng dữ liệu của ảnh gốc và ảnh biên. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 36 Như vậy, việc tìm biên cho các ảnh trắng đen theo cách dựa vào định nghĩa là khá dễ dàng (dựa vào 2 mức 0, 1). Chúng ta sẽ dựa theo ý tưởng đó để tìm biên cho các ảnh đa cấp xám. Tuy nhiên có một khó khăn mắc phải là ảnh đa cấp xám có 256 màu. Sự biến thiên về giá trị độ xám của điểm ảnh theo các hướng khác nhau cũng là khác nhau. Do đó nếu đánh giá một điểm là điểm biên hay không nếu chỉ dựa vào việc đánh giá độ chênh lệch mức xám của điểm đó với từng điểm láng giềng lân cận sẽ cho kết quả chưa tốt và ảnh biên thu được vẫn còn khá nhiều nhiễu. Để cho kết quả chính xác hơn (để hạn chế nhiễu) thay vì so sánh giá trị xám của điểm ảnh đang xét với từng điểm ảnh lân cận chúng ta sẽ so sánh với mức xám trung bình của vùng cửa sổ NxN bao quanh điểm đó cộng với một giá trị 1 cho trước. PTB+ ä1< P Hình 2.12 Ảnh gốc Hình 2.13 Ảnh biên với cách đánh giá độ chênh lệch mức xám của điểm ảnh với từng điểm láng giềng kế Hình 2.14 So sánh với mức xám trung bình của cửa sổ trong trường hợp N=5 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 37 Hình 2.15 Xác định điểm biên thực sự Cơ sở đúng đắn của thuật toán là dựa trên lý thuyết về tính dư thừa thông tin không gian: các điểm ảnh lân cận có thể có cùng hoặc gần cùng một số đặc tính. Thực nghiệm cho thấy sử dụng các cửa sổ vuông kích thước 5x5 để tìm biên hạn chế được nhiều nhiễu là hơn các cửa sổ 3x3 nhưng các đường biên thu được cũng sẽ dày hơn. Việc tăng kích thước của cửa sổ lên nữa không làm tăng độ chính xác lên nhiều mà lại làm cho độ phức tạp tính toán tăng lên rất nhanh. Chúng ta sẽ sử dụng các mặt nạ 5x5 để tìm biên nhưng để thu được các đường biên mảnh cần vận dụng lại ý tưởng sử dụng định nghĩa. Tức là các điểm ảnh được lọc ra sau khi so sánh với giá trị xám trung bình của cửa sổ (tạm gọi là các điểm thuộc lân cận biên) lại được so sánh một lần nữa với các điểm kế cận (thuộc 8 láng giềng của nó) cộng với một giá trị 2 xác định trước. Và các điểm biên thu được lần này mới được coi là các điểm biên thực sự. Pi + 2 < P Hình dưới đây minh họa kết quả của phương pháp tìm biên kết hợp với N=5. Hình 2.16. ảnh biên áp dụng phương pháp kết hợp với N=5 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 38 Dưới đây là thủ tục tìm biên của chương trình: LPSTR DetectEdgeGrayImage(LPSTR pOrgImg,LPSTR pEdgImg,int 1,int 2) { int i,j,k,ii,jj,P0; struct Point { int x,y; }; Point Orient[8] = {(0,1), (-1,1), (-1,0), (-1,-1), (0,-1), (1,-1),(1,0),(1,1) }; for (i=2; i<biHeight-2; i++) for (j=2; j<biWidth-2; j++) { // tinh gia tri xam trung binh cua cac diem anh thuoc cua so 5x5 for (ii=i-2;ii<=i+2;ii++) for (jj=j-2;jj<=j+2;jj++) TG+=GetPoint(pOrgImg,ii,jj); TG=int(TG/25); P0=GetPoint(pOrgImg,i,j); if (P0+1<TG) for (k=0;k<8;k++) // so sanh voi cac diem thuoc 8 lang gieng if (P0+2<GetPoint(pOrgImg,i+Orient[k].x,j+Orient[k].y)) { SetPoint(pEdgImg,i,j,BLACK); break; } } return pEdgImg; } 2.1.4 Phát hiện biên dựa vào trung bình cục bộ Phần này đề cập đến kỹ thuật mới dựa vào trung bình cục bộ trên cơ sở Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 39 đánh giá độ chênh lệch về giá trị mức xám của điểm ảnh so với các điểm lân cận do đó kết hợp được ưu điểm của cả 2 khuynh hướng phát hiện biên trực tiếp và gián tiếp. Ý tưởng chính của thuật toán được đề xuất là xác định tất cả các điểm nằm trên biên không theo hướng tìm kiếm và sử dụng các ma trận lọc mà sẽ thông qua việc so sánh độ chênh lệch về mức xám của nó so với mức xám chung của các điểm ảnh lân cận (mức xám nền). Trước hết tính giá trị xám trung bình của các điểm ảnh nằm trong phạm vi của ma trận 3×3 hoặc 5×5 có tâm là điểm ảnh đang xét. Nếu như độ chênh lệch mức xám giữa điểm đang xét với giá trị xám trung bình thỏa mãn lớn hơn một mức tối thiểu δ1 nào đó (PTB+ δ1< P) thì chúng ta sẽ coi nó là điểm biên và ghi nhận lại, còn các điểm không thỏa mãn điều kiện trên sẽ được coi là điểm nền. N=5 Hình 2.17 Ma trận điểm ảnh trước và sau lọc Ảnh biên thu được với δ1= 25 Ảnh biên thu được với δ1= 250 Hình 2.18 Các ảnh biên kết quả thu được theo thuật toán đề xuất *Nhận xét: Thuật toán dò biên sử dụng trong chương trình tuy đã hạn chế được nhiều nhiễu so với việc sử dụng các bộ lọc và làm nổi rõ các đường biên nhưng vẫn không loại bỏ được hầu hết các nhiễu. Khi áp dụng thuật toán δ1 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 40 trên chúng ta vẫn có thể làm giảm bớt nhiễu đi nhiều hơn nữa bằng cách tăng giá trị của hệ số delta lên. Nhưng khi đó các đường biên thu được cũng bị đứt đoạn và mờ đi nhiều. 2.1.5. Cải thiện và nâng cao chất lƣợng biên ảnh 2.1.5.1. Các kỹ thuật tiền xử lý Trong giai đoạn tiền xử lý, vấn đề mà chúng ta phải quan tâm đến nhiều nhất đó là vấn đề nhiễu. Nhiễu là nguyên nhân chủ yếu gây nên những khó khăn cho phân tích ảnh. Nguyên nhân gây ra nhiễu có thể là do nhiễu điện tử của máy thu hoặc chất lượng kém của bộ số hóa. Chúng ta hãy xem xét thể hiện của nhiễu trên ảnh thế nào. 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ố hóa phải có cùng giá trị. Nhưng thực tế quan sát kỹ, 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 là sự dịch chuyển nhanh của tín hiệu thu nhận (tín hiệu ảnh) 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. Phần dưới đây, em sẽ trình bày các kỹ thuật khử nhiễu. Trước hết chúng ta tìm hiểu một số kỹ thuật lọc nhiễu đang được sử dụng phổ biến hiện nay. Để khử nhiễu, thông thường người ta lấy “tổ hợp” các điểm lân cận (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ố). Cơ sở lý thuyết của kỹ thuật lọc số cũng dựa trên tính dư thừa thông tin không gian: các pixel lân cận có thể có cùng hoặc gần cùng một số đặc tính. Hơn nữa nhiễu cũng có thể coi như sự đột biến của một số điểm ảnh so với các điểm ảnh lân cận. Tùy theo cách tổ hợp điểm đang xét mà ta có kỹ thuật lọc tuyến tính hay phi tuyến. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 41 2.1.5.1.1. Kỹ thuật lọc tuyến tính Với 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ạ. Nguyên tắc lọc theo tổng trọng số được minh họa như hình dưới đây: Tức là: P = P1K1 + P2K2 + P3K3 + P4K4 + P5K5 + P6K6 + P7K7 + P8K8 = X 8 lân cận của P5 nhân cuộn 3x3 Hình 2.19 Lấy tổ hợp các điểm ảnh lân cận. Các mặt nạ thường dùng là : Mặt nạ H1 là mặt nạ dùng để tính trung bình không trọng số (không ưu tiên theo hướng nào cả). Mặt nạ H2 cho trọng số lớn nhất với điểm ở tâm. Còn mặt nạ H3 ưu tiên cho hướng x,y. Các mặt nạ lọc nói trên, nhìn chung làm giảm mức nhiễu trắng đi Nw lần, với Nw là số phần tử của mặt nạ. Tuy nhiên, nếu kích thước của mặt nạ càng lớn thì ảnh càng bị nhòe. P P1 P2 P3 P4 P5 P6 P7 P8 P9 K1 K2 K3 K4 K5 K6 K7 K8 K9 1 1 1 H1=1/9 1 1 1 1 1 1 1 1 1 H2=1/10 1 2 1 1 1 1 1 2 1 H3=1/16 2 4 2 1 2 1 Hình 2.20 Một số kiểu mặt nạ sử dụng cho kỹ thuật lọc phi tuyến. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 42 2.1.5.1.2. Kỹ thuật 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 là 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. Bộ lọc phi tuyến thường dùng là lọc trung vị (median filtering). Trong trường hợp một chiều, trung vị xa của một chuỗi n phần tử {xn} được định nghĩa: - Nếu n lẻ: có (n-1)/2 phần tử lớn hơn xa và (n-1)/2 nhỏ hơn hay bằng xa. - Nếu n chẵn: xa là trung bình cộng của hai phần tử xi và xj{xn} sao cho có (n-2)/2 phần tử nhỏ hơn hay bằng xi và (n-2)/2 phần tử lớn hơn hay bằng xj. Thuật toán lọc trung vị được dùng để lọc nhiễu bằng cách trượt trên mặt phẳng ảnh, mỗi lần trượt di chuyển một điểm. Những phần tử trong cửa sổ được xem như là một chuỗi {xn} và điểm quan tâm được thay thế bởi giá trị xn của chuỗi. Thí dụ như chuỗi {1,2,9,5,4}, điểm trung tâm sẽ được thay thế bởi giá trị 4 được tính theo nguyên tắc ở trên. Rõ ràng trong thí dụ này 9 có thể là nhiễu chọn trong dãy tăng dần. Lọc trung vị thường sử dụng cửa sổ có kích thước 3. Tuy nhiên nếu không có dấu hiệu quan trọng nào bị mất, kích thước của cửa sổ có thể tăng lên 5,7,9 …và sẽ kết thúc khi quá trình lọc không làm thay đổi kết quả. Mở rộng kỹ thuật lọc trung vị cho trường hợp hai chiều. Giả sử đầu vào là X(m,n) và đầu ra bộ lọc là Y(m,n) lọc trung vị hai chiều được định nghĩa: Y(m,n)= Median(X(m-k,n-l)) với k,l  [1,L] Lưu ý rằng công thức Lc = (L+1)/2 còn được gọi là bán kính bộ lọc. Do vậy, ta có cách viết khác tương đương (k,l)  (-r,r) với 2r+1=L. Khi đó, trung vị của cửa sổ vuông nxn có thể được tính như những phần tử của chuỗi một chiều. Ta tiến hành sắp xếp dãy đó rồi thay thế những phần tử ở tâm của cửa sổ bằng trung vị của dãy vừa tìm được. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 43 Lọc trung vị có một nhược điểm là số lượng tính toán khá lớn (có thể bằng số mũ của kích thước cửa sổ lọc). Vì vậy, để khắc phục nhược điểm này người ta sử dụng một một phương pháp khác là lọc giả trung vị (Pseudo- median Filter). Thuật toán lọc giả trung vị có thể mô tả tổng quát như sau: Bƣớc 1: Lấy các phần tử trong cửa sổ ra mảng một chiều (L phần tử) Bƣớc 2: Tìm min của lần lượt các chuỗi con rồi lấy max, gọi m1 là giá trị này. Bƣớc 3: Tìm max của lần lượt các chuỗi con rồi lấy min, gọi m2 là giá trị tìm được. Bƣớc 4: Gán giá trị điểm đang xét là trung bình cộng của m1 và m2. Lọc giả trung vị có nhiều điểm giống như lọc trung vị. Dãy lấy ra không cần sắp xếp và giá trị gọi là trung vị, lại được tính theo trung bình cộng của max của min và của min của max. Các kỹ thuật lọc nhiễu như đã trình bày ở trên tuy khử nhiễu khá tốt nhưng đồng thời cũng lại làm nhòe các đường biên ảnh hoặc có tính toán khá phức tạp. Để có thể khắc phục được nhược điểm này, tôi đã áp dụng kỹ thuật lọc tuyến tính cải tiến để có thể vừa loại bỏ được phần lớn các nhiễu, vừa có thể giữ được độ nét của các đường biên ảnh. 2.1.5.1.3. Kỹ thuật lọc nhiễu cải tiến Nội dung của thuật toán lọc nhiễu sử dụng trong chương trình được mô tả như sau: duyệt toàn bộ ảnh gốc, đối với mỗi điểm ảnh xét các điểm thuộc 8 láng giềng của nó. Nếu có điểm ảnh nào có giá trị xám không chênh lệch quá (hơn hoặc kém) giá trị xám của điểm ảnh hiện tại một khoảng δ cho trước thì chúng ta đánh dấu lại. Giá trị của điểm ảnh mới trên ảnh thu được tương ứng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 44 với điểm ảnh đang xét sẽ là trung bình cộng của các điểm được đánh dấu và điểm đang xét. Thí dụ: Nếu điểm mà chúng ta đang xét là điểm P và có 5 điểm lân cận của nó thỏa mãn điều kiện P-δ ≤ Pi ≤ P+ δ là P1, P2, P4, P5, P7 thì giá trị của điểm P mới sẽ được tính theo công thức: P = (P1 + P2 + P4 + P5 + P7)/5 Hàm lọc nhiễu cải tiến SmoothImage() được trình bày khái quát như sau : LPSTR SmoothImage(LPSTRpOrgImg,LPSTR pFltImg,int δ) { int i,j,ii,jj,P,nP; for (i=1; i<biHeight-1; i++) for (j=1; j<biWidth-1; j++) { P0=GetPoint(pOrgImg,i,j); P=0; nP=0; for (ii=i-1; ii<=i+1; ii++) for (jj=j-1; jj<=j+1; jj++) if((P0-<=GetPoint(pOrgImg,ii,jj))&&(GetPoint(pOrgImg,ii,jj))<=P0+ δ)) { P=P+GetPoint(pOrgImg,ii,jj); P1 P2 P3 P8 P P4 P7 P6 P5 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 45 nP=nP+1; } P=int(P/nP); SetPoint(pFltImg,i,j,P); } return pFltImg; } Trong đó: - pOrgImg, pFltImg lần lượt là các con trỏ trỏ đến vùng dữ liệu của ảnh gốc và ảnh lọc nhiễu. - P0,P là các giá trị xám của điểm ảnh thuộc ảnh gốc và điểm ảnh mới. - nP là số lượng điểm ảnh thỏa mãn điều kiện P0- δ ≤ Pi ≤ P0+ δ. Chúng ta tạm gọi kỹ thuật vừa trình bày ở trên là lọc phân lớp tuyến tính, bởi vì chúng ta đã thực hiện phân chia các điểm ảnh trong cửa sổ mặt nạ ra thành hai phần: một phần có giá trị xám nằm trong lân cận của điểm ảnh ở tâm cửa sổ, còn phần còn lại là các điểm ảnh có giá trị xám nằm ngoài khoảng; sau đó mới tính giá trị của điểm ảnh mới. Hạn chế của các kỹ thuật lọc tuyến tính là không phân biệt được các điểm nhiễu và điểm biên. Thực tế khi quan sát kỹ các bức ảnh chúng ta sẽ thấy các phần lớn các phần tử nhiễu là những điểm cô lập và có độ chênh lệch mức xám nhỏ hơn các điểm biên khi so sánh với các điểm nền. Kỹ thuật lọc phân lớp tuyến tính tỏ ra linh động hơn vì chúng làm nâng giá trị xám của các điểm nhiễu tới gần mức giá trị xám của các điểm nền (coi rằng màu nền là màu có giá trị xám cao hơn trong bảng màu), hoặc giữ nguyên giá trị xám của chúng nếu đó là các điểm nhiễu có độ biến thiên giá trị xám lớn (chúng ta sẽ còn có một thuật toán khác để khử các điểm nhiễu cô lập này ở phần hậu xử lý cho ảnh biên). Các điểm biên thường là những điểm có mức xám thấp và nằm liền kề nhau thành một chuỗi nên khi Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 46 Hình 2.21 Minh họa thuật toán hậu xử lý qua lọc nhiễu giá trị của nó sẽ không bị thay đổi nhiều. Do đó thuật toán lọc nhiễu phân lớp vừa đảm bảo được yêu cầu khử nhiễu cho ảnh biên, vừa không làm cho các đường biên bị nhòe đi nhiều. Hơn nữa, nó còn cho phép chúng ta thay đổi độ lọc nhiễu bằng cách cho điểu chỉnh tham số δ ở đầu vào. Tuy nhiên nếu giá trị của δ càng lớn thì ảnh càng bị nhòe dù rằng tốc độ nhòe ảnh là chậm khi ta thay đổi giá trị của δ. 2.1.5.2. Kỹ thuật hậu xử lý Chúng ta biết rằng, ảnh cho dù đã qua lọc nhiễu trước khi dò biên thì vẫn có thể còn tồn tại các đốm nhiễu. Bởi vì, chúng có thể là các điểm có độ biến thiên mức xám tương đương với các điểm biên hoặc là các đối tượng nhỏ trong ảnh. Chúng ta gọi các đối tượng như vậy là các đốm nhiễu. Khi xử lý nhận dạng ảnh hiếm khi cần phải quan tâm đến các đối tượng này, bởi vậy việc loại bỏ chúng đi là cần thiết. Chúng ta sẽ tiến hành khử đốm nhiễu trên các ảnh thu được sau khi làm nổi biên. Chúng ta có nhận xét là kích thước vùng liên thông (vùng điểm ảnh kế cận nhau) của các đốm nhiễu là rất nhỏ so với kích thước của các vùng biên của đối tượng. Đây sẽ là cở sở cho thuật toán khử đốm nhiễu được trình bày dưới đây. Trong thuật toán này chúng ta sử dụng một Queue. Queue được trỏ bởi hai con trỏ CF (trỏ trước) và CB (trỏ sau). Con trỏ CF dùng để trỏ tọa độ của điểm đang xét, CB trỏ tới tọa độ của điểm cuối cùng trong danh sách các điểm thuộc vùng liên thông đã xác định được Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 47 Các bước của thuật toán được mô tả như sau: Bƣớc 1: đọc điểm ảnh đầu tiên, nếu đó là điểm đen thì ghi lại tọa độ của nó vào Queue rồi chuyển sang bước 2, nếu không thì chuyển sang điểm ảnh tiếp theo và thực hiện lại bước 1. Bƣớc 2: đọc tọa độ điểm ảnh (xo,yo) được trỏ bởi con trỏ CF và đánh dấu lại vào ảnh gốc (để không duyệt lại nữa). Bƣớc 3: Xét các điểm ảnh thuộc 8 láng giềng của (xo,yo), nếu đó là điểm đen thì ghi lại tọa độ của nó vào trong Queue và cho trỏ bởi con trỏ CB, tăng giá trị của biến đếm kích thước Queue_Size thêm một đơn vị. Lặp lại bước 2 cho đến khi CF > CB hoặc Queue_Size > Max_Size. Với Max_size là một giá trị nhập vào quy định kích thước tối đa của vùng liên thông (kích thước đốm nhiễu) . Bƣớc 4: đọc giá trị của Queue_Size, nếu Queue_Size > Max_Size thì xóa tất cả các điểm thuộc Queue; nếu không thì hủy đánh dấu cho chúng. Quay lại thực hiện bước 1 cho đến khi toàn bộ các điểm ảnh đều được xét duyệt hết. Dưới đây là trình bày khái quát của hàm Despecke() LPSTR Despecke(LPSTR pImg,int Max_Size) { struct Point{ int x,y; }; Point *Q=new Point[MaxSize+10]; int i,j,k,CF,CB,QSz,xo,yo; int dx[8]={-1,-1,-1,0,1,1,1,0}, dy[8]={-1,0,1,1,1,0,-1,-1}; for (i=0;i<biHeight;i++) for (j=0;j<biWidth;j++) if (GetPoint(pImg,i,j)==BLACK) Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 48 { // luu toa do diem dau tien (i,j) vao Queue CF=CB=0; QSz=1; Q[0].x=i; Q[0].y=j; do{ // danh dau la diem da xet SetPoint(pImg,Q[CF].x,Q[CF].y,GREEN); xo=Q[CF].x; yo=Q[CF].y; for (k=0;k<8;k++) // neu tim thay mot diem ke can diem dang xet thi // dua no vao Queue if (GetPoint(pImg,xo+dx[k],yo+dy[k])==BLACK) { CB++; QSz++; Q[CB].x=xo+dx[k]; Q[CB].y=yo+dy[k]; } CF++; }while (CF<=CB&&QSz<=MaxSize); // neu kich thuoc vung lien thong khong vuot qua gia tri // Max_Size thi xoa no di if (QSz<=MaxSize) for (k=0;k<QSz;k++) SetPoint(pImg,Q[k].x,Q[k].y,WHITE); else // nguoc lai huy danh dau cho cac diem trong Queue for (k=0;k<QSz;k++) SetPoint(pImg,Q[k].x,Q[k].y,BLACK); } delete Q; return pImg; } Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 49 Hạn chế của thuật toán này là nếu như ảnh biên thu được có các đường biên bị đứt nét thì nó cũng bị coi là các đốm nhiễu và bị khử bởi thuật toán của chương trình. Điều này đòi hỏi ảnh biên phải có các đường biên liên tục. 2.2 Phép biến đổi Fourier. 2.2.1 Định nghĩa : Định nghĩa phép biến đổi Fourier của hàm f(x) như sau:     dxe)x(f)w](f[F iwx và phép biến đổi Fourier ngược (IFT) là:       dwe)w(f 2 1 )x](f[F iwx1 Phép biến đổi Fourier của hàm f(x) là hàm f(w). F[f] là kí hiệu biến đổi Fourier của hàm f, hoặc gọn hơn, phép biến đổi của f theo x tại w. Phép biến đổi thực hiện theo biến độc lập của f (khi f=f(t)), t là biến độc lập; f=f(x) cho biết x là biến độc lập... tại biến mặc định w. Qui ước F[f] là biến đổi Fourier của f tại w và F-1[f] là biến đổi Fourier ngược (IFT) của f tại x. Matlab Symbolic cung cấp 2 hàm fourier và ifourier xác định phép biến đổi Fourier và phép biến đổi ngược. Cú pháp của hàm fourier: F = fourier(f) -Trả về kết quả phép biến đổi Fourier của hàm vô hướng kí hiệu f với biến độc lập x. F là hàm của w. Nếu f=f(w), fourier trả về hàm của t: F=F(t). Theo định nghĩa F(w)=int(f(x)*exp(-i*w*x),x,-inf,inf), với tích phân theo biến x (Thực tế biến kí hiệu trong f được xác định bởi findsym) F = fourier(f,v) -Trả về hàm F theo biến kí hiệu v thay cho biến mặc định w: fourier(f,v) F(v) = int(f(x)*exp(-i*v*x),x,-inf,inf). F= fourier(f,u,v) -Coi f là hàm của u thay cho biến mặc định x. F là hàm của v. fourier(f,u,v) F(v) = int(f(u)*exp(-i*v*u),u,-inf,inf). Biến đổi Fourier ngược. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 50 Cú pháp của hàm ifourier: f = ifourier(F) -Trả về dạng biến đổi Fourier ngược của biến vô hướng kí hiệu F theo biến độc lập w. Mặc định trả về hàm f của x. Biến đổi Fourier ngược được áp dụng cho hàm của w và trả về hàm của x: F = F(w) => f = f(x). Nếu F = F(x), thì ifourier trả về hàm của t: f = f(t). Theo định nghĩa, f(x) = 1/(2*pi) * int(F(w)*exp(i*w*x),w,-inf,inf) và tích phân được tính theo x. f = ifourier(F,u) -Trả về hàm f của u thay cho biến mặc định x: ifourier(F,u) f(u) = 1/(2*pi) * int(F(w)*exp(i*w*u,w,-inf,inf). ở đây u là biến vô hướng kí hiệu. f = ifourier(F,v,u) -Coi F là hàm của v thay cho biến mặc định w: ifourier(F,v,u) f(u) = 1/(2*pi) * int(F(v)*exp(i*v*u,v,-inf,inf), tích phân được lấy theo v. 2.2.2 Fourier Elliptic trong đường biên đóng. Chain Code đầu tiên được mô tả bởi Freeman là một đường biên liên tục bằng một đoạn tuyến tính mà bao gồm tám đoạn đường chuẩn hóa. Mã của một đường biên là chuỗi V của độ dài K. V = a1a2….ak Với mỗi một liên kết ai là một số nguyên giữa 0 và 7 định hướng /4 theo hướng chiều kim đồng hồ truy cập từ trục X của một XY phối hợp hệ thống của chiều dài 1 hoặc 2 phụ thuộc, tương ứng. Các đại diện của liên kết vector ai, bằng cách sử dụng ký hiệu phasor là: i a a 4 ))1(1( 2 12 1( 1     Vị dụ về chain code trong hình sau: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 51 V1=0005676644422123 H 2.22 Ví dụ về chain code Chuỗi mã (chain codes) Để có thể mô tả một chu tuyến của đối tượng ảnh dưới dạng số, người ta có thể lưu trữ theo phối hợp của một chuỗi các điểm ảnh trong ảnh đó. Hay là người ta có thể chỉ lưu trữ vị trí tương đối giữa các điểm ảnh liên tiếp. Đó chính là ý tưởng cơ bản của chuỗi mã. Chuỗi mã là một trong các kỹ thuật lâu nhất trong lĩnh vực thị giác máy tính (computer vision). Kỹ thuật này được giới thiệu từ năm đầu thập niên 60 của thế kỷ 20 bởi Freeman, và tiếp tục được ông phát triển và xem xét đến năm 1974. Với chuỗi mã, tập các điểm ảnh trong đường biên một hình dạng của đối tượng ảnh được chuyển sang một tập các kết nối giữa chúng. Về cơ bản nguyên lý của mã chuỗi như sau: Khi chúng ta thu được một đường biên hoàn chỉnh thì đó là một tập các điểm ảnh đã được liên kết với nhau, sau đó bắt đầu từ 1 trong các điểm ảnh đó chúng ta cần xác định chiều đến các điểm ảnh tiếp theo trong đường biên đó. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 52 Cụ thể là, điểm tiếp theo là một trong những điểm liền kề theo chiều kim của la bàn. Do đó, các mã chuỗi được hình thành bởi sự móc nối một số chỉ rõ chiều của điểm ảnh tiếp theo. Với một điểm ảnh thu được thì chiều kế tiếp từ điểm ảnh đó tới điểm ảnh tiếp theo trở thành phần tử trong mã cuối. Quá trình này sẽ được lặp cho mỗi điểm ảnh đến tận khi tới điểm bắt đầu. Khi đó, hình dạng của đối tượng ảnh được phân tích hoàn toàn. Việc xác định những kết nối của chuỗi mã có thể được xuất phát từ nguyên lý của 4-láng giềng và 8-láng giềng như minh họa trong hình 2.23 P1 P2 P P0 P3 P3 P2 P1 P4 P P0 P5 P6 P7 a) b) c) d) Hình 2.23. Minh họa sự kết nối của chuỗi mã theo nguyên lý 4-láng giềng, và 8-láng giềng a)4-láng giềng; b) 8-láng giềng; c) sự kết nối của các mã chuỗi theo cách 4- kết nối; d) sự kết nối các mã chuỗi theo cách 8-kết nối. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 53 Tương ứng với chỉ số trong hình 2.23, mã code của điểm P sẽ được đánh số từ 0 đến 3 đối với 4-kết nối, và đánh số từ 0 đến 7 đối với 8-kết nối, chỉ số này tăng theo chiều kim đồng hồ. Tiếp theo, em minh họa cách tính chuỗi mã của đối tượng ảnh như hình 2.24. Trong trường hợp này, chúng ta đã xác định chiều của điểm bắt đầu là từ hướng nam, nên thành phần đầu tiên của chuỗi mã là 2 đối với 4-kết nối, và là 3 đối với 8-kết nối. Chiều từ điểm P1 điểm tiếp theo, điểm P2 theo hướng đông, nên thành phần mã chuỗi tiếp theo là 1 đối với 4-kết nối, nhưng đối với 8-kết nối hướng của P2 là nam, nên thành phần tiếp theo của chuỗi mã là 4. a) Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 54 b) c) Hình 2.24. Minh họa chuỗi mã bởi các kết nối khác nhau a) Đối tượng ảnh; b) chuỗi mã với 4-kết nối; c) chuỗi mã với 8-kết nối Điểm tiếp theo sau P2 là P3 có hướng nam nên thành phần tiếp theo có mã là 2 đối với 4-kết nối, còn với 8-kết nối thì hướng của P3 là hướng đông nam, nên thành phần tiếp theo có mã là 3. Quá trình này được lặp đi lặp lại đến khi đến điểm P23 được kết nối về phía đông để tới điểm băt đầu, do đó thành phần mã cuối cùng sẽ là 1 đối với 4-kết nối, và là 2 đối với 8-kết nối. Do đó, chuỗi mã của ảnh trong hình 2.24(a) với 4-kết nối và 8-kết nối tương ứng là như sau: code4-kết nối={2,1,2,2,12,2,3,2,2,3,0,3,0,3,0,0,1,0,1,0,1} code8-kết nối={3,4,3,4,4,5,4,6,7,7,7,0,0,1,1,2} Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 55 Rõ ràng, chuỗi mã sẽ khác nhau nếu như điểm bắt đầu khác nhau. Do đó, chúng ta cần phải có điểm bắt đầu xác định trước và bất biến. Thuật toán chain code được thể hiện như sau: Class Chain: Public LineRep{ Declare_members (Chain) ChainSeq Chain; Public; Enum ChainDir { north=0, ne=1, east =2, se=3, south=4, sw=5, west =6, nw=7 }; Static const int DefautLen; Chain(); Chain(); Chain (PointXY&, int = Chain: :DefautLen); Chain (const Chain&); Int number() const {return chain.length();} Void append (byte b){chain.append(b);} Void append (const chain&); Inline byte operator[] (int) const; } 2.2.3 Những biến đổi Fourier rời rạc (DFL) 2.2.3.1 Biến đổi một chiều. Cho rằng mối quan tâm xử lý hình ảnh mẫu dữ liệu, ta yêu cầu một phiên bản của Fourier biến đổi xử lý đó. Điều này được gọi là biến đổi Fourier rời rạc (DfL). DFL của một bộ px điểm N (lấy mẫu tại một tần số đó ít nhất bằng với Nyquist Tỷ lệ lấy mẫu) vào tần số lấy mẫu FP u là: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 56      1 0 ) 2 (1 N x xu N J xu eP N Fp  Đây là phép biến đổi tương tự rời rạc của Fourier. Tín hiệu liên tục được thay thế bởi một tập các mẫu:      1 2 0 ) 2 (1 N x xu N J u eA N Fp  Từ đó tổng có thể được đánh giá theo:       n k n k r ra ra 0 1 0 0 1 )1( Những biến đổi Fourier rời rạc của một xung lấy mẫu được cho bởi:                                  u N J u N N J u e e N A Fp   2 2 2 1 1 Sắp xếp lại ta có: )/sin( )2/sin( 2 1 2 Nu u e N A FPu N u j                Các modul biến đổi là: )/sin( )2/sin( Nu u N A FPu    Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 57 Khi hàm mũ là 1. Xung ban đầu như H 2.25a và độ lớn của biến đổi Fourier tần số được đưa ra như H 2.25b H 2.25 Biến đổi cặp cho xung mẫu Trong tiến trình này các DFL nghịch đảo. Điều này có thể được sử dụng để tái tạo lại một phần tín hiệu tần số lấy mẫu từ các thành phần của nó bằng cách: N jN u eFPuPx         21 0 Có một số giả định được thực hiện trước khi áp dụng DFL. Thứ nhất là các tiêu chí lấy mẫu được thỏa mãn. Thứ hai là có chức năng lấy mẫu. Khi tọa ra những biến đổi của một xung Fourier giả định các xung lặp đi lặp lại bên ngoài. Cuối cùng tần số tối đa tương ứng với một nửa thời gian lấy mẫu. Điều này là phù hợp với giả định là các tiêu chí lấy mẫu không bị vi phạm. 2.2.3.2 Biến đổi hai chiều. Biến đổi Fourier hai chiều là biến đổi của các điểm ảnh (lấy mẫu điểm ảnh) với hai chiều không gian x, y kích thước tần số u,v. Biến đổi hai chiều Fourier tần số Fp u, v từ N x N điểm ảnh Px,y là:       1 0 ))( 2 (1 0 , 1 , N y vy N jN x yePx N vFPu  Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 58 Những biến đổi Fourier của một hình ảnh thực sự có thể thu được quang học bằng cách truyền một laser thông qua một slide ảnh và tạo thành một hình ảnh bằng cách sử dụng một ống kính. Những biến đổi Fourier của hình ảnh của slide được hình thành trên mặt phẳng tiêu trước ống kính. Điều này vẫn còn bị giới hạn cho các hệ thống transmissive trong khi hình thành phản xạ sẽ mở rộng ứng dụng của nó tiềm năng đáng kể (từ quang học tính toán chỉ là hơi nhanh hơn so với đối tác kỹ thuật số của nó). Các độ lớn của DFL 2D đến một hình ảnh của các thanh dọc (Hình 2.26 (a)) là được hiển thị trong (Hình 2.26 (b)). Điều này cho thấy rằng chỉ có ngang tần số không gian; các hình ảnh là không đổi trong trục thẳng đứng và không có tần số không gian dọc. Hình 2.26 Áp dụng biến đổi Fourier rời rạc 2D Hai chiều (2D) nghịch đảo DFL biến đổi từ miền tần số quay trở lại các tên miền của hình ảnh. Các DFL 2D nghịch đảo được cho bởi:       1 0 ))( 2 (1 0 ,, N v vy N jN u vePuvFPu  Các FFT chỉ có thể được áp dụng cho các hình ảnh có kích thước vuông. Tính toán thực tế liên quan đến việc biến đổi Fourier. Nghĩa là biến đổi Fourier được tính theo hai giai đoạn: các hàng đầu tiên được chuyển thể sử dụng một Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 59 FFT 1D, sau đó dữ liệu này được chuyển vào cột, một lần nữa bằng cách sử dụng một 1D FFT. Quá trình này có thể đạt được kể từ khi các chức năng cơ sở sinusoidal đang trực giao. Điều này cho rằng DFL 2D có thể bị phân hủy như sau: ))( 2 (1 0 ))( 2 (1 0 1 0 )( 21 0 , 1 , 1 vx N jN y vy N jN x N y vyux N jN x eyePx N yePx N                        Sắp xếp lại Fourier cho mục đích hiện thị Sắp xếp lại cho việc biến đổi tính toán Hiệu ứng đầy đủ của biến đổi Fourier được hiển thị bằng cách áp dụng cho một hình ảnh của độ phân giải cao hơn nhiều. Hình 2.27 (a) cho thấy hình ảnh của một khuôn mặt và hình 2.27 (b) cho thấy nó biến đổi. Những biến đổi cho thấy rằng có rất nhiều thông tin được mang trong những tần số thấp hơn vì đây là nơi mà hầu hết các thành phần quang phổ tập trung. Điều này là do ảnh Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 60 khuôn mặt có nhiều khu vực, nơi độ sáng không thay đổi rất nhiều, như má và trán. Các thành phần tần số cao phản ánh sự thay đổi trong cường độ. Theo đó, các thành phần tần số cao phát sinh từ tóc (và lông) và các tính năng của bộ mặt con người, chẳng hạn như mũi và mắt. H 2.27a Ảnh mặt H 2.27b Biến đổi ảnh mặt Hiệu ứng đầy đủ của biến đổi Fourier là như với 1D, có những biến đổi Fourier 2D cặp, minh hoạ trong Hình 2.28. Các 2D biến đổi Fourier của một hai chiều xung, hình 2.28 (a), là một hay chiều sinc chức năng, trong hình 2.28 (b). Các 2D biến đổi Fourier của một hàm Gaussian, trong hình 2.28 (c), lại là một hai chiều Gaussian chức năng trong lĩnh vực tần số, trong hình 2.28 (d). Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 61 H 2.28 Biến đổi Fourier 2D cặp 2.2.4 Các thuộc tính khác của biến đổi Fourier 2.2.4.1 Dịch chuyển lượng không đổi. Các phân tích thành tần số không gian không phụ thuộc vào vị trí của các tính năng bên trong hình ảnh. Nếu ta thay đổi một lượng tính năng cố định, hoặc thu được hình ảnh từ một vị trí khác nhau, độ lớn của biến đổi Fourier của nó không thay đổi. 2.2.4.2 Thuộc tính xoay. Những biến đổi Fourier của một hình ảnh xoay khi xoay hình ảnh gốc. Điều này được dự kiến kể từ khi phân tích thành tần số không gian phản ánh sự định hướng của các tính năng trong hình ảnh. Như vậy, định hướng được xây dựng phụ thuộc vào biến đổi Fourier. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 62 CHƢƠNG 3: CHƢƠNG TRÌNH THỬ NGHIỆM 3.1. Giới thiệu Trong những năm gần đây, nhiều nhà khoa học quan tâm đến việc ứng dụng các phép phân tích hình dạng của đối tượng để tìm ra được những đặc trưng của đối tượng đó, nhằm phục vụ cho quá trình nhận dạng và phân loại đối tượng. Những lý thuyết và cơ sở toán học về lĩnh vực phân tích hình dạng đã được phát triển từ thập niên 80 của thế kỷ 20. Từ đó đến nay, nhiều nhà khoa học đã ứng dụng vào trong lĩnh vực nông nghiệp nhằm phân tích hình dạng của một số nông sản để phân loại, phát hiện sớm đặc tính giống của nông sản như quả đậu tương, lá non của cây đậu tương, và nhân lúa mạch. Những kết quả này đã được ứng dụng phổ biến tại các nước như Nhật Bản, Hàn Quốc. Trong luận văn này, em nghiên cứu và cài đặt một số kỹ thuật như phát hiện biên ảnh nhị phân, biến đổi ảnh, và ứng dụng mã chuỗi (chain code) để “số hóa” hình dạng biên của đối tượng ảnh. 3.2. Số hóa biên đối tƣợng ảnh Như chúng ta đã biết việc phát hiện biên, và những thông tin chứa trong biên của đối tượng ảnh luôn đóng vai trò then chốt trong xử lý ảnh nói chung, và giai đoạn phân đoạn, nhận dạng, phân loại nói riêng. Chính vì thế, việc số hóa những thông tin lưu trữ trên biên luôn được nhiều nhà khoa học quan tâm. Một phương pháp phổ biến để lưu và biểu diễn biên của ảnh là kỹ thuật mã chuỗi (chain code). Với kỹ thuật mã chuỗi, thay vì chúng ta phải lưu toàn bộ ảnh để có được thông tin về biên của ảnh, thì ta chỉ cần lưu trữ một loạt mã chuỗi mô tả vị trí điểm biên của đối tượng ảnh trong ảnh đó. Quá trình thực hiện số hóa biên của đối tượng ảnh gồm các bước chính sau: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 63  Bƣớc 1: Biến đổi ảnh sang ảnh đa cấp xám  Bƣớc 2: Phân ngưỡng ảnh  Bƣớc 3: Biến đổi ảnh sang dạng nhị phân  Bƣớc 4: Phát hiện biên  Bƣớc 5: Số hóa biên bằng thuật thoán mã chuỗi Với 5 bước chính thông tin vị trí của từng điểm biên sẽ được lưu trữ ở tập tin và tái tạo lại khi cần thiết. Thuật toán số hóa biên của đối tượng ảnh. Thông tin đầu vào: - Ảnh *.bmp Thông tin đầu ra: - Tập tin chứa mã chuỗi. Hình 3.1. Thuật toán số hóa biên của đối tượng ảnh Bắt đầu Tải ảnh Biến đổi cấp xám Phân ngưỡng Biến đổi nhị phân Phát hiện biên Chain code Kết thúc Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 64 Những quá trình biến đổi ảnh cấp xám, phân ngưỡng, biến đổi sang ảnh nhị phân (ảnh chỉ có 2 màu trắng và đen) và kỹ thuật phát hiện biên của ảnh nhị phân đã trình bày ở những phần trên. Dưới đây, tôi tập trung trình bày thuật toán tính mã chuỗi, CHAINCODEALG() đã được cài đặt trong luận văn này. Thuật toán mã chuỗi CHAINCODEALG() gồm những bước chính như sau:  Bƣớc 1: Xác định vị trí ban đầu P0, STARTPOS()  Bƣớc 2: Lựa chọn kỹ thuật kết nối (4-kết nối, 8-kết nối)  Bƣớc 3: Lưu trữ vị trí biên, STOREDGE()  Bƣớc 4: Xác định điểm kế tiếp bằng thủ tục NEXTPOS()  Bƣớc 5: Kiểm tra điểm đầu CHECKSTARTPOI(), nếu trả về giá trị False thì quay về bước 3, ngược lại thì thuật toán kết thúc Hình 3.2. Thuật toán CHAINCODEALG() Bắt đầu Tải ảnh, P0, 4-kết nối; 8-kết nối STOREDGE NEXTPOS Kết thúc CHECKSTARPOI False True Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 65 Tiếp theo, tôi trình bày đoạn chương trình thuật toán CHAINCODEALG() CHAINCODEALG(BYTE *lpDIBBytes, DWORD StartPos, DWORD height, DWORD width) { DWORD i,j,k,vt,vtx,vty; BYTE mau; // Quet trong toan bo anh for(i=0;i< height;i++) for(j=0;j<width;j++) { Position(i,j, width, height, vt); //Tim vi tri diem dau if(vt==StartPos) { vtx=j; vty=i; for(k=0;k<=height*width;k++) { STOREDGE (vt); vt=NEXTPOS (vt); if(CHECKSTARPOI(vtx,vty,vt)==true) { return 1; } } } } } Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 66 3.3 Chƣơng trình thử nghiệm. Trong chương trình em xin trình bày ứng dụng phát hiện biên, Elliptic Fourier trong việc trích rút đặc tính hình dạng của lá gấc. Để trích rút đặc tính hình dạng của lá gấc có nghĩa là ta thực hiện biến đổi hình dạng lá gấc từ màu RGB sang dạng Gray Scale Histogram. Thực hiện việc đưa ảnh vào chương trình: Ta có ảnh lá gấc ban đầu như sau: Hình 3.3 Lá gấc ban đầu Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 67 Sau khi load image chọn Gray Scale và make Histogram ta được ảnh lá gấc sau khi histogram trong hình 3.4 Hình 3.4 Lá gấc sau khi được Histogram Sau khi Histogram ta thực hiện việc chain code cho lá gấc như sau: Hình 3.5 Lá gấc sau khi được chain code Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 68 Thực hiện chain code với các lá gấc khác ta được kết quả: Từ kết quả thử nghiệm ta thấy kết quả của lá gấc trước khi được xử lý và sau khi được xử lý được mô tả trong hình 3.6 Hình 3.6(a). Lá gấc trước khi xử lý (b) Sau khi được xử lý So sánh lá gấc trước và sau khi xử lý chain code ta thấy trong hình 3.6(a) những điểm được khoanh đỏ sẽ bị mất đi. Lá gấc sau khi chain code hình 3.6(b). Như vậy chương trình đã thưc hiện việc chain code cho những điểm biên đã được xác định. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 69 Kết quả thực nghiệm cho thấy việc nghiên cứu và tìm hiểu về biên ảnh, Elliptic Fourier là một hướng phát triển để từ đó có những nghiên cứu tiếp theo trong việc hỗ trợ phân loại sớm đặc tính giống của cây Gấc ở nước ta. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 70 PHẦN KẾT LUẬN Trong lĩnh vực xử lý ảnh, quá trình phát hiện biên của những đối tượng ảnh là một giai đoạn rất quan trọng bởi độ chính xác của quá trình nhận diện, lấy đặc tính hình dạng và phân đoạn ảnh chủ yếu dựa vào giai đoạn này. Chính vì vậy, bài toán phát hiện biên luôn được quan tâm và không ngừng được phát triển. Các đặc tính hình học chứa những thông tin về vị trí, kích thước hình học, hình dạng của các đối tượng trong ảnh, là đặc tính rất quan trọng trong xử lý nhận dạng ảnh. Các đặc tính này thường được trích rút ra thông qua việc xác định các đường biên các đối tượng trong ảnh. Biên chứa các thông tin về hình dạng ngoài của đối tượng ảnh. Có thể nói xác định biên là một trong những vấn đề quan trọng và hấp dẫn trong lĩnh vực nghiên cứu xử lý ảnh bởi khả năng biểu đạt cấu trúc đối tượng và tính ứng dụng rộng rãi của nó vào việc giải quyết nhiều bài toán như: nhận dạng tự động, thị thực máy tính, hoạt hình… Bên cạnh đó, việc kết hợp phương pháp phát hiện biên với phương pháp khác nhằm hỗ trợ cho công tác phát hiện sớm một số đặc tính của cây trồng dựa theo hình dạng của lá, hay củ đã và đang được nhiều nhóm khoa học trong và ngoài nước quan tâm. Trong luận văn thạc sỹ với đề tài “Phát hiện biên, biểu diễn Forier Elliptic và ứng dụng” em đã tập trung nghiên cứu một số phương pháp phát hiện biên, kỹ thuật biến đổi ảnh và phép biểu diễn Fourier Elliptic ứng dụng trong việc trích rút đặc trưng hình dạng lá của cây Gấc. Kết quả của luận văn sẽ làm tiền đề cho nghiên cứu sau này trong việc hỗ trợ phân loại sớm đặc tính giống của cây Gấc ở nước ta. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 71 Do trình độ và thời gian có hạn, chắc chắn luận văn còn nhiều thiếu sót. Vì vậy, rất mong nhận được sự góp ý quý báu của các thầy giáo, cô giáo và sự cộng tác của các bạn đồng nghiệp để nội dung luận văn được hoàn thiện hơn. Cuối cùng một lần nữa em xin chân thành bày tỏ lòng biết ơn sâu sắc đến thầy hướng dẫn TS. Phạm Việt Bình đã giúp đỡ em hoàn thành luận văn này. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 72 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Lƣơng Mạnh Bá, Nguyễn Thanh Thủy. Nhập môn xử lý ảnh số. Nhà xuất bản khoa học và kỹ thuật. Hà Nội, 1999. [2] Phạm Việt Bình. Luận văn tiến sĩ. Phát triển kỹ thuật dò biên, phát hiện biên và ứng dụng, 2006 [3] Đặng Văn Đức. Bài giảng Hệ quản trị cơ sở dữ liệu đa phương tiện. Hà Nội, 2005. [4] Ngô Quốc Tạo. Bài giảng Xử lý ảnh. Hà Nội, 2005. [5] Nguyễn Kim Sách. Xử lý ảnh và video số. NXB Khoa học và Kỹ thuật. Hà Nội, 1997. [6] [7] [8] Tiếng Anh [9] Chan Yuk Ming. Shape-based Image Retrieval In Iconic Image Databasesz. The Chinese University of HongKong, 6-1999. [10] Dan Fergus and Larry Roof. The Definitive Guide to the .NET Compact Framework. 2003. [11] Dan Fox, Jon Box. Building Solutions with the Microsoft .NET Compact Framework: Architecture and Best Practices for Mobile Development. Addison Wesley, 2003. [12] David Fox, Roman Verhosek. Micro Java™ Game Development. Addison Wesley, 2002. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 73 [13] Dengsheng Zhang. Image Retrieval Based on Shape. Monash University, 4-2002. [14] Erik Rubin, Ronnie Yates. Microsoft® .NET Compact Framework Kick Start. Sams Publishing, 2003. [15] John C. Russ. The Image Processing Handbook, Second Edition. CRC Press, 1995. [16] John Wiley & Sons. Image Processing Principles and Applications. Wiley-Interscience, 2005. [17] Parker J. R. Practical Computer Vision Using C. John wiley & Sons, Inc, 1993. [18] Remco C. Veltkamp, Michiel Hagedoorn. State-of-the-Art in Shape Matching. Utrecht University, Netherlands. 1999. [19] Shuang Fan. Shape Representation and Retrieval Using Distance Histograms. In Technical Report TR 01-14, Deparment of Computing Science, University of Alberta, Canada, October 17, 2001. [20] Tinku Acharya, Ajoy K. Ray. Image Processing Principles and Applications. A John Wiley & Sons, Inc. [21] Y. Alp Aslandogan, Clement T. Yu. Techniques and Systems for Image and Video Retrieval. Departments of EECS, University of Illinois, Chicago. 1999. [22] [23] [24] [25] [26] b40f-9abc80388620/course-2556-module-1.pdf Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 74 [27] [28] [29] minkowskidistance.html [30] doc/default.aspx [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] 0 1H1 = -1 0

Các file đính kèm theo tài liệu này:

  • pdfLuận văn-Phát hiện biên biểu diễn fourier elliptic và ứng dụng.pdf
Tài liệu liên quan