construct_key.m
上传用户:trade789
上传日期:2018-05-10
资源大小:603k
文件大小:1k
源码类别:

2D图形编程

开发平台:

Matlab

  1. function key = construct_key(px, py, img, sz)
  2.     pct = .75;
  3.     
  4.     [h,w] = size(img);
  5.     
  6.     [yoff,xoff] = meshgrid(-1:1,-1:1);
  7.     yoff = yoff(:)*pct;
  8.     xoff = xoff(:)*pct;
  9.     
  10.     for i = 1:size(yoff,1)
  11.         ctrx = px + xoff(i)*sz*2;  %method using interpolated values
  12.         ctry = py + yoff(i)*sz*2;
  13.         [y,x] = meshgrid(ctry-sz:sz/3:ctry+sz,ctrx-sz:sz/3:ctrx+sz);
  14.         y=y(:);
  15.         x=x(:);
  16.         t = 0;
  17.         c = 0;
  18.         for k=1:size(y,1)
  19.             if x(k)<w-1 & x(k)>1 & y(k)<h-1 & y(k)>1 
  20.                 t = t + interp(img,x(k),y(k));
  21.                 c=c+1;
  22.             end
  23.         end
  24.         if c==0
  25.             c
  26.         end
  27.         t = t/c;
  28.         
  29.         key(i) = t;
  30.     end
  31.    
  32.     key = key/sum(key);
  33.         
  34.     
  35.     
  36.