我的问题是当我从连接到笔记本电脑的相机拍摄快照时,y轴变为反转,因此结果变得错误“http://s4.postimg.org/xcat1kmvh/sdsf.png”...我通过使用此代码修复此问题“set(gca ,'YDir','正常')%从图的底部开始 “......但问题是照片会像这样反转”http://s16.postimg.org/ekguxl35x/sdsfss.png“......我怎么能解决这个问题......我只是想获得图片中任何关节的XY分量......
这是我的代码:我只是在录制视频之前拍摄快照进行校准
于imagesc(getsnapshot(handles.video));
set(gca,'YDir','normal')%从图的底部开始
[x1,y1]=ginput(1)
[x2,y2]=ginput(1)
c=sqrt((x1-x2)^2+(y1-y2)^2)
d=c/40.8;
答案 0 :(得分:2)
您可以在绘制图像之前反转图像,这样当您反转y轴时,图像会以您想要的方向结束。这是一个例子
I = imread('peppers.png'); % sample image included in matlab
subplot(2,2,1)
imagesc(I)
subplot(2,2,2)
I2 = flipdim(I,1);
imagesc(I2)
set(gca,'YDir','normal')
在您的代码中,getsnapshot(handles.video))
返回一个矩阵,您可以反转该矩阵。像这样:
frame = getsnapshot(handles.video));
frame2 = flipdim(frame,1);
imagesc(frame2)
答案 1 :(得分:1)
或者你可以使用:
作弊set(gca, 'YTicklabel', {'450' '400' '350' '300' '250' '200' '150' '100' '50'})