0
您好StackOverflow社区,把图像的裁剪部分放回原尺寸
我有一个问题,因为两天有更大的图像和ROI,这是图像的一部分。 我想用imrect
来选择ROI并裁剪ROI,这样我就可以处理更少量的数据。 处理完毕后,我想将裁剪后的图像重新映射回图像的原始位置。
我已经通过调试迄今所做:
function paddedImg = putCroppedImgBack(croppedIm, Pos, origDim)
paddedImg = zeros(origDim);
r = round(Pos(1));
c = round(Pos(2));
if(r ==0) % because ML addresses a matrix not with 0 like in cpp
r=1;
end
sizeR = size(croppedIm,1);
sizeC = size(croppedIm,2);
paddedImg(r:sizeR,c:sizeC) = croppedIm; %this part doesn't work!
%Subscripted assignment dimension mismatch.
我试图round
的imrect
的坐标,但没有藏汉工作。 我还用数值例如paddedImg
来手动表示。 paddedImg(1:5,20:50) = 1;
,它的工作原理。
编辑: 找到解决方案后,我开始在这里的帖子....有时我应该问的StackOverflow不是整天和一个不眠之夜早一点。
paddedImg(r:sizeR+r-1,c:sizeC+c-1) = croppedIm;
真诚
尝试通过'POS = [11]',并告诉我们,如果它给出了同样的错误。或者试试'paddedImg(1:5,20:50)= croppedImg'来查看它是否有效。 – Yamaneko
哦,甜美的主人,我认为我发现了这个错误... 有时生活太讽刺了。当我阅读你的文章时,我尝试了一些我以前已经尝试过的东西。 请参阅开始文章中的编辑。无论如何..感谢您的帖子。 – mchlfchr
我很高兴这在某些方面有帮助。作为答案发布您的解决方案,您将能够在两天内接受它。 – Yamaneko