opencv reference manual (2.4.x) states constructor initializes mser requires following parameters:
delta, min_area, max_area, max_variation, min_diversity, max_evolution, area_threshold, min_margin, edge_blur_size.
i dealing grayscale images. use of parameters "delta", "max_variation" , "min_diversity"? property of mser these parameters control?
i have tried lot find exact answer , find little information on following pages (none of particularly useful in telling me these 3 parameters control): 1. opencv wiki 2. wikipedia description of mser 3. mser questions on stackoverflow
please help!
i going presume know basics of how mser feature detection works (if not, wikipedia, , short recap follows).
you have 2 types of mser regions, positive , negative.
first type, thresholding intensities (for grayscale images, 0
255
). e.g. threshold t = 100
, pixels intensity <= 100
assigned black
, or foreground
, , pixels > 100
intensity white
or background
.
now, imagine you're observing specific pixel p
. @ threshold, let's call t1
, start belonging foreground , stay way until t=255
. @ t1
pixel belong component cc_t1(p)
. 5
gray levels later, belong component cc_(t1+5)(p)
.
all of these connected components, obtained thresholds, potential candidates mser. (other type of components obtained if reverse black/foreground
, white/background
assignments thresholding).
parameters decide potential candidates indeed maximally stable:
delta
for every region, variation measured:
v_t = (size(cc_t(p))-size(cc_{t-delta}(p)))/size(cc_{t-delta}(p))
for every possible threshold
ti
. if variation pixels local minimum of variation, is,v_t > v_{t-1}
,v_t > v_{t+1}
, region is maximally stable.the parameter delta indicates through how many different gray levels region need stable considered maximally stable. larger delta, less regions.
note: in original paper introducing mser regions, actual formula is:
v_t = (size(cc_{t+delta}(p))-size(cc_{t-delta}(p)))/size(cc_t(p))
the opencv implementation uses different formula speed feature extraction.
minarea, maxarea
if region maximally stable, can still rejected if has less minarea pixels or more maxarea pixels.
maxvariation
back variation point 1 (the same function delta): if region maximally stable, can still rejected if the regions variation bigger maxvariation.
that is, if region "relatively" stable (more stable neigbouring regions), may not "absolutely" stable enough. smaller maxvariation, less regions
mindiversity
this parameter exists prune regions similar (e.g. differ few pixels).
for region
cc_t1(p)
is maximally stable, find regioncc_t2(p)
"parent maximally stable region". means,t2 > t1
,cc_t2(p)
maximally stable region , there not2 > tx > t1
suchcc_tx(p)
maximally stable. now, compare how bigger parent is:diversity = (size(cc_t2(p)) - size(cc_t1(p))) / size(cc_t1(p))
if
diversity
smaller maxdiversity, remove regioncc_t1(p)
. larger diversity, less regions.(for exact formula parameter had dig through program code)
Comments
Post a Comment