denoising via wavele
TRANSCRIPT
-
8/8/2019 Denoising via Wavele
1/15
DenoisingviaWaveletDenoisingviaWaveletTransformsTransforms
KatieMcCaffreyKatieMcCaffreyAdvisor:PatVanFleetAdvisor:PatVanFleet
-
8/8/2019 Denoising via Wavele
2/15
OverviewOverview ExplanationofDenoisingAlgorithmExplanationofDenoisingAlgorithm
WaveletShrinkageMethodsWaveletShrinkageMethods VisuShrinkVisuShrink
SureShrinkSureShrink MathematicaMathematica DemoDemo
OtherPossibleMethodsOtherPossibleMethods
-
8/8/2019 Denoising via Wavele
3/15
DenoisingAlgorithmDenoisingAlgorithmBeginwithanoisyvectorBeginwithanoisyvectoryy==vv+e,where+e,wherevv isthetrueisthetruesignalandsignalandeeisGaussianwhitenoise.isGaussianwhitenoise.
Step1:Step1: ComputeComputeii iterationsofthewavelettransformoniterationsofthewavelettransformonyy,,obtainingthenewvectorobtainingthenewvectorzz,madeoflowpassportion,madeoflowpassportionllandhighpassportionandhighpassportiondd..
Step2:Step2: Apply
threshold
rule
tohighpass
portion
Apply
threshold
rule
tohighpass
portion
ddof
ofzz,,
eithereithershrinkingshrinking thevalueorsettingitequaltozero.thevalueorsettingitequaltozero.
Step3:Step3: RejointhemodifiedhighpassportiontotheoriginalRejointhemodifiedhighpassportiontotheoriginallowpass,creatingthemodifiedvectorlowpass,creatingthemodifiedvector..
Step4:Step4: ComputeComputeii iterationsoftheinversewaveletiterationsoftheinversewavelettransformontransformon toobtaintoobtain..
TheNTheNvectorvector shouldbethedenoisedversionofy.shouldbethedenoisedversionofy.
-
8/8/2019 Denoising via Wavele
4/15
ThresholdRulesThresholdRules HardThresholdRuleHardThresholdRule
ChoosevalueforChoosevaluefor,thethresholdvalue.,thethresholdvalue.
If|xIf|xkk|,keepx,keepxkk..
SoftThresholdRuleSoftThresholdRule
If|xIf|xkk|,shrinkx,shrinkxkk byby..
For|xFor|xkk|>|>,thisisalinearfunctionf(,thisisalinearfunctionf()=|x)=|xkk||
LetLetstryitonthevector[1,1.2,3,6,2.4,5,1.1]withstryitonthevector[1,1.2,3,6,2.4,5,1.1]with =2.=2.
HardThreshold
Rule:
[0,
0,3,6,2.4,
5,0]Hard
Threshold
Rule:
[0,
0,3,6,2.4,
5,0]
SoftThresholdRule:[0,0,1,4,.4,3,0]SoftThresholdRule:[0,0,1,4,.4,3,0]
-
8/8/2019 Denoising via Wavele
5/15
AccurateShrinkageAccurateShrinkage
HowdowechooseanappropriatevalueHowdo
we
choose
an
appropriate
value
ofof foradataset?foradataset?
VisuShrinkVisuShrink
SureShrinkSureShrink Modifications?Modifications?
-
8/8/2019 Denoising via Wavele
6/15
VisuShrinkVisuShrink Remember,Remember,yy ==vv ++ee,where,whereee isGaussianwhiteisGaussianwhite
noisethat
isnormally
distributed
with
mean
0noisethatisnormallydistributedwithmean0
andvarianceandvariance22 andnoiselevelandnoiselevel.. WewanttominimizethemeansquarederrorWewanttominimizethemeansquarederrorfoundbyfoundbyDonohoDonoho andandJohnstoneJohnstone
UniversalthresholdUniversalthresholdunivuniv ==2ln(N),whereNis2ln(N),whereNisthenumberofvaluesinthenumberofvaluesinyy..
AsNAsN>> theMedianAbsoluteDeviationofthetheMedianAbsoluteDeviationofthehighpassvaluesconvergesto.6745highpassvaluesconvergesto.6745,sothe,sotheestimateforestimatefor isMAD(d)/.6745.isMAD(d)/.6745.
LetLetsseethisatworkinsseethisatworkinMathematicaMathematica
-
8/8/2019 Denoising via Wavele
7/15
ThresholdChangesThresholdChanges
QuadraticQuadratic
CubicCubic
FirmThresholdFirmThreshold
Using4data
sets
that
I
Using4data
sets
that
I
addedartificialnoiseto,Iaddedartificialnoiseto,Imeasuredtheerrorinmeasuredtheerrorineachofthecases,eachofthecases,resultinginthefollowingresultinginthefollowingvaluesvalues
ResultsResults
44332211
FirmFirm
CubicCubic
QuadQuad
LinearLinear
.0088.0088.0828.0828.0392.0392.163.163
.0097.0097.1079.1079.0393.0393.139.139
.0096.0096.1027.1027.0423.0423.158.158
.0082.0082.1051.1051.0420.0420.127.127
StillusingtheVisuShrinkmethod,ItestedotherStillusingtheVisuShrinkmethod,Itestedother
possiblethreshold
functions
(other
than
linear)possible
threshold
functions
(other
than
linear)
-
8/8/2019 Denoising via Wavele
8/15
SureShrinkSureShrink SteinSteinsUnbiasedRiskEstimatorremovesthesUnbiasedRiskEstimatorremovestheerrorobtainedbyerrorobtainedbyunivuniv whichdependsonthewhichdependsonthesizeofthedatasetsizeofthedataset
MinimizethemeansquarederrorbyminimizingMinimizethemeansquarederrorbyminimizingthefunctionthefunction
f(f()=N+||g(x)||)=N+||g(x)||22 +2+2d/dxd/dxkk(g(gkk(x(x))))wherewhereggkk(x(x)isthethresholdfunctionminusthe)isthethresholdfunctionminusthevalueforeachvalueofxvalueforeachvalueofxkk,k=1,2,,k=1,2, NN
Oncethis
value
for
Oncethisvalueforsuresure
hasbeen
chosen,
use
ithasbeenchosen,useit
intheoriginalthresholdfunctiontoshrinktheintheoriginalthresholdfunctiontoshrinkthehighpassportionandcontinuetheprocessofhighpassportionandcontinuetheprocessofdenoisingdenoising
-
8/8/2019 Denoising via Wavele
9/15
SureShrinkSureShrink Withthelinearsoftthresholdfunction,thefunctionWiththelinearsoftthresholdfunction,thefunctionsimplifiesnicelyassimplifiesnicelyas
f(f()=N)=N 22 #{k:|x#{k:|xkk|| }+}+ min(xmin(xkk22,,22)) ThisgivesdifferentfunctionsofThisgivesdifferentfunctionsof betweenxbetweenxkkandxandxk+1k+1
withaminimumatxwithaminimumatxkk eachtimeeachtime Example:Example: xx=[1,1.1,2,2,2.4]=[1,1.1,2,2,2.4]TT
For1
-
8/8/2019 Denoising via Wavele
10/15
AlternativeThresholdsAlternativeThresholds ButwhataboutdifferentthresholdButwhataboutdifferentthreshold
functions?functions? Quadratic;f(Quadratic;f())
Firmthreshold;h(Firmthreshold;h(11,,22))
Goal:FindandminimizefandhGoal:Findandminimizefandh
-
8/8/2019 Denoising via Wavele
11/15
FindingEquationsFindingEquations f(f()=N+||g(x)||)=N+||g(x)||22 +2+2d/dxd/dxkk(g(gkk(x(x))))
Quadratic:s(xQuadratic:s(xkk)=(|x)=(|xkk|| ))22,|x,|xkk|>|>;;0,|x0,|xkk|
-
8/8/2019 Denoising via Wavele
12/15
CurrentlyCurrently TheexampleIusedwiththelinearthresholdTheexampleIusedwiththelinearthresholdfunctionhad5cases,oneforeachvalueofxfunctionhad5cases,oneforeachvalueofx
kkinin
placeforplacefor.. h(h(11,,22)hasmanymoreoptionsbecauseofthe)hasmanymoreoptionsbecauseofthepossiblecombinationsofpossiblecombinationsofxxkkss..
Eachcombination
provides
an
equation
to
Eachcombination
provides
an
equation
to
minimizeatthevaluesofxminimizeatthevaluesofxkk Currently,IhavefoundthecasesforseveralCurrently,Ihavefoundthecasesforseveralvectorsandamintheprocessoffindingthevectorsandamintheprocessoffindingthe
minimumvaluesforminimumvaluesfor11andand22 Afterallthework,itboilsdowntousingAfterallthework,itboilsdowntousingMultivariableCalculus!MultivariableCalculus!
-
8/8/2019 Denoising via Wavele
13/15
CurrentPlaceCurrentPlace Vectors:Vectors:
[1,2,3,4,5]21
cases[1,
2,3,4,5]21
cases
[1,2,3]10cases[1,2,3]10cases
[1,1,2,3],[1,2,2,3],[1,1,2,3],[1,2,2,3],
[1,2,3,3]10cases[1,2,3,3]10cases
CurrentQuestions:CurrentQuestions: Inthisgraph,whichcasesareonthediagonal?Inthisgraph,whichcasesareonthediagonal?
HowdorepeatedvectorvalueseffecttheresultantHowdorepeatedvectorvalueseffecttheresultant11
andand22?? HowdoHowdo11andand22 fromsmallerrepeatedvaluesdifferfromsmallerrepeatedvaluesdifferfromfrom11andand22 fromlargerones?fromlargerones?
-
8/8/2019 Denoising via Wavele
14/15
OtherApplicationsOtherApplications SomeotherapplicationsofdenoisingviawaveletSomeotherapplicationsofdenoisingviawavelettransformationstransformations DeDenoiseaudiofilesnoiseaudiofiles
DetectedgesDetectedges IncreasequalityofdigitalimagesIncreasequalityofdigitalimages
MyapplicationsinGeologyMyapplicationsinGeology CrossCrosssectionofasedimentarydepositfromSt.AnthonyFallssectionofasedimentarydepositfromSt.AnthonyFallsLabLabJurassicTankJurassicTank
Howwerethesedimentsdeposited?Howwerethesedimentsdeposited?
PatternsincrossPatternsincrosssection,channelbeds,etc.section,channelbeds,etc.
-
8/8/2019 Denoising via Wavele
15/15
Questions?Questions?