如何获取图像的边界框和底部边界框
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获取图像的边界框和底部边界框相关的知识,希望对你有一定的参考价值。
对于图像,我计算了所有边界框。我想删除位于图像底部的边界框,因为它们不是我的投资回报率。
有人可以帮助使用计算的边界框从图像中删除底部。
答案
让我们说你有一个单色图像(黑色和白色)称为Image3
。正如您已经说过的那样,您正在计算围绕“扭曲”的边界框。
[labeledImage, numberOfBlobs] = bwlabel(Image3);
measurements = regionprops(labeledImage, 'BoundingBox');
通过计算边界框regionprops
,你显然是在计算你的扭曲的位置,但这是从我的观点来看冗余可能是多余的。你可以简单地写:
[labeledImage, numberOfBlobs] = bwlabel(Image3);
[x,y]=size(labeledImage);
height_from_top = 0.8;
width_from_left = 1.0;
endIdx_y = round(y*height_from_top);
endIdx_x = round(x*width_from_left);
labeledImage(1:endIdx_x ,1:endIdx_y)=0;
Image3(labeledImage>0)=0; % or 1, depending on the colour...
我的指数很可能不完全匹配。不幸的是,我现在无法检查它,但是此修改应排除您的下边框和最右边框,具体取决于您要在每个方向上过滤的图像的百分比。例如。将height_from_top
设置为0.5
应该只删除图像的下半部分。
以上是关于如何获取图像的边界框和底部边界框的主要内容,如果未能解决你的问题,请参考以下文章
OpenLayers v3.4 从 GeoServer 获取图层边界框和 CRS 数据