470 gấp đôi độ phân giải ảnh. Hình 16.55 Tầng ra của biểu đồ hình 16.54. Bài tập 16.11 Dùng các giả thiết biến đổi chúng ta có thể tăng độ phân giải một ảnh lên bất kỳ tỷ lệ nào, ví dụ như 1.75 hoặc 2.5, thay thế cho nhân đôi hoặc nhân 4, vvv. Lập chương trình phóng đại ảnh mà tỷ lệ có thể nhập vào bởi người dùng. Một ứng dụng quan trọng cho các thuật toán nhân đôi độ phân giải, như miêu tả trong cuốn sách này, là phóng đại tuỳ chọn. Trong phóng đại tuỳ chọn người dùng dùng một thiết bị chỉ, như chuột, lựa chọn miền mà cô ấy hoặc anh ấy muốn phóng đại. Lập chương trình và kỹ thuật phần cứng cho một ứng dụng . THỰC HIỆN HỆ THỐNG HAI CHIỀU CHO XỬ LÝ THỜI GIAN THỰC 411 16.1 Chỉ dẫn 411 16.2 Các kiến trúc nối tiếp cho thực hiện của bộ lọc số 2-D 411 16.2.1 Biểu diễn dưới phần bù hai 413 16.2.2 Các khối xử lý 414 16.2.3 Xử lý đồng thời 416 16.3 Xử lý pipeline 421 16.4 Thực hiện tâm thu các bộ lọc FIR 422 16.5 Thực hiện tâm thu của các bộ lọc 2-D IIR 430 16.6 Lấy mẫu và lưu giữ chức năng của các bộ lọc FIR 431 16.7 Thực hiện các bộ lọc tương tự (lai) 2-D 434 16.8 Thiết kế phần cứng 436 16.8.1 Dây trễ 1-H tương tự 436 16.8.2 Thiết kế của các phần xử lý tương tự 442 16.9 Lọc trung vị thời gian thực 447 16.10 Nhân đôi số dòng quét trong máy thu TV trong EDTV thời gian thực 452 16.11 Truyền hình tương lai 461 16.12 Biến đổi ảnh thời gian thực 467 456 CHƯƠNG 17 CÁC BỘ LỌC BA CHIỀU 17.1 Chỉ dẫn Chúng ta nhận thấy sự cần thiết của các bộ lọc hai chiều khi chúng ta xem xét ảnh như là các tín hiệu hai chiều. Chúng ta kết luận rằng các bộ lọc 2-D thì tốt cho xử lý ảnh hơn các bộ lọc 1-D, mà thông thường xử lý từng dòng trên ảnh một cách riêng biệt. Nếu chúng ta ngoại suy khi xem xét các ảnh “động”, chúng ta cần phải sử dụng các bộ lọc ba chiều. Các bộ lọc ba chiều được dùng để xử lý trên một dãy các ảnh. Các bộ lọc này có thể cung cấp, theo một hướng nào đó, một chất lượng cao hơn các bộ lọc hai chiều khi xử lý một dãy các ảnh. Một ứng dụng đã được nghiên cứu trong tài liệu là loại bỏ các chi tiết chuyển động dọc theo một hướng đã được cho trước và từ một tốc độ cho trước từ một dãy các ảnh. Một trong các ứng dụng khác là tăng tốc độ khung trong các ảnh truyền hình. Trong chương trước chúng ta tái tạo đơn giản các ảnh bằng cách cung cấp một khung với tốc độ 1/60 giây từ 30 khung hình/giây. Điều này cần thiết để loại bỏ hiện tượng rung hình. Phải nhận thức được sự lưu ảnh của mắt người không có ý nghĩa, nếu phép nội suy ảnh bậc cao hơn được sử dụng. Các bộ lọc 3-D được địmh nghĩa bởi hàm tuyến tính bất biến theo thời gian trong z 1 , z 2 và z 3 . Chúng ta có thể coi z 1 như một trễ điểm ảnh, z 2 như một trễ dòng, z 3 như một trễ khung. Hình 17.1 trình bày một dãy các ảnh được biểu diễn bởi f(x,y,t). Biến đổi z 3-D của f(x,y,t) được sinh ra từ F(z 1 ,z 2 ,z 3 ) như mô tả trong hình. Hình 17.1 Mô tả ảnh "động". 457 17.2 Các bộ lọc FIR ba chiều Hàm truyền đạt cho bộ lọc 3-D FIR được cho bởi N Nn N Nn N Nn nnn zzznnnhzzzH 1 2 3 3 21 321321321 ),,(),,( (17.1) Đáp ứng tần số của một bộ lọc thế này được rút ra bằng cách thay z n i 1 bằng e j n i i , ở đây i = 1,2,3. Đáp ứng xung của các bộ lọc này có thể rút ra từ đáp ứng tần số cùng một cách như trong bộ lọc 2-D FIR. Chúng ta có thể viết: 321321 3 321 332211 ),,( 8 1 ),,( dddeeeHnnnh njnjnj (17.2) Hình 17.2 Vị trí của hệ số bằng với bộ lọc pha zero. Để thiết kế một bộ lọc FIR 3-D mà xấp xỉ đặc tính tần số đã cho chúng ta có thể dùng biểu thức (17.2). Một bộ lọc 3-D pha zero sẽ phải đối xứng hình cầu trong các hệ số của nó, cụ thể, đối xứng xung quanh gốc (n 1 ,n 2 ,n 3 ) (xem hình 17.2). Một đặc tính tần số bộ lọc có thể miêu tả cùng một cách như trong trường hợp lọc 2-D. Cho ví dụ, một bộ lọc thông thấp đối xứng có miền chuyển tiếp dốc có thể miêu tả bằng l¹i cßn hîptrêng c¸c víi R víi c 0 1 ),,( 321 H ở đây R 1 2 2 2 3 2 Tương tự, có thể miêu tả cho bộ lọc thông cao và cứ tiếp tục như vậy. Để tìm các vật thể chuyển động cùng một tốc độ, bộ lọc kiểu hình nón thường được dùng như trong tham khảo 1 và 2. Để tăng độ phân giải trên một ảnh như 458 là tăng số khung hình chúng ta cần LPF 3-D tuần hoàn. Dù có như vậy đi chăng nữa, như chúng ta đã đề cập trước đây, một bộ lọc 2-D theo sau các bộ nhân ảnh thì tạo ra các kết quả chấp nhận được. Các bộ lọc ba chiều đã cung cấp sự cần thiết của chúng trong các ứng dụng này. Cần phải chú ý rằng một ảnh chuyển động, 24 film độc lập (hoặc khung hình) được đưa ra màn ảnh trong mỗi giây. Nếu tại tốc độ này, hiện tượng rung hình không được quan tâm, các chớp trên máy chiếu chia cắt mỗi ảnh ra làm hai phần. Đây là lý do phải tăng tốc độ chiếu lên 48 khung hình trong một giây. Điều này được hoàn thiện bằng cách có các chớp chạy qua film khi nó được chiếu lên màn ảnh. Thật sự là chúng ta sẽ được trong thấy mỗi ảnh hai lần. Bằng cách này, hiện tượng rung hình bị loại bỏ. Phương pháp này tương đương với việc chép lại các khung hình trong truyền hình để tạo ra 60 khung hình trong một giây khi quét liên tục như được mô tả trong phần trước đây. Bài tập 17.1 1. Xác định biểu thức (17.2), và phát triển một chương trình C cho thiết kế một bộ lọc 3-D của bất kỳ bậc nào dùng tích phân số. 2. Phát triển một chương trình thiết kế bộ lọc 3-D pha zero. 3. Tạo ra một phương pháp lọc một dãy các ảnh dùng một bộ lọc FIR 3-D trên PC. 4. Phát triển một chúng ta C cho phần 1, và kiểm tra phương pháp của bạn trên một dãy các ảnh bạn lấy ra từ hệ thống của bạn. Bài tập này sẽ yêu cầu một VCR với một băng đã được ghi, một cạc số hoá mà nhận ảnh từ VCR, và đủ bộ nhớ để lưu trữ các ảnh cần thiết trước đây. Cho 200 khung hình có kích thước 256 256 điểm bạn cần 13 MB đĩa trống để lưu trữ ảnh, và 13 MB khác để chứa các ảnh đã được lọc. 5. Dùng hàm cửa sổ cho trong chương 8 để thiết kế các bộ lọc 3-D. 17.3 Các bộ lọc IIR 3_D Một hàm truyền đạt bộ lọc IIR 3-D được cho bởi N n N n N n nnn N n N n N n n nn zzznnnb zzznnna zzzH 0 0 0 321321 0 0 0 321321 321 1 2 3 321 1 2 3 321 ),,( ),,( ),,( (17.3) ở đây b 000 =1. Các bộ lọc ba chiều IIR gặp các vấn đề như các bộ lọc IIR 2-D. Độ ổn định không được đảm bảo, các bộ lọc pha tuyến tính không thể dễ dàng đạt được. Dù có như vậy đi chăng nữa thì vẫn có thể phát triển lại một phương pháp cho trong chương 9 để thiết kế các bộ lọc FIR 3-D pha gần tuyến tính. Bài tập 17.2 459 1. Phát triển lại phương pháp dùng trong chương 9 cho thiết kế các bộ lọc IIR 2-D pha gần tuyến tính để thiết kế bộ lọc 3-D. Lập chương trình C cho giả thiết thiết kế. 2. Lập chương trình C cho lọc một dãy ảnh dùng các bộ lọc 3-D. 17.4 Thực hiện phần cứng Các phương pháp dùng trong việc phát triển các thực hiện phần cứng cho các bộ lọc 2-D có thể lặp lại cho các bộ lọc 3-D. Chỉ có một sự khác biệt là chúng ta sẽ phải thiết kế các dây trễ khung. Trong phần này chúng tôi sẽ cung cấp cho bạn các thực hiện ví dụ cho các bộ lọc 3-D FIR và IIR. Các chi tiết cho xây dựng một trễ khung từ các RAM thông thường cũng sẽ được cung cấp. Xem xét một bộ lọc FIR 2 2 2: 2 0 2 0 2 0 3 2 1321 ),,(),,( i j k k j i zzzkjihzzzH (17.4) Chú ý rằng đáp ứng xung đã được dịch chuyển từ 0 đến -1 như đã làm trong trường hợp 2-D. Biểu thức (17.4) có thể viết lại theo: 2 3213 1 3212211321 ),(),(),(),,( zzzHzzzHzzHzzzH (17.5) Ở đây 2 0 2 0 2 121 )0,,(),( i j j i zzjihzzH 2 0 2 0 2 1212 )1,,(),( i j j i zzjihzzH 2 0 2 0 2 1213 )2,,(),( i j j i zzjihzzH Biểu thức (17.5) có thể viết lại thành: ),()],(),([),,( 211 1 3213 1 3213321 zzHzzzHzzzHzzzH Nếu X(z 1 ,z 2 ,z 3 ) và Y(z 1 ,z 2 ,z 3 ) là các đầu vào và đầu ra của các bộ lọc 3-D chúng ta có thể viết: ),,(),( ),,()],(),([),,( 32121 1 3321212 1 3213321 zzzXzzH zzzzXzzHzzzHzzzY (17.6 ) 460 Biểu thức (17.6) có thể thực hiện như giới thiệu trong hình 17.3. Các hàm H 1 (z 1 ,z 2 ), H 2 (z 1 ,z 2 ) và H 3 (z 1 ,z 2 ) có thể thực hiện như các bộ lọc FIR 2-D, dùng, cho ví dụ, các cấu trúc hồi tâm đường ống thực sự như miêu tả trong chương 16. Một trễ khung có thể thực hiện dùng bộ nhớ R/W như trong hình 17.4 cho một khung có kích thước 512 512 điểm. Các phần tử làm việc cơ bản là một thanh ghi dịch FIFO và hoạt động theo: Xung nhịp, điều khiển bộ nhớ R/W và bộ đếm, đặt bộ nhớ R/W vào chế độ đọc trong chu kỳ khi tín hiệu xung nhịp ở mức cao, và trong mode ghi trong chu kỳ khi xung nhịp ở trạng thái thấp. Trước khi mạch điện được bật lên, bộ đếm 18 bit được đặt thành 2 18 – 1 = 262,143. Tại xung nhịp đầu tiên và trong vị trí đọc, đầu ra đọc là tín hiệu của vùng zero của bộ nhớ R/W, mà chứa một giá trị zero tại vị trí bắt đầu. Trong vị trí ghi của chu kỳ, dữ liệu được viết vào cùng một vị trí. Trong chu kỳ thứ hai, bộ đếm được tăng lên 1, đọc của vùng thứ hai đầu tiên chiếm vị trí trong bộ nhớ trong chu kỳ khi xung nhịp lên cao, mà chốn lại zero, và viết được đưa ra trong nửa thứ hai của chu kỳ, tại cùng một vùng trong bộ nhớ R/W. Việc này cứ tiếp tục cho đến khi bộ đếm là 262,143. Chu kỳ tiếp theo xoá bộ nhớ về không, giá trị mà được viết vào vị trí zero trong chu kỳ đầu tiên được đọc ra, và một giá trị mới được viết vào, và cứ tiếp tục như vậy. Rõ ràng sự sắp xếp trong hình 17.4 làm việc như một thanh ghi dịch FIFO. Hình 17.3 Thực hiện cho lọc FIR 3-D. Bây giờ xem xét một bộ lọc 2 2 2 IIR, mối quan hệ giữa các đầu vào và đầu ra có thể trình bày dưới dạng: 2 0 321321 2 0 321 2 0 321 ))),,(),,(((),,( j kji ijk k ijk i zzzzzzXbzzzXazzzY (17.7) . CHO XỬ LÝ THỜI GIAN THỰC 41 1 16.1 Chỉ dẫn 41 1 16.2 Các kiến trúc nối tiếp cho thực hiện của bộ lọc số 2-D 41 1 16.2.1 Biểu diễn dưới phần bù hai 41 3 16.2.2 Các khối xử lý 41 4 16.2.3 Xử lý. 43 4 16.8 Thiết kế phần cứng 43 6 16.8.1 D y trễ 1-H tương tự 43 6 16.8.2 Thiết kế của các phần xử lý tương tự 44 2 16.9 Lọc trung vị thời gian thực 44 7 16.10 Nhân đôi số dòng quét trong m y. đồng thời 41 6 16.3 Xử lý pipeline 42 1 16 .4 Thực hiện tâm thu các bộ lọc FIR 42 2 16.5 Thực hiện tâm thu của các bộ lọc 2-D IIR 43 0 16.6 L y mẫu và lưu giữ chức năng của các bộ lọc FIR 43 1 16.7