create 3*3 matrix around a given pixel

3 次查看(过去 30 天)
I have a centroid plotted on a blank image using the command img(a(2),a(1))=1;
I would like to create a 3*3 matrix of ones around this pixel as centroid.
Can someone tell me how i can achieve this.
Thankyou

采纳的回答

Jos (10584)
Jos (10584) 2014-7-7
One solution:
img = zeros(6,7)
a = [4 3]
img(a(2),a(1)) = 1
B = [1 1 1 ; 1 0 1 ; 1 1 1];
img2 = conv2(img, B ,'same')

更多回答(1 个)

Mahendra Amrao
Mahendra Amrao 2020-9-8
img = zeros(6,7)
a = [4 3]
img(a(2),a(1)) = 1
B = [1 1 1 ; 1 0 1 ; 1 1 1];
img2 = conv2(img, B ,'same')

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by