2012-05-09 3 views
0

На этом снимке:находка площади в изображении

enter image description here

есть квадраты (3 * 3, 5 * 5 и 11 * 11)

Как я могу найти небольшую площадь (5 * 5)?

После нанесения фильтра на изображении останется только небольшой квадрат.

Мы можем применить фильтр размытия (размер 5 * 5) на изображении, если квадрат исчез, тогда мы понимаем, что квадрат меньше (5 * 5).

Как найти квадрат с матрицей?

+0

Вы могли бы быть более конкретным? Вы пытаетесь найти координаты маленьких квадратов? – Simon

+0

На этом изображении ваши квадраты различной интенсивности, я полагаю, вы не хотите использовать пороги для определения правильных квадратов? – Chris

+0

в resualt image Я хочу держать только квадрат с размером (5 * 5). независимо от пороговых значений, если вы можете использовать это. –

ответ

4

вы должны свертка изображения со следующим ядром:

-1 -1 -1 -1 -1 -1 -1 
-1 +1 +1 +1 +1 +1 -1 
-1 +1 +1 +1 +1 +1 -1 
-1 +1 +1 +1 +1 +1 -1 
-1 +1 +1 +1 +1 +1 -1 
-1 -1 -1 -1 -1 -1 -1 

Если белые части равны 0, а черные части 1. если белыми 1 и черные 0 переключателя + 's и -'s в ядре.

Вы можете использовать conv2. Проверьте ссылку или википедию для получения дополнительной информации о свертке. Полная программа оставлена ​​в качестве упражнения для читателя ;-)

В результате будет изображение, в котором все пиксели равны нулю, кроме центров темных квадратов 5x5.

+0

i не понимает this.how может выполнить это с помощью matlab.this означает, что создать mtrix 5 * 5 и конвертировать 0 в 1 и наоборот –

+0

, пожалуйста, более подробное описание об этом. Как это можно сделать с помощью matlab –

+0

@ StackOverflow См. Редактирование. Я думаю, что сейчас достаточно деталей. Если вы ничего не понимаете, будьте конкретны с вашей проблемой. – Simon

Смежные вопросы