全球旧事资料 分类
i
j1IMGi1j1
G1ijIMGi1jIMGi1j1IMGij1IMGij1IMGi1j1
IMGi1j
G2ijIMGi1j1IMGi1jIMGij1IMGi1jIMGij1
IMGi1j1
e
d
e
d
figureimshowH1title水平边缘figureimshowH2title垂直边缘
ffigureimshowG1title45度边缘figureimshowG2title45度边缘Zzerosm
fori1m
forj1
ZijH1ijH2ijG1ijG2ij
e
de
dfigureimshowZtitle提取的边缘4对提取的边缘进行二值化TsumZm
T220whileT205Y10Y20N10N20N1doubleN1N2doubleN2Y1doubleY1Y2doubleY2fori1m
forj1
ifZijTY1Y1doubleZijN1N11elseY2Y2doubleZijN2N21e
d
e
de
dt1Y1N1t2Y2N2T1t1t22T2absTT1TT1e
dGSzerosm
fori1m
forj1
ifZijTGSij0else
fGSij255
e
d
e
d
e
d
figureimshowGStitle二值化后的图像5进行hough变换检测圆形边界
BWdoubleGS
r_max100
r_mi
10step_r1step_a
glepi18p07
size_rrou
dr_maxr_mi
step_r1
size_a
glerou
d2pistep_a
gle
hough_spacezerosm
size_r
rowscolsfi
dBW
ecou
tsizerows
fori1ecou
t
forr1size_r
fork1size_a
gle
a

rou
drowsir_mi
r1step_rcoskstep_a
gle
b

rou
dcolsir_mi
r1step_rsi
kstep_a
gle
ifa0amb0b

hough_spaceabrhough_spaceabr1
e
d
e
d
e
d
e
d
max_paramaxmaxmaxhough_space
i
dexfi
dhough_spacemax_parap
le
gthsizei
dex
hough_circlefalsem

fori1ecou
t
fork1le
gth
par3floori
dexkm
1
par2floori
dexkpar31m
m1
par1i
dexkpar31m
par21m
ifrowsipar12colsipar22r_mi
par31step_r25
rowsipar12colsipar22r_mi
par31step_r25hough_circlerowsicolsitrue
e
de
d
fe
dfork1le
gth
par3floori
dexkm
1par2floori
dexkpar31m
m1par1i
dexkpar31m
par21mpar3r_mi
par31step_rfpri
tf1Ce
terddradiusd
par1par2par3parakpar1par2par3e
dfigureimshowhough_circletitlehough变化后的图像6将hough变化后提取的图像与原图像相加,增强其边缘LSTzerosm
fori1mforj1
ifhough_circleij1LSTij255
elseLSTijSij
e
de
de
dfigureimshowLSTtitle最终的结果
五、心得体会
我们选择用MATLAB来编写,因为感觉自己对C等其他语言掌握的不是最熟练的。刚拿到题目的时候我们三个感觉还挺简单的,平滑、边缘检测以及霍夫变换都是上课时候讲过的,可是到真正着手做的时候感觉理论与实践搭不上,很多在理论想清楚,可是一旦到编程实践,有些地方就会无从下手,我们又仔细研究了一下算法,首先使用高斯函数对图r
好听全球资料 返回顶部