資源簡介
圖像測量試驗 試驗四 面積測量

代碼片段和文件信息
%function?[labelnumber]=labelbinaryimage(image)
%???對二值圖像標號
%???image????輸入二值圖像
%???label????輸出各連通區域標記好的圖像
%???number???連通區域個數
close?all;
clear;
clc;
I?=?imread(‘areatest.bmp‘);
imshow(I)title(‘原始圖像‘);
%[rowcol]?=?size(I);
[labelnumber]=labelbinaryimage(I);
%計算每個區域的面積
area=zeros(1number);
%儲存連通區域中心坐標
cen=zeros(2number);
for?i=1:number
????[corowcocol]=find(label==i);%找出各連通區域包含元素
????k=length(corow);
????%?存儲目標區域面積????
????area(i)=k;????
????%?計算目標區域中心
????cen(1i)=sum(corow)/k;
????cen(2i)=sum(cocol)/k;
end
figure(‘Name‘‘顯示各連通區域面積‘)
imshow(‘areatest.bmp‘)title(‘各連通區域面積‘)
for?i=1:number??
????str=[‘(‘?num2str(i)?‘‘?num2str(area(i))?‘)‘];
????text(cen(2i)cen(1i)str‘color‘‘red‘);%標識各連通區域
end????????
%顯示各個連通區域面積,橫坐標為連通區域標號,縱坐標為面積
figure(‘Name‘‘在坐標圖中顯示各連通區域面積‘)
x=1:1:number;
plot(xarea‘b‘);
hold?on
grid
for?n=1:number
plot(x(n)area(n)‘ro‘)
set(gca‘XTick‘1:1:number)
str=[‘(‘?num2str(x(n))?‘‘?num2str(area(n))?‘)‘];
text(x(n)+0.05area(n)str)
title(‘各連通區域面積‘)
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-01-30?09:22??圖像測量試驗四?面積測量\
?????文件????????1202??2012-01-26?02:57??圖像測量試驗四?面積測量\areameasure.m
?????文件????????5414??2012-01-26?02:21??圖像測量試驗四?面積測量\areatest.bmp
?????文件????????2819??2012-01-26?02:54??圖像測量試驗四?面積測量\labelbinaryimage.m
?????文件???????50688??2012-01-26?03:25??圖像測量試驗四?面積測量\程序說明.doc
- 上一篇:憶阻神經網絡實驗
- 下一篇:IEEE754浮點數加法器
評論
共有 條評論