line profile adding certain rows together

Hi. I have an image that I create a horizontal linescan through the centre (y co0rdinate = rMiddle)
I have also shown two red dotted lines that represent +/- 1 pixel. What I'm trying to do it centred around rMiddle, obtain a profile that sums the linescans together for not for +/-1 pixel but to extend +/- 3 pixels.
This is what I have so far but was wondering if their is a more elegant way.
yth_row=img(rMiddle,:)+img(rMiddle-1,:)+img(rMiddle+1,:)+img(rMiddle-2,:)+img(rMiddle+2,:)+img(rMiddle-3,:)+img(rMiddle+3,:);
Thanks Jason

 采纳的回答

ind = [-3 -2 2 3] + rMiddle; % rows +/- 3 pixels from rMiddle, but without row rMiddle and the direct rows +/- 1 pixels above and below of rMiddle.
Y = sum(img(ind, :), 2); % sum across the second dimension, i.e., across columns

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Image Segmentation and Analysis 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by