как получить ограничивающий прямоугольник и нижний ограничивающий прямоугольник для изображения - PullRequest
0 голосов
/ 10 декабря 2018

Для изображения я рассчитал все ограничивающие рамки.Я хотел удалить ограничивающие прямоугольники, которые находятся внизу изображения, поскольку они не являются моей областью интереса.

может помочь удалить нижнюю часть изображения, используя вычисленную ограничивающую рамку.

1 Ответ

0 голосов
/ 10 декабря 2018

Допустим, у вас есть монохроматическое изображение (черно-белое), которое называется 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 должна удалить только нижнюю половину вашего изображения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...