1个回答
展开全部
你的问题还真奇怪,你是想把图片中的这个主要内容居中了那按下面的方法吧,用到了图像的边界识别;
a=imread('居中.jpg');
[m n t]=size(a);
b=edge(a(:,:,1),'canny',0.95);%找到书本的边界
figure(1);
imshow(b);
ind=find(b);
[subi subj]=ind2sub([m n],ind);
minj=min(subj);%确定书的左边界列号
maxj=max(subj);%确定书本右边界列号
middle=round(n/2);
diffn=middle-round((maxj+minj)/2);%计算书本到中线需要的位移
temp=a(:,n-diffn+1:end,:);
a(:,n-diffn+1:end,:)=[];
newimg=[temp,a];%重新设置图片
figure(2);
imshow(newimg);
a=imread('居中.jpg');
[m n t]=size(a);
b=edge(a(:,:,1),'canny',0.95);%找到书本的边界
figure(1);
imshow(b);
ind=find(b);
[subi subj]=ind2sub([m n],ind);
minj=min(subj);%确定书的左边界列号
maxj=max(subj);%确定书本右边界列号
middle=round(n/2);
diffn=middle-round((maxj+minj)/2);%计算书本到中线需要的位移
temp=a(:,n-diffn+1:end,:);
a(:,n-diffn+1:end,:)=[];
newimg=[temp,a];%重新设置图片
figure(2);
imshow(newimg);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询