How to delete odd columns and odd rows from a image

5 views (last 30 days)
Hi, I have to delete odd columns and odd rows from a image. When I import an image it's actually a matrix, so I only have to delete odd columns and odd rows from a matrix. How can i do it?
  1 Comment
Dyuman Joshi
Dyuman Joshi on 16 Mar 2023
Edited: Dyuman Joshi on 16 Mar 2023
im = (randi(256,20,20,3)-1)/255;
imshow(im)
%removing odd rows
im(1:2:end,:,:)=[];
%removing odd columns
im(:,1:2:end,:)=[];
imshow(im)

Sign in to comment.

Answers (1)

Mathieu NOE
Mathieu NOE on 16 Mar 2023
helllo
try this (A is a array we keep only the even rows and columns)
% create dummy A array
a = (1:10);
for ci = 1:10
A(ci,:) = a*ci;
end
A
A = 10×10
1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 12 14 16 18 20 3 6 9 12 15 18 21 24 27 30 4 8 12 16 20 24 28 32 36 40 5 10 15 20 25 30 35 40 45 50 6 12 18 24 30 36 42 48 54 60 7 14 21 28 35 42 49 56 63 70 8 16 24 32 40 48 56 64 72 80 9 18 27 36 45 54 63 72 81 90 10 20 30 40 50 60 70 80 90 100
%remove odd cols and rows (equivalent to keep even r & c)
[m,n] = size(A);
B = A(2:2:m,2:2:n)
B = 5×5
4 8 12 16 20 8 16 24 32 40 12 24 36 48 60 16 32 48 64 80 20 40 60 80 100

Categories

Find more on Images in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!