質問編集履歴
3
画像の再記載
title
CHANGED
File without changes
|
body
CHANGED
@@ -40,6 +40,5 @@
|
|
40
40
|
houghlinesの間隔GapとMinLengthの変更
|
41
41
|
|
42
42
|
### 補足情報(FW/ツールのバージョンなど)
|
43
|
-
使用した画像
|
43
|
+
使用した画像
|
44
|
-

|
45
|
-

|
2
コードの追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,7 +13,9 @@
|
|
13
13
|
|
14
14
|
使用言語:matlab
|
15
15
|
ソースコード
|
16
|
+
gray1 = imread('######');
|
17
|
+
binary1 = imbinarize(gray1);
|
16
|
-
edge1 = edge(
|
18
|
+
edge1 = edge(binary1,'Canny');
|
17
19
|
%%%%%バイナリ画像膨張%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
18
20
|
se90 = strel('line',12,90); se0 = strel('line',12,0); %縦方向、横方向に12ピクセル
|
19
21
|
edge1 = imdilate(edge1,[se90 se0]);
|
1
コードの追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -14,6 +14,11 @@
|
|
14
14
|
使用言語:matlab
|
15
15
|
ソースコード
|
16
16
|
edge1 = edge(gray1,'Canny');
|
17
|
+
%%%%%バイナリ画像膨張%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
18
|
+
se90 = strel('line',12,90); se0 = strel('line',12,0); %縦方向、横方向に12ピクセル
|
19
|
+
edge1 = imdilate(edge1,[se90 se0]);
|
20
|
+
|
21
|
+
%%%%%ハフ変換%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
17
22
|
[H,T,R] = hough(edge1);
|
18
23
|
P = houghpeaks(H,5,'threshold',ceil(0.3*max(H(:)))); %ピークの検出
|
19
24
|
lines = houghlines(edge1,T,R,P,'FillGap',20,'MinLength',500); %線分の検出(長さ500以上)
|
@@ -21,6 +26,7 @@
|
|
21
26
|
|
22
27
|
for k = 1:length(lines)
|
23
28
|
xyAtoZ = [lines(k).point1; lines(k).point2]; % xyAtoZ(2,1)は終点のx座標、xyAtoZ(1,2)は始点のy座標
|
29
|
+
|
24
30
|
plot(xyAtoZ(:,1),xyAtoZ(:,2),'LineWidth',2,'Color','green');
|
25
31
|
plot(xyAtoZ(1,1),xyAtoZ(1,2),'o','LineWidth',2,'Color','yellow');
|
26
32
|
plot(xyAtoZ(2,1),xyAtoZ(2,2),'x','LineWidth',2,'Color','red');
|