Chromium Code Reviews

Unified Diff: webrtc/modules/video_processing/util/denoiser_filter_sse2.cc

Issue 1822333003: External denoiser based on noise estimation and moving object detection. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Index: webrtc/modules/video_processing/util/denoiser_filter_sse2.cc
diff --git a/webrtc/modules/video_processing/util/denoiser_filter_sse2.cc b/webrtc/modules/video_processing/util/denoiser_filter_sse2.cc
index 903d7b1ec66243df449dedd7ba8421af735915e5..614b6c94859b58546e100657f60c8f98e2bb1426 100644
--- a/webrtc/modules/video_processing/util/denoiser_filter_sse2.cc
+++ b/webrtc/modules/video_processing/util/denoiser_filter_sse2.cc
@@ -139,7 +139,9 @@ DenoiserDecision DenoiserFilterSSE2::MbDenoise(uint8_t* mc_running_avg_y,
const uint8_t* sig,
int sig_stride,
uint8_t motion_magnitude,
- int increase_denoising) {
+ int increase_denoising,
+ bool denoise_always) {
+ unsigned int sum_diff_thresh = 0;
int shift_inc =
(increase_denoising && motion_magnitude <= kMotionMagnitudeThreshold) ? 1
: 0;
@@ -211,9 +213,12 @@ DenoiserDecision DenoiserFilterSSE2::MbDenoise(uint8_t* mc_running_avg_y,
{
// Compute the sum of all pixel differences of this MB.
unsigned int abs_sum_diff = AbsSumDiff16x1(acc_diff);
- unsigned int sum_diff_thresh = kSumDiffThreshold;
- if (increase_denoising)
+ if (denoise_always)
+ sum_diff_thresh = INT_MAX;
+ else if (increase_denoising)
sum_diff_thresh = kSumDiffThresholdHigh;
+ else
+ sum_diff_thresh = kSumDiffThreshold;
if (abs_sum_diff > sum_diff_thresh) {
// Before returning to copy the block (i.e., apply no denoising),
// check if we can still apply some (weaker) temporal filtering to
« no previous file with comments | « webrtc/modules/video_processing/util/denoiser_filter_sse2.h ('k') | webrtc/modules/video_processing/util/noise_estimation.h » ('j') | no next file with comments »

Powered by Google App Engine