Moved filter calculations to background thread