簡體   English   中英

matlab - Object檢測

[英]matlab - Object detection

給出了下圖

1

我必須檢測圖像右下角的組件。 結果應如下所示:

2

閾值化后腐蝕在代碼中如下所示:

clc; close all;
I  = imread('Leiterplatte.png');
se = strel('rectangle', [2 4]);
Ie1 = imerode(I,se);
imshow(I);

%figure; histogram(I)
Im = Ie1>40 & Ie1<128;
figure; imshow(Im) 

se = strel('rectangle', [8 8]);
Ie = imerode(Im,se);

figure; imshow(Ie)

I(Ie)=255;
figure; imshow(I)

我得到以下結果:

在此處輸入圖像描述

但是檢測到的矩形要么太小,要么如果不是,那么斑點仍在圖像中,如下所示:

在此處輸入圖像描述

你快到了。 稍微玩一下常量和一個imopen調用來刪除點就可以完成工作:

I  = imread('RuaDN.png');
se = strel('rectangle', [4 8]);
Ie1 = imerode(I,se);
Im = Ie1>70 & Ie1<130;
se = strel('rectangle', [8 16]);
Ie = imopen(Im, se);

O = I;
O(Ie) = 255;

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM