フィルターのクリア

I want to perform blob detection for a satellite imagery

2 ビュー (過去 30 日間)
sandhya chezhian
sandhya chezhian 2014 年 2 月 27 日
回答済み: Vignesh 2014 年 4 月 14 日
please help me with the code.im using Matlab 7.10.0 (R2010a)
  8 件のコメント
sandhya chezhian
sandhya chezhian 2014 年 3 月 29 日
can u pls help me with the code vignesh???
Vignesh
Vignesh 2014 年 3 月 29 日
編集済み: Vignesh 2014 年 4 月 4 日
Hope this could be useful for your blob detection sandhya chezhian

サインインしてコメントする。

回答 (2 件)

Vignesh
Vignesh 2014 年 3 月 29 日
  • Detects blobs in an image. * ------>
inputs:
------->
im_in - the input image
threshold - only accept maxima above a threshold (0-1.0)
t - the linear range for sampling exp(t), eg. t=1.0:.1:3
padding - an array for padding the image, eg. [pad_x pad_y]
outputs:
-------->
blobs - an array of blobs (x, r, radius)
function blobs = detect_blobs(im_in, threshold, t, padding)
Set default values
if (nargin() < 4)
padding = [10 10];
end
if (nargin() < 3)
t = 1.0:0.1:3.0;
end
if (nargin() < 2)
threshold = 0.35;
end
% Convert input to double
im_in = double(im_in)./255.0;
% Padd the image with whitespace
pad_x = 10;
pad_y = 10;
im_in = pad_image(im_in, padding(1), padding(2), 1.0);
[rows cols] = size(im_in);
% Create a log sampling scale space
et = exp(t);
% Create our scale space
all_ims = create_scale_space(im_in, et);
blobs = {};
% Now find centers of blobs
for i=1:length(et)
for j=1:rows
for k=1:cols
if ((is_maximum(all_ims, i, j, k)) && (all_ims(i,j,k) >= threshold))
blobs{end+1} = [j-padding(1) k-padding(2) et(i) all_ims(i,j,k)];
end
end
end
end
end

Vignesh
Vignesh 2014 年 4 月 14 日
Hope u got ur req output... to improve ur accuracy use image segmentation by mathematical morphology procedure too..wat is ur purpose of blob detection in satellite image..??

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by