How to track an object with deformations in a sequence of images in Matlab -


i trying make program in matlab detects object in image, , track in sequence of images.

in matching algorithm, have tried comparing area, perimeter , major axis length of objects. works when objects maintain same shape during tracking time (it can move or rotate). however, goal use program on satellite images, want track ice. problem ice floes not maintain exact same shape. has deformations.

do have suggestions different approach this, invariant deformations?

in current program, load each image , make them binary. then, find properties of each object in each image, run code on binary representation of images:

% find object properties [clust,numb] = bwlabel(image, 8); area = regionprops(clust,'area'); s = regionprops(clust, {'centroid'}); measurements = regionprops(clust,'majoraxislength','minoraxislength'); theta = regionprops(clust,'orientation'); perimeter = regionprops(clust,'perimeter');  % store centroids in matrix centroids = zeros(numb,2); n=1:numb     centroids(n,1)=s(n).centroid(1);     centroids(n,2)=s(n).centroid(2); end  % store other properties in matrix (order: area, majoraxis, minoraxis, % orientation, perimeter) properties = zeros(numb, 6); m=1:numb     properties(m,1)=area(m).area;     properties(m,2)=measurements(m).majoraxislength;     properties(m,3)=measurements(m).minoraxislength;     properties(m,4)=theta(m).orientation;     properties(m,5)=perimeter(m).perimeter; end 

i use properties stored when compare objects in images.

my example images are:

test images

which looks after processed (made binary , objects removed except object want track):

processed images

sorry using collages , not original images. did not have enough reputation post images.

problems tractable if have a priori knowledge of system in question. you'll have dig domain knowledge (unless there's icefloes.stackoverflow.com) can make naive first order approach purposes of seeing how use develop tracking algorithm.

so let's deformation gradual , motion of blocks continuous. in case extract shape of given block of ice in 1 frame , use kernel correlation search in local spatial region in next frame. result give centroid of new location , can use extract new shape correlate next frame. gradual deformations result in imperfect correlations using new shape each iteration should allow keep tracking.

what if deformations aren't gradual? perhaps block stays same shape , cleaves 2 (seems likely). can track block through frames stays same shape when block cleaves (i'm guessing happens on timescale less frame interval) tracking break. if you've stored trajectory of block on previous n frames extrapolate path , in expected spot new pieces.

if you're tracking multiple blocks should follow similar trajectories - appropriate current vector in sea suppose - , perhaps use these trajectories interpolate spatially see cleft block might end up.

your problem differs similar imaging problems in blocks aren't going disappear (i assume, apologies if not case) know block somewhere, if it's in pieces. if can identify more 1 method of tracking them perform of them , vote on results - can surprisingly effective, have 2 or more indiviaully weak results.


Comments

Popular posts from this blog

android - MPAndroidChart - How to add Annotations or images to the chart -

javascript - Add class to another page attribute using URL id - Jquery -

firefox - Where is 'webgl.osmesalib' parameter? -