将图像裁剪成单独的部分
Posted
技术标签:
【中文标题】将图像裁剪成单独的部分【英文标题】:crop image into individual parts 【发布时间】:2021-10-04 08:13:03 【问题描述】:我使用语义分割来对图像中的不同元素进行颜色编码,如下所示。
在Python中,我想根据第二张图片的颜色将原始图片裁剪成许多小图片,这样沙发就变成了一个裁剪的部分,灯变成了一个等等。沙发上枕头的重叠可以忽略不计。假设我有一个图像的 3D 数组,我想将该数组分成单独的彩色部分,并在裁剪原始图像时应用这些元素的坐标。我应该如何做到这一点?
【问题讨论】:
到目前为止你尝试了什么?你被困在哪里了?您是否能够检测/识别彩色区域?这可以通过应用称为"image segmentation" 的方法来实现。由于有许多不同的方法可以识别这些区域,因此您应该提供有关您选择的方法/工具的更多详细信息。 @albert 我正在使用开源代码,它输出第二张图像(彩色编码的一张)。代码很长,但我会附上图像处理部分的函数。 【参考方案1】:你可以这样做:
找出分割图像中唯一颜色的数量 - 见here 遍历该颜色列表,使该颜色为白色,其他所有颜色为黑色,然后findContours()
获取边界框并将该边界框的内容保存为 PNG。
【讨论】:
其实这里有一个非常相似的答案...***.com/a/65392173/2836621以上是关于将图像裁剪成单独的部分的主要内容,如果未能解决你的问题,请参考以下文章