2012-05-03 32 views
6

Tôi có thể mong đợi tăng tốc khi sử dụng FFTW (http://www.fftw.org/) thay vì cvDFT của OpenCV (http://goo.gl/YCHj0) không?FFTW so với OpenCV cvDFT

Thời gian chạy chương trình của tôi được xác định rất nhiều bởi việc áp dụng DFT ngược và tiến và tôi đang nghĩ đến việc sử dụng FFTW thay vì OpenCV cvDFT.

IIRC FFTW thực hiện một số loại "biên soạn thời gian chạy" trong khi cvDFT là một triển khai FFT đơn giản, vì vậy tôi đoán nó có thể tăng tốc độ xử lý của tôi một chút.

Vì vậy, trước khi tôi tự mình thử một mình, tôi đã nghĩ hỏi tại đây trong trường hợp có ai vấp phải cùng một câu hỏi và giải quyết nó trước đây.

Cảm ơn trước

Trả lời

11

Tôi đã sử dụng cả hai (OpenCV và FFTW) và bạn có thể mong đợi FFTW là nhanh hơn so với việc thực hiện đơn giản hơn trong OpenCV (bao nhiêu phụ thuộc rất nhiều vào bộ xử lý và hình ảnh của bạn kích thước dĩ nhiên). Tuy nhiên, nếu bạn có kế hoạch sử dụng phần mềm thương mại FFTW của bạn có một giấy phép khá tốn kém ($ 7500.00). Trong trường hợp thương mại, tôi sẽ giới thiệu Intel's IPP trên FFTW vì hiệu suất tương tự với giấy phép giá cả phải chăng hơn ($ 199.00) + bạn nhận được nhiều chức năng hơn trong IPP so với FFTW (tức là chỉ có thư viện FFT).

Here là một số điểm chuẩn giữa FFTW và các thư viện đối thủ cạnh tranh khác nhau. Kết quả là loại cũ, nhưng rất hữu ích để so sánh. Tôi không chắc tại sao các biến đổi 2D của IPP không được bao gồm (có thể khi các tiêu chuẩn này được thực hiện mà chúng chưa tồn tại).

Nếu bạn đi theo lộ trình IPP, bạn có thể xây dựng OpenCV với sự hỗ trợ của IPP và nó sẽ hoán đổi việc thực hiện cvDFT gốc với tương đương IPP. Điều này sẽ cung cấp cho bạn một tăng hiệu suất tốt đẹp (đặc biệt là trên chip Intel), và bạn không phải thay đổi mã của bạn.

+0

Cảm ơn rất nhiều! Trước tiên, tôi sẽ cố gắng biên dịch lại IPP. Cần phải kiểm tra những vấn đề cấp phép, mặc dù. –

+0

Không sao cả! Hy vọng bạn tìm thấy IPP đủ nhanh cho nhu cầu của bạn! Nó sẽ có khả năng hoạt động tốt nhất trên các chip Intel Core-i7 mới nhất. – mevatron

Các vấn đề liên quan