Matlab 从图像裁剪形状的最小尺寸矩形

Matlab 从图像裁剪形状的最小尺寸矩形,matlab,image-processing,Matlab,Image Processing,我正在MATLAB上做一个卡片识别项目,我被困在这一点上。有卡片的图像,在图像上我想定义一个最小的矩形,它将卡片放在里面。下面是一个例子 原始图像 转换图像 我目前能够将图像转换为黑白(只留下卡片上的空白),我想用整个空白来定义矩形。例如,如果我的图像中有3张非重叠卡,我希望有3张像上面那样的图像(不管图像上是否出现另一张卡的边缘,重要的是矩形必须穿过所选卡的边缘) 我尝试过边缘定义方法,但没有成功。已经感谢您的帮助。我建议您使用图像处理工具箱中的regionprops功能,即 bb = r

我正在MATLAB上做一个卡片识别项目,我被困在这一点上。有卡片的图像,在图像上我想定义一个最小的矩形,它将卡片放在里面。下面是一个例子

原始图像

转换图像

我目前能够将图像转换为黑白(只留下卡片上的空白),我想用整个空白来定义矩形。例如,如果我的图像中有3张非重叠卡,我希望有3张像上面那样的图像(不管图像上是否出现另一张卡的边缘,重要的是矩形必须穿过所选卡的边缘)


我尝试过边缘定义方法,但没有成功。已经感谢您的帮助。

我建议您使用图像处理工具箱中的
regionprops
功能,即

bb = regionprops(yourImage, 'boundingbox');

它将返回边界框。这是一个很好的MATWORKS视频,您可以跳到26分钟左右,以获取所需信息。

请发布您的代码。以前的代码与我的主要问题无关(只是黑白转换)。你可以认为你有第一个图像作为一个RGB图像,你想要得到第二个图像(或者至少是边框)。非常感谢。这完美地解决了我的问题。