www.gusucode.com > IPCV_Eval_Kit_R2019a_0ce6858工具箱matlab程序源码 > IPCV_Eval_Kit_R2019a_0ce6858/code/demo_files/I2_08_1_nuts.m
%% 栘偺幚摍傪僇僂儞僩詡眰虝綃蟼虘鍌珎 % 弶婜壔 clear;clc;close all;imtool close all %% 夋憸僨乕僞傪撉崬傒 I = imread('I2_08_1_1895cr.jpg'); figure;imshow(I); %% 俀抣夋憸傪嶌惉偟丄暔懱偲攚宨傪幆暿 %%%%%%%%%%%%%%%%%% % 僌儗乕僗働乕儖傊曄姺 G = rgb2gray(I); figure;imshow(G); %% 婸搙偺僸僗僩僌儔儉傪妋擣 figure;imhist(G); %% 婸搙偵傛傝擇抣壔 (攚宨偑0丄暔懱偑1偺2抣夋憸嶌惉) BW = G < 180; %140偐傜10偢偮丄"抣偺僀儞僋儕儊儞僩偍傛傃僙僋僔儑儞幚峴" imshow(BW);shg; %% 僄僢僕専弌 BWe = edge(G,'canny', [0.04 0.06], 3); imshow(BWe);shg; %奼戝偟偰椫妔偑偮側偑偭偰偄傞偙偲傪妋擣 %% 儌儖僼僅儘僕乕張棟丗慄偱埻傑傟偰偄傞椞堟傪杽傔傞 BWf1 = imfill(BWe, 'holes'); imshow(BWf1); shg; %% 儌儖僼僅儘僕乕張棟丗愗傟偰偄傞晹暘傪偮側偖 BWb = bwmorph(BWf1, 'bridge'); imshow(BWb); shg; % 偮側偑偭偨偙偲傪妋擣 %% 嵞搙丄慄偱埻傑傟偰偄傞晹暘傪杽傔傞 BWf2 = imfill(BWb, 'holes'); imshow(BWf2); shg; % 儌儖僼僅儘僕乕張棟丗嵶偐側慄(僲僀僘)傪嶍彍丗僆乕僾儞張棟 (廂弅屻偵朿挘) % 乮懠偵丄bwareaopen()娭悢偱峴偆偙偲傕壜擻 乯 %% 廂弅張棟 BWe = bwmorph(BWf2, 'erode'); figure;imshow(BWe); shg; %% 朿挘張棟 BWd = bwmorph(BWe, 'dilate'); figure;imshow(BWd); shg; %% 奺椞堟乮blob丗敀偄晹暘乯偺宍忬應掕 (柺愊丒拞怱揰) stats=regionprops('table', BWd, 'Area', 'Centroid') % R2015a 偱僥乕僽儖弌椡偵懳墳 %% 屄悢 size(stats, 1) %% 柺愊偺僸僗僩僌儔儉傪僾儘僢僩 figure;hist([stats.Area]) %% 僀儊乕僕偺夝愅 傾僾儕働乕僔儑儞 偱 BWd傪撉崬傒 %% 廔椆 %% Copyright 2013 The MathWorks, Inc. % Masa Otobe (masa.otobe@mathworks.co.jp) % 昁梫側僼傽僀儖丗I2_08_1_1895cr.jpg