Bộ lọc IIR nào gần đúng với bộ lọc Gaussian?


15

Vì vậy, gần đây tôi nhận ra rằng các bộ lọc Bessel, mặc dù được liệt kê cùng với các loại phổ biến khác, thực sự là một trò kỳ quặc thuộc về một "lớp" khác và tôi đang cố gắng tìm hiểu thêm về nó.

Đáp ứng cường độ hình chữ nhật biểu thị đáp ứng miền tần số lý tưởng, cho dải chuyển tiếp bằng 0 và dải dừng có độ suy giảm vô hạn. Mặt khác, đáp ứng cường độ Gaussian đại diện cho đáp ứng miền thời gian lý tưởng, trong đó không xảy ra tình trạng vượt mức trong đáp ứng xung và đáp ứng bước. Nhiều câu trả lời đạt được trong thực tế là gần đúng với những nguồn lý tưởng này

Vì vậy, bộ lọc brickwall là tích chập với hàm chân và có các thuộc tính miền tần số sau:

  • Băng thông phẳng
  • Không dây
  • Tỷ lệ roll-off vô hạn / không có dải chuyển tiếp

Đó là phi nhân quả và không thể thực hiện được vì đuôi vô hạn ở cả hai hướng. Nó được xấp xỉ bởi các bộ lọc IIR này, với sự cải thiện gần đúng khi tăng thứ tự:

  • Butterworth (băng chuyền phẳng tối đa)
  • Ch Quashev (tỷ lệ roll-off tối đa với gợn sóng băng thông hoặc băng thông)
  • Elliptic (tốc độ roll-off tối đa với gợn sóng băng thông băng thông)
  • Legendre (tỷ lệ roll-off tối đa với băng thông đơn điệu)

4 loại bộ lọc tiếp cận đáp ứng tường gạch khi tăng đơn hàng


Bộ lọc Gaussian là tích chập với hàm Gaussian và có các thuộc tính miền thời gian này:

  • Không vượt quá
  • Thời gian tăng và giảm tối thiểu
  • Độ trễ nhóm tối thiểu

Không thể thực hiện được vì những lý do tương tự như hàm chân và có thể được xấp xỉ bởi các bộ lọc IIR này, gần hơn khi tăng đơn hàng:

  • Tàu (độ trễ nhóm phẳng tối đa) theo 12

Đây là các bộ lọc Bessel theo thứ tự tăng dần cùng với đường đứt nét Gaussian mà tôi đã chọn chỉ vì nó có vẻ phù hợp với xu hướng ( ):e-12(πω)2

Các bộ lọc tàu được cho là tiếp cận phản ứng Gaussian khi tăng thứ tự, với dự đoán cho Gaussian

Vì vậy, câu hỏi của tôi là:

Có phải mọi thứ đều đúng cho đến nay? Nếu vậy, có bộ lọc IIR nào gần đúng với Gaussian không? Họ được tối ưu hóa để làm gì? Có lẽ một trong đó giảm thiểu quá mức?

Nếu bạn tìm kiếm "IIR Gaussian", bạn có thể tìm thấy một vài thứ (Deriche? Van Vliet?), Nhưng tôi không biết liệu chúng có thực sự giống như một Bessel hay nếu chúng tối ưu hóa cho một số tài sản khác, v.v.


thực sự, khi tôi nói "IIR" tôi nghĩ tôi thực sự có nghĩa là "bộ lọc tương tự có thể thực hiện được"?
endolith

Câu trả lời:


5

Các bộ lọc Derichevan Vliet là heuristic. Trong cả hai trường hợp, họ chọn vị trí của các cực và số không để giảm thiểu chênh lệch RMS hoặc chênh lệch tối đa của đáp ứng xung của bộ lọc từ Gaussian.

Cả hai bộ lọc là cặp nhân quả-chống nhân quả. Vì vậy, tôi nghĩ rằng họ không có lỗi pha hoặc trễ nhóm, nhưng bạn cần có khả năng chạy ngược chúng trên dữ liệu cũng như chuyển tiếp. Điều này làm cho chúng trở nên phổ biến trong xử lý hình ảnh, nhưng có lẽ hạn chế khả năng ứng dụng của chúng ở nơi khác.

Rằng họ là heuristic được chứng minh bằng sự giàu có của các bài báo điều chỉnh chúng. Ví dụ: một tìm kiếm google (trong khi tôi đang tìm liên kết đến bài báo Deriche) đã bật ra cái này cố gắng giải quyết vấn đề mà bộ lọc Deriche phái sinh của giche không có phản hồi chính xác 0 DC. Ngoài ra còn có một số vấn đề thú vị về việc khởi tạo chính xác các điều kiện biên .

Tôi đã tìm thấy tổng quan sau đây một nguồn tài nguyên tốt: Dave Hale, Gaussian fi lters , Colorado School of Mines Center for Wave Phenomena báo cáo CWP-546.


3

Tôi nghĩ rằng bạn đã đưa ra một bản tóm tắt tốt đẹp về các giải pháp phân tích hiện có cho các bộ lọc IIR thời gian rời rạc. Nhưng tôi cũng sẽ thêm các bộ lọc Bessel vào danh sách các bộ lọc xấp xỉ các đặc tính bộ lọc chọn lọc tần số lý tưởng. Phản ứng cường độ của nó không thể hiện sự chuyển đổi rõ nét như các loại bộ lọc khác có cùng thứ tự, nhưng đây là giá bạn phải trả cho một pha gần như tuyến tính trong băng thông. Vì vậy, bộ lọc Bessel là một sự thỏa hiệp giữa đáp ứng cường độ chọn lọc tần số và đáp ứng pha tốt.

Để xấp xỉ bộ lọc Gaussian với bộ lọc IIR, tôi không biết về bất kỳ giải pháp phân tích nào, ngoài bộ lọc Bessel mà bạn đã đề cập. Nhưng lưu ý rằng bộ lọc Bessel không có nghĩa là gần đúng bộ lọc Gaussian, vì vậy tôi không chắc nó thực sự tốt như thế nào khi xấp xỉ bộ lọc như vậy. Nếu bạn thực sự muốn có bộ lọc IIR cho mục đích này, tôi khuyên bạn nên sử dụng xấp xỉ bằng số của bộ lọc Gaussian. Có một số lựa chọn làm thế nào để làm điều này.

Bạn có thể thử xấp xỉ bộ lọc Gaussian trong miền tần số. Vấn đề là bạn phải đưa ra một số quyết định liên quan đến đáp ứng pha mong muốn. Một xấp xỉ cường độ thuần túy với đáp ứng pha tối thiểu rất có thể sẽ dẫn đến các thuộc tính miền thời gian rất kém. Nếu bạn chỉ định pha mong muốn tuyến tính, thì bạn sẽ gặp vấn đề gần đúng phức tạp (vì bạn xấp xỉ đáp ứng tần số phức với cường độ và pha). Mặc dù một vấn đề gần đúng như vậy có thể khá khó giải quyết, vẫn tồn tại các phương pháp trong tài liệu.

Một cách tiếp cận đơn giản và có lẽ tốt hơn là ước tính bộ lọc Gaussian trong miền thời gian. Phương pháp của Prony sẽ là một điểm khởi đầu tốt.

Xin lưu ý rằng đây chỉ là những suy nghĩ của tôi về chủ đề này. Tôi đã không cố gắng tự thiết kế bộ lọc Gaussian IIR. Tôi thực sự sẽ thực hiện FIR trừ khi có những lý do rất chính đáng để chống lại nó.

EDIT: chỉ cần thêm một vài nhận xét liên quan đến câu hỏi liệu bộ lọc Bessel có xấp xỉ Gaussian hay không. Tôi không biết bất kỳ tiêu chí lỗi có ý nghĩa nào mà bộ lọc Bessel giảm thiểu khi xấp xỉ bộ lọc Gaussian. Tôi sẽ rất vui khi tìm hiểu về nó mặc dù. Mọi người có thể cho rằng đáp ứng xung của bộ lọc Bessel trông tương tự như Gaussian hoặc đáp ứng tần số của nó giống với Gaussian, nhưng tôi chưa thấy bất kỳ bằng chứng nào cho thấy các bộ lọc Bessel gần đúng với Gaussian theo bất kỳ nghĩa nào và lỗi gần đúng xảy ra không khi thứ tự bộ lọc tăng. Tôi không phủ nhận rằng nó tương tự như một Gaussian hơn các bộ lọc tiêu chuẩn khác (Butterworth, Ch Quashev, v.v.), nhưng điều này không quan trọng đối với câu hỏi.

Xem bên dưới bốn sơ đồ đáp ứng xung của bộ lọc Bessel (đơn hàng 5, 10, 15, 20), được thiết kế trong Octave (chức năng besself). Như bạn có thể thấy, tiếng chuông ở đuôi không giảm khi tăng thứ tự bộ lọc và tôi không thấy các bộ lọc này xấp xỉ Gaussian như thế nào, và nếu vậy, theo tiêu chí tối ưu nào. Tuy nhiên, nếu bất cứ ai có thể khai sáng cho tôi về điều này, tôi sẽ hạnh phúc hơn.

nhập mô tả hình ảnh ở đây


Tôi đang nhận được nó từ những nơi như sau: "Phản hồi xung của các bộ lọc Bessel-Thomson có xu hướng hướng tới Gaussian khi thứ tự bộ lọc được tăng lên" robot.ox.ac.uk/~sjrob/Teaching/SP/l3.pdf "An bộ lọc Bessel tương tự là một xấp xỉ với bộ lọc Gaussian và tính gần đúng được cải thiện khi thứ tự bộ lọc tăng lên. " dsprelated.com/showmessage/130958/1.php
endolith

... và vì biến đổi Fourier của Gaussian là Gaussian, tôi không nghĩ rằng nó đúng khi nói rằng nó tiếp cận một phản ứng gạch như những người khác làm.
endolith

Biến đổi Fourier của Gaussian là Gaussian, không nghi ngờ gì về điều đó. Nhưng chúng ta đang nói về các bộ lọc Bessel, theo như tôi biết - không gần đúng một Gaussian theo bất kỳ cách có ý nghĩa nào. Tôi chỉnh sửa câu trả lời của tôi để thêm thông tin.
Matt L.

Đã thêm một số chi tiết cho câu hỏi về điều này. Bạn có thể làm lại các ô của mình dưới dạng các đường cong thay vì cuống và với cùng trục Y không? Có vẻ như nó đang thay đổi hình dạng theo thứ tự nhưng thật khó để nói.
endolith

1
Tôi đã thử tính toán các bộ lọc tàu theo thứ tự 60 và điều chỉnh các đáp ứng xung của chúng theo gaussian, và mặc dù mã của tôi là thô, chúng dường như tiếp cận gaussian, với việc giảm "xuống dưới" và giảm lỗi theo thứ tự. Đơn hàng thứ 10: imgur.com/1qNsHeg Đơn hàng thứ 60: imgur.com/BgmFzZp khi đơn hàng tăng: imgur.com/cpHDDJs các tính toán có thể sai. bạn đã tính toán như thế nào?
endolith
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.