Xem mẫu

  1. Chương 1 Giới thiệu về xử lý ảnh 1.1 Giới thiệu Cuốn sách này cung cấp cho các bạn những lý thuyết cơ bản và các phương pháp thông dụng trong lĩnh vực xử lý ảnh. Trong chương 1, chúng tôi sẽ giới thiệu với bạn một vài khái niệm và thuật ngữ cần thiết. Chúng tôi cũng giới thiệu sơ lược các kiến thức tổng quát và các thiết bị cần thiết cho một hệ thống xử lý ảnh. Cuối cùng là phần giới thiệu chung về nội dung của các chương trong cuốn sách. 1.2 Chuẩn bị cơ bản Xử lý ảnh có quan hệ mật thiết với nhận thức về ảnh của con người. Nói một cách khác, “thị giác máy" dựa trên phép xử lý ảnh bằng sự phân tích của máy. Theo một số tác giả, hai lĩnh vực: xử lý ảnh số và “thị giác máy" được liên kết chặt chẽ với nhau. Tuy nhiên, đến nay, cả hai lĩnh vực này đã hoàn thiện đến mức chúng có thể cho phép giải quyết mỗi vấn đề một cách riêng rẽ. Trong cuốn sách này, chúng tôi sẽ trình bày về lĩnh vực xử lý ảnh số, phát triển các thuật toán và cung cấp những ví dụ cụ thể. Lĩnh vực về “thị giác máy" sẽ được trình bày trong một cuốn sách khác. Xử lý ảnh số có rất nhiều ứng dụng như làm nổi các ảnh trong y học, khôi phục lại ảnh do tác động của khí quyển trong thiên văn học, tăng cường độ phân giải của ảnh truyền hình mà không cần thay đổi cấu trúc bên trong của hệ thống chuyển tải, nén ảnh trong khi truyền đi xa hoặc l ưu trữ. Vấn đề này được trình bày một cách chặt chẽ trên quan điểm xử lý tín hiệu hai chiều. Cuốn sách này được chia làm 17 chương. Mỗi một chương đều đề cập đến một vấn đề cơ bản khác nhau và phục vụ cho các chương tiếp theo. Để hiểu tường tận, bạn phải đọc các chương theo đúng thứ tự mà nó được trình bày. Để hiểu đầy đủ thì yêu cầu phải chuẩn bị một số kiến thức cơ sở. Hiện nay, ngôn ngữ lập trình C được sử dụng phổ biến trong các bài toán kỹ thuật. Vì vậy, tôi chọn C làm ngôn ngữ cho các chương trình nguồn của tất cả các thuật toán. Bạn cần phải có một số kiến thức cơ bản về C để hiểu các chương trình này. Bạn có thể nghiên cứu C khi làm việc với cuốn sách này. Nó sẽ giúp bạn có các kỹ năng thực tế và đồng thời kiểm tra kiến thức về ngôn ngữ C của bạn. Phép biến đổi Z đ ược sử dụng xuyên suốt trong cuốn sách này và được trình bày trong chương 3. Các khái niệm toán học này đòi hỏi bạn cần phải hiểu biết tường tận tất cả các tài liệu được trình bày trong các phần trước. Năm chương đầu tiên có thể phục vụ cho các sinh viên năm
  2. thứ ba hoặc năm thứ tư của trường đại học hoặc cao đẳng, ngành điện, cơ khí hoặc máy tính. Cuốn sách cũng có thể đ ược sử dụng trong các bài giảng tốt nghiệp, tốt nhất là hơn hai học kỳ. Lĩnh vực này cũng hấp dẫn với sinh viên các ngành truyền hình, sinh vật học, thông tin, các ứng dụng quân sự .... Ngoài ra một máy PC (286 hoặc hơn) với vỉ mạch VGA sẽ dùng trong cuốn sách này. Chương 16 sẽ đề cập đến thiết kế phần cứng, và giả thiết rằng độc giả đã có hiểu biết cơ bản về mạch số và tương tự. Nếu bạn đã qua một khoá học cơ bản về điện tử, nâng cao hơn về mạch số thì bạn sẽ hiểu các vấn đề trình bày trong phần này. Tôi đề nghị bạn nên đọc một cuốn sách điện tử nói về các ứng dụng của bộ khuyếch đại thuật toán và một cuốn sách khác cung cấp cho bạn những hiểu biết cơ bản về mạch số, trước khi cố gắng để đọc chương 16. 1.3 Biểu diễn ảnh ảnh có thể biểu diễn dưới dạng tín hiệu tương tự hoặc tín hiệu số. Trong biểu diễn số của các ảnh đa mức xám, một ảnh được biểu diễn dưới dạng một ma trận hai chiều. Mỗi phần tử của ma trận biểu diễn cho mức xám hay cường độ của ảnh tại vị trí đó. Mỗi phần tử trong ma trận được gọi là một phần tử ảnh, thông thường kí hiệu là PEL (Picture Element) hoặc là điểm ảnh (Pixel). - Với ảnh đen trắng: Nếu dùng 8 bit (1 byte) để biểu diễn mức xám, thì số các mức xám có thể biểu diễn được là 28 hay 256. Mỗi mức xám được biểu diễn dưới dạng là một số nguyên nằm trong khoảng từ 0 đến 255, với mức 0 biểu diễn cho mức cường độ đen nhất và 255 biểu diễn cho mức cường độ sáng nhất. - Với ảnh màu: Cách biểu diễn cũng tương tự như với ảnh đen trắng, chỉ khác là các số tại mỗi phần tử của ma trận biểu diễn cho ba màu riêng rẽ gồm: đỏ (red), lục (green) và lam (blue). Để biểu diễn cho một điểm ảnh màu cần 24 bit, 24 bit này được chia thành ba khoảng 8 bit. Mỗi khoảng này biểu diễn cho cường độ sáng của một trong các màu chính. Để hiểu việc số hoá ảnh hãy xem hình 1.1. Pixel or PEL Độ sáng trung bình trong mỗi hình chữ nhật = giá trị một điểm ảnh. Hình 1.1 Biểu diễn của một mức xám của ảnh số.
  3. Trong hình này một lưới chia ô vuông tưởng tượng được đặt lên ảnh. Độ lớn mỗi ô vuông của lưới xác định kích thước của một điểm ảnh. Mức xám của một điểm được tính bằng cường độ sáng trung bình tại mỗi ô vuông này. Mắt lưới càng nhỏ thì cho chất lượng ảnh càng cao. Trong kỹ thuật truyền hình tiên tiến, mục đích là cung cấp cho người xem, hình ảnh chất lượng cao, với độ phân giải gấp hai lần so với các chuẩn hiện nay. Trong kỹ thuật tương tự, một bức ảnh thường được biểu diễn dưới dạng các dòng nằm ngang kế tiếp nhau (Hình 1.2). Mỗi dòng là một tín hiệu tương tự mang theo các thông tin về cường độ sáng dọc theo một đường nằm ngang trong ảnh gốc. ảnh trên một chiếc TV được hiện lên qua các dòng quét này. Mặc dù thuật ngữ "tương tự" được dùng để mô tả cho các ảnh quét liên tiếp như thế này nhưng thực tế ảnh chỉ tương tự dọc theo hướng nằm ngang. Nó là rời rạc khi xét theo hướng dọc và chính vì vậy mà tín hiệu ảnh là tín hiệu lai nửa tương tự, nửa số. Vấn đề về tín hiệu lai đ ược đề cập đến trong các chương 14, 15 và 16. Một máy truyền hình được thiết kế để thu tín hiệu truyền hình mã hoá theo tiêu chuẩn NTSC của Mỹ có khả năng hiển thị xấp xỉ 525 dòng. Công nghệ truyền hình tiến bộ nỗ lực để cung cấp cho chúng ta số lượng các dòng gấp hai lần, cho độ phân giải tốt hơn là TV màn ảnh rộng. Một TV có màn ảnh lớn hơn 28 inch được coi là một TV có màn ảnh rộng. Một điều cần chú ý là một chiếc TV thì có khả năng hiện một số dòng như nhau cho dù nó là 5 inch hay là 50 inch. Màn ảnh lớn nhất của loại TV dòng quét xen kẽ này mà mắt người có khả năng phân biệt được từ khoảng cách thông thường vào khoảng 3 mét. Các tiêu chuẩn truyền hình và khả năng phân biệt của mắt người được đề cập đến trong chương 14. x'(t') =x(t.nT) n=0 n=1 x(t,0) x(t,T) xung xung đồng đồng bộ. bộ. t' T time t=0 t=0 1st line scan 1st line scan t=0
  4. Hình 1.2 Biểu diễn của một ảnh tương tự. 1.4 Một hệ thống xử lý ảnh cơ bản Một hệ thống xử lý ảnh cơ bản có thể bao gồm: máy tính cá nhân kèm theo vỉ mạch chuyển đổi đồ hoạ VGA hoặc SVGA, đĩa chứa các ảnh mà bạn dùng để kiểm tra các thuật toán và một màn hình có hỗ trợ VGA hoặc SVGA. Nếu ngân sách bạn cho phép, tôi đề nghị bạn nên có một hệ thống như trong hình 1.3. Nó bao gồm một máy tính PC có kèm theo thiết bị xử lý ảnh. Nối với cổng vào của thiết bị thu nhận ảnh là một video camera, và cổng ra nối với một màn hình. Thực tế, phần lớn các nghiên cứu của chúng ta được đưa ra trên ảnh mức xám (ảnh đen trắng). Bởi vậy, hệ thống của bạn sẽ b ao gồm một thiết bị xử lý ảnh đen trắng và một màn hình đen trắng. ảnh mức xám được áp dụng trong nhiều lĩnh vực như sinh vật học hoặc trong công nghiệp. Thực tế chỉ ra rằng bất kỳ ứng dụng nào trên ảnh mức xám cũng ứng dụng được trên ảnh màu. Vì lý do này tôi đề nghị hệ thống của bạn ban đầu chỉ bao gồm các thiết bị thu nhận và hiển thị ảnh đen trắng. Trong chương 11 chúng ta sẽ đề cập đến lĩnh vực xử lý ảnh màu. Với ảnh màu, tôi đề nghị bạn sử dụng một hệ thống mới giống như hình 1.3, ngoại trừ bạn cần một camera TV màu và một monitor đa tần số (ví dụ như NEC multiSync, Sony multiscan, hoặc Mitsubishi Diamond Scan ) để hiển thị ảnh màu. Nếu khả năng tài chính của bạn không cho phép, bạn có thể vẫn dùng PC của bạn kèm theo vỉ mạch VGA và monitor VGA, và dùng ảnh được cho trong cuốn sách này. Camera t r u yÒ n h × n h §Õn thiÕt bÞ ví i èng kÝnh nhËn ¶nh c ã kh ¶ n ¨ ng phãng to, thu nhá. Mµn h×nh ®å ho¹ vµ v¨n b¶n §Õn m µn h×nh video Mµn ThiÕt bÞ h×nh nhËn ¶nh video M¸y tÝnh c¸ nh©n Hình 1.3 Một hệ thống xử lý ảnh. Bây giờ chúng ta đề cập đến tất cả các khối trong hệ thống.
  5. Thiết bị nhận ảnh. Chức năng của thiết bị này là số hóa một băng tần số cơ bản của tín hiệu truyền hình cung cấp từ một camera, hoặc từ một đầu máy VCR. ảnh số sau đó được lưu trữ trong bộ đệm chính, bộ đệm này có khả năng được địa chỉ hoá (nhờ một PC) đến từng điểm bằng phần mềm. Thông th ường thiết bị này có rất nhiều chương trình con điều khiển mà có thể lập trình được thông qua ngôn ngữ C. Khi mua một thiết bị bạn cần chú ý các điểm sau: 1. Thiết bị có khả năng số hoá ảnh dùng ít nhất là 8 bit (256 mức xám) và ảnh thu được phải có kích thước ít nhất là 512  512 điểm hoặc hơn nữa. 2. Thiết bị phải chứa một bộ đệm ảnh để lưu trữ một hoặc nhiều ảnh có độ phân giải 512  512 điểm ảnh. 3. Thiết bị phải được kèm theo một bộ đầy đủ thư viện các chương trình con có khả năng giao diện với các chương trình C viết bằng Turbo C hoặc Microsoft C. 4. Sổ tay hướng dẫn sử dụng cũng phải được kèm theo, bao gồm cả dạng chứa trên đĩa và khi in. 5. Một số thiết bị cho phép tuỳ chọn sử dụng cả hai chế độ văn bản và đồ hoạ trên cùng một màn hình hoặc hai màn hình riêng biệt. Mặc dù chi tiết này là không cần thiết, nhưng nó sẽ rất có giá trị trong trường hợp bạn bị giới hạn về không gian lắp đặt hoặc khả năng tài chính. Camera. Tổng quát có hai kiểu camera: kiểu camera dùng đèn chân không và kiểu camera chỉ dùng bán dẫn. Đặc biệt là trong lĩnh vực này, camera bán dẫn thường hay được dùng hơn camera đèn chân không. Camera bán dẫn còn được gọi là CCD camera do nó dùng các thanh ghi dịch đặc biệt gọi là thiết bị ghép (charge- coupled devices- CCDs). Các CCD này chuy ển các tín hiệu ánh sáng từ bộ cảm nhận ánh sáng bố trí ở phía trước camera thành các tín hiệu điện mà sau đó được mã hoá thành tín hiệu TV. Loại camera chất lượng cao thì cho tín hiệu ít nhiễu và có độ nhậy cao với ánh sáng. Khi bạn chọn mua camera thì bạn cần chú ý đến các thấu kính của máy. Tôi đề nghị bạn nên chọn một thấu kính từ 18 đến 108 mm với f-stop từ 2.5 đến 18. Một vài người bán hàng sẽ cung cấp trọn gói camera và thấu kính. Sau đây là danh sách các nhà sản xuất: 1. Pulnix America Inc, 770 Lucerne Drive, Sunnyvale, CA 84086. Tel. 408 - 773-1550; fax 408-737-2966. 2. Sony Corp. of America, Component Products Co., 10833 Valley View St., Cypress, CA 90630. Fax 714-737-4285. 3. Parasonic, industrial camera division: 201-329-6674. 4. JVC Professional: 1-800-JVC-5825. Monitor video. Một số các nhà sản xuất (như Sony) sản xuất các loại monitor đen trắng chất lượng cao. Bạn nên sử dụng loại monitor chất lượng cao, vì sử dụng các monitor chất lượng thấp có thể làm bạn nhầm lẫn kết quả. Một monitor 9 inch
  6. là đủ cho yêu cầu làm việc của bạn. Để hiển thị ảnh màu, bạn nên dùng một monitor đa hệ. Máy tính. Phần mềm cho ở trong sách này được phát triển để làm việc trên tất cả các máy sử dụng hệ điều hành DOS. Mặc dù máy XT có thể chạy được các chương trình này, nhưng để tăng cường tốc độ bạn cần phải có một máy tính 486 hoặc hơn. Ngày nay thì một máy tính 486-66 MHz còn rẻ hơn giá các máy XT cách đây vài năm. Để chắc chắn thì các máy này phải có sẵn các khe cắm cho phần xử lý ảnh. Các chương trình thiết kế và lọc ảnh có thể chạy trên bất kỳ hệ thống nào. Các chương trình con hiển thị ảnh dùng vỉ mạch VGA và có sẵn trên đĩa đi kèm theo cuốn sách này. Các chương trình con hiển thị ảnh cũng hỗ trợ cho hầu hết các vỉ mạch SVGA. Phần mềm. Tôi dùng Borland Turbo C (version 2.0) trong su ốt cuốn sách này. Đây là một chương trình biên dịch hoàn thiện. Bạn cũng cần phải dùng đến Turbo assembler trong chương 11. Bạn cũng có thể dùng phiên bản mới nhất của Borland C. 1.5 Cách trình bày của cuốn sách Cuốn sách có 17 chương, gồm cả chương giới thiệu. Mỗi chương đề cập tới một chủ đề. Chương 2 giới thiệu với bạn khái niệm hệ thống 2 chiều và việc áp dụng vào xử lý ảnh. Chương 3 nói về việc thiết kế mạch lọc đáp ứng xung hai chiều và giải thuật lọc ảnh. Chương 4 đề cập đến những cách khác nhau trong việc nâng cao chất l ượng ảnh, như mạch lọc thông cao, lọc Hommorphic và biến đổi biểu đồ. Chương 5 nói về khía cạnh làm nổi và tách ảnh. Các thuật toán tách biên các ảnh cần khôi phục sẽ được đề cập đến ở chương 10. Chương 6 đề cập chi tiết đến giải thuật biến đổi Fourier nhanh. Sự l ược bỏ bớt FFT cũng được đề cập đến. Trong các thuật toán lược bỏ FFT, số mẫu đầu vào có thể ít hoặc nhiều hơn số mẫu đầu ra. Chương 7 đề cập đến những tính chất của ảnh số. Chúng tôi sẽ minh hoạ những phần quan trọng của ảnh. Tiếp đến là định lý lấy mẫu. Chương 8 đề cập đến việc thiết kế FIRs sử dụng hàm cửa sổ. Chương 9 đề cập đến mạch lọc đáp ứng xung 2 chiều. Một ph ương pháp thiết kế đơn giản được giới thiệu nhằm cung cấp IIRs pha tuyến tính hai chiều ổn định. Chương 10 nói đến các kỹ thuật khôi phục ảnh. Chương 11 đề cập đến màu và xử lý ảnh màu. Giới thiệu các màu cơ sở và sự hoà trộn các màu dựa trên các màu chính. Chương 12 đề cập đến mạng thần kinh cho việc phân loại màu. Chương 13 nói về chủ đề nén dữ liệu ảnh.
  7. Chương 14 đề cập chi tiết về tín hiệu vô tuyến và chuẩn vô tuyến. Giới thiệu về lĩnh vực mạch lọc lai hai chiều và giải thích ứng dụng của mạch lọc lai hai chiều trong tín hiệu vô tuyến. Chương 15 nói đến chủ đề mạch lọc lai hai chiều. Giải thích về ph ương pháp thiết kế. Chương 16 thiết kế phần cứng cho việc xử lý tín hiệu vô tuyến trong thời gian thực. Nghiên cứu sự thực hiện pipelining, systolic và semisystolic. Chương 17 cung cấp chỉ dẫn về mạch lọc ba chiều, để có thể dùng làm ảnh “chuyển động”. Từ chương 2 đến chương 15 có chứa các chương trình nguồn C, thực hiện các thuật toán. Các ứng dụng liên quan đi kèm ở tất cả các chương.
  8. chương 2 Các hệ thống hai chiều 2.1 Chỉ dẫn Các tín hiệu vốn là hai chiều thì phải được xử lý bằng kỹ thuật xử lý tín hiệu hai chiều. Các điểm ảnh được coi là một dạng tín hiệu hai chiều, vì vậy việc xem xét các kiến thức cơ bản của hệ thống hai chiều (2-D) là cần thiết. Trong chương này chúng ta sẽ xem xét biểu diễn tần số và biểu diễn không gian của tín hiệu hai chiều, và cung cấp kiến thức cần thiết cho việc phát triển các kỹ thuật xử lý ảnh hai chiều như là nổi ảnh, trơn ảnh và khôi phục ảnh. 2.2 Các tín hiệu hai chiều Một tín hiệu lấy mẫu hai chiều được biểu diễn dưới dạng một mảng hai chiều x(n1TV,n2TH) (V: Vertical - chiều dọc, H: Horizontal - chiều ngang). ở đây n1, n2 là số nguyên và TV, TH là khoảng cách lấy mẫu theo chiều ngang và chiều dọc. x(n1TV, n1TH) thường được ký hiệu tắt là x(n1,n2) và biểu diễn cho cường độ sáng hay là biên độ tín hiệu tại điểm (n1,n2) trong miền không gian. Hình 2.1 giới thiệu một phép biểu diễn trong miền không gian, ở đây cường độ sáng của tín hiệu được ký hiệu bởi chiều cao tại điểm x(n1TV, n2TH). Chú ý rằng TV là khoảng cách lấy mẫu giữa hai cột dọc kế tiếp nhau, TH là khoảng cách lấy mẫu giữa hai dòng ngang kế tiếp nhau của tín hiệu 2-D. Mặc dù một tín hiệu lấy mẫu 2-D có thể xử lý như các dãy của tín hiệu lấy mẫu một chiều bằng cách xử lý tất cả các hàng (cột) một cách tuần tự song cách tiếp cận này không cho một kết quả mong đợi như khi xử lý hai chiều. Ví dụ, nếu chúng ta dùng một bộ lọc 7
  9. làm nổi đường biên ảnh 1-D, cụ thể đó là một bộ lọc thông cao, trên một ảnh bằng cách xử lý từng hàng một, thì đường biên sẽ phần lớn được làm nổi bật dọc theo các đường thẳng đứng. Các đường biên ảnh nằm theo các đường nằm ngang sẽ không được làm nổi một chút nào và các đường biên nằm theo các hướng khác ngoài hai hướng này sẽ nhận được hiệu ứng làm nổi ảnh ít hơn các đường biên dọc. Để đạt được hiệu quả như nhau theo mọi hướng, tín hiệu được lấy mẫu hai chiều phải được xử lý qua một hệ thống 2-D (Hình 2.2). Trong hệ thống tuyến tính bất biến - TTBB (Linear Shift Invariant - LSI), đáp ứng đầu ra có thể tính theo công thức : (2.1) y(n1 , n2 )  x(n1 , n2 ) * h(n 1 , n2 ) Dấu * được hiểu là tích chập và h(n1,n2) là đáp ứng xung của hệ thống 2-D. Biểu thức (2.1) có thể viết là:     x(k , k y(n1 , n 2 )  )h(n1  k1 , n 2  k 2 ) 1 2 k1   k 2   (2.2) n2TH x(n1,Tv,n2,TH) TH n1Tv 2T Hình 2.1 Biểu diễn trong miền khoảng cách. 2.3 Một số dãy 2-D thông dụng Chúng bao gồm: 1. Dãy xung đơn vị : 8
  10. 1 víi n1  n 2  0 (2.3)  ( n1 , n2 )  u 0 (n1 , n 2 )   0 v íi c¸c tr­êng hîp cßn l¹i 2. Dãy nhảy bậc đơn vị : 1 víi n1 , n2  0 (2.4) u 1 (n1 , n 2 )   0 v íi c¸c tr­êng hîp cßn l¹i 3. Dãy hàm mũ: a1n1 a 2 2 víi n1 , n2  0 n (2.5) x(n1 , n 2 )   v íi c¸c tr­êng hîp cßn l¹i 0 4. Dãy tín hiệu hình sin (phức): -
  11. hàm khuyếch đại phức H(1,2). Hàm khuếch đại này gọi là đáp ứng tần số và được cho bởi k1   k 2  h( k1 , k 2 )e  j (1k1  2 k2 ) (2.9)  H (1 ,  2 )  k1   k 2   Biểu thức e  j ( k  k ) được gọi là nhân. Nếu khoảng cách cách lấy 11 22 mẫu TV,TH đã được biết thì biểu thức (2.9) có thể viết lại thành     h(k1TV , k 2TH )e  j 2 (uk T ,vk T 2 H) (2.10) H (u , v)  1V k1   k 2  1, 2 có thứ nguyên là radian/đơn vị, còn u và v có thứ nguyên là vòng/đơn vị. Đơn vị ở đây có thể là đơn vị khoảng cách (như cm, inch) hoặc là đơn vị thời gian (như giây). Việc chọn đơn vị (thời gian hoặc khoảng cách) phụ thuộc nguồn gốc của ảnh, đó là một phép chiếu từ không gian ba chiều lên mặt phẳng hai chiều. Nếu ta xử lý với một ảnh lấy ra trực tiếp từ ma trận CCD camera thì TV và TH (và do đó là đơn vị) phải tính theo chiều không gian (xem hình 2.3). Mặt khác, với một ảnh truyền hình thì TV và TH phải theo chiều thời gian (xem hình 2.4). Từ (2.9) ta có thể viết H (1  2 ,  2 )  H (1 ,  2 ) H (1 ,  2  2 )  H (1 ,  2 ) (2.11) H (1  2 ,  2  2 )  H (1 ,  2 ) Và từ (2.10) ta có thể viết  1 H u  , v   H (u , v )  TV      1 (2.12) H  u, v    H (u , v)   TH     1 1 H u    H (u , v ) ,v    TV TH   TV 10 TH
nguon tai.lieu . vn