資源簡介
利用隨機霍夫變換進行圓的檢測,matlab編寫
代碼片段和文件信息
%邊緣檢測
clear;
close?all;
tic
yuantu=imread(‘pic.jpg‘);%讀取圖像文件
gray=rgb2gray(yuantu);%轉換為灰度圖
%threshold=graythresh(gray);
%gray=uint8(gray);
bw=im2bw(gray0.1);%轉換為二值圖
%threshold=50;
%bw=imextendedmin(graythreshold);
bw=bwareaopen(bw40);%去除小目標
%bwtu=edge_dec(yuantu2gray);
bw=~bw;%圖像求補
%bw=imfill(bw‘holes‘);
sedisk=strel(‘disk‘4);?%圓形結構元素
bw=imopen(bwsedisk);%開操作
bw=uint8(bw);
bwtu=edge(bw‘canny‘);%求邊界
figure;imshow(bwtu);
[y_bwx_bw]=find(bwtu);???????????%找出BW中為1?的點的橫縱坐標
x_bw=x_bw‘;
y_bw=y_bw‘;
n=size(x_bw);
figure;
imshow(yuantu);
hold?on;
%RHT霍夫變換圓檢測簡單程序
%初始化數據
[height?width]=size(bwtu);%hight為行數,width為列數
p=zeros(1004);%開辟了100個參數對的空間,第四位為該參數在圖中已找到的個數
p_num=0;%實際找到的圓參數的對數
quit_flg=0;%判斷是否有候選圓的標志
num_limit=10;%參數重復出現的次數限制,大于則為候選圓參數
p_limit=5;?%判斷兩參數相
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????6560??2012-05-22?11:39??random?hough?transform.m
?????文件??????11292??2010-07-30?20:14??pic.jpg
-----------?---------??----------?-----??----
????????????????17852????????????????????2
評論
共有 條評論