To divide an image into 2 equal halves
Show older comments
I wrote the code for it . I can divide the left side of an image and while doing for the right side left part of it is black and right part is the second half of the image . The problem where i am facing is , in the 2nd for loop it starts with k=1 n m=110 so for others column values from 1 to 109 as a default its taking zero. How to sort out this problem.
% code
x=imread('img1.jpg');
image=rgb2gray(x);
[q r]=size(image);
s=r/2;
for i=1:q
for j=1:s
n1(i,j)=image(i,j);
end
end
for k=1:q
for m=s:r
n2(k,m)=image(k,m);
end
end
imshow(n1)
figure
imshow(n2)
end
4 Comments
keerthi
on 27 Sep 2012
Walter Roberson
on 27 Sep 2012
Look in the documentation about array indexing.
Durgesh Naik
on 3 Apr 2015
till not working
Image Analyst
on 3 Apr 2015
How do you know? Did you ask keerthi? He accepted the answer so I would assume that it is working.
Accepted Answer
More Answers (2)
Jay Li
on 10 May 2018
1 vote
function y = halfpic(x)
% Enter an image in matrix form
n = floor(size(x)/2)
m = size(x);
Lpic = x(:,1:n(2),:);
Rpic = x(:,n(2)+1:m(2),:);
imshow(Lpic);
figure
imshow(Rpic);
1 Comment
mariena aloor
on 10 Sep 2019
How to divide an image in to 8 regions
JEBA CHRISTILDA
on 9 Aug 2016
0 votes
yes i too tried this but it is showing error in imshow(n1)
Categories
Find more on Images in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!