![]() |
فاصله داخلی بافت شکل
در مورد idsc(inner-distance shape context) که مربوط به مقاله Shape Classification Using the Inner-Distance است .برای تطبیق بین شکل ها و پیداکردن مشابه ترین شکل ها به کار می برند .اگه بخواهم خلاصه ای از ان را بگم : فاصله داخلی به عنوان فاصله کوتاهترین مسیر بین دو نقطه عطفی در شکل نیمرخ هر چیزی برنگ سیاه یا برنگ یکدست(mpeg-7) تعریف می شود .برای محاسبه فاصله داخلی از الگوریتم کوتاهترین مسیر استفاده می کنیم .آن از دومرحله تشکیل شده است:
1. ساخت گراف با نقاط نمونه .اول هر نقطه نمونه به عنوان یک گره در گراف تلقی می شود . سپس، برای هر جفت از نقاط نمونه p1 وp2 ، اگر پاره خط متصل p1 وp2 به طور کامل در داخل شی می افتد ، یک لبه بین p1 وp2 برای گراف با وزنی برابر به فاصله اقلیدسی || p1-p2|| اضافه شده است. در نظر بگیرید که 1)نقاط مرزی همسایه همیشه متصل هستند 2) فاصله داخلی نشان دهنده وجود حفره های بدون استفاده از نقاط نمونه از مرزهای سوراخ، که اجازه می دهد تا الگوریتم برنامه نویسی پویا برای شکل های با حفره استفاده شود. 2. درخواست الگوریتم کوتاه ترین مسیر در گراف دوستان می تونند در مورد عملکرد idsc توضیح بیشتری دهید؟؟یا منبع فارسی بهم معرفی کنند.من این مقاله رامطالعه کردم اما نتونستم درک کنم در نت هم چیزی پیدا نکردم.لطفا راهنمایی ام کنید. از توجهتون پیشاپیش تشکر می کنم. |
دوستان سلام مجدد
لطفا اگر اطلاعاتی دارید راهنمایی ام کنید.ریحانه جان شما دراین رابطه می تونید راهنمایی ام کنید |
سلام
دوستان منتظر پاسخهاتون هستم.نیاز به راهنمایی دارم |
سلام
برنامه اصلی این الگوریتم را قرار دادم .لطفا راهنمایی ام کنید.منظور ازفاصله داخلی دراین الگوریتم چیست یعنی با چه فرمولی بدست می آید ؟بافرمول خط؟؟؟؟لطفا راهنمایی ام کنید . % This code re-implement the IDSC shape matching expeirment on the MPEG7 data set % Experiment settings are follow closely those in % H. Ling and D.W. Jacobs. Shape Classification Using the Inner-Distance, % IEEE Trans on Pattern Anal. and Mach. Intell. (PAMI), 29(2):286-299, 2007. % % For details, please refer to % % Haibin Ling (hbling AT temple.edu) % clear; addpath common_innerdist; ifig = -1; sData ='data/'; sImage ='data/mpeg7/'; %% Parameters ---------------------------------------------- n_class = 70; n_obj = 20; n_objall = n_obj*n_class; n_bull = 2*n_obj; labels = ceil((1:n_objall)/n_obj); num_start = 8; search_step = 1; %-- shape context parameters n_dist = 8; n_theta = 12; bTangent = 1; bSmoothCont = 1; n_contsamp = 150; bSimplecont = 1; thre = .6; %-- FILEs -------------------------------------------- sDisAngSamp = ['_' i2s(n_dist,2) 'x' i2s(n_theta,2) 'x' i2s(n_contsamp,3)]; sCont = [sData 'cont_' i2s(n_contsamp) '.mat']; sSC = [sData 'IDSC' sDisAngSamp '.mat']; sSC1 = [sData 'IDSC' sDisAngSamp '_1.mat']; sCont1 = [sData 'cont_' i2s(n_contsamp) '_1.mat']; fprintf('%s,\n\n', sDisAngSamp); %-- Extract contours ------------------------------------------------------------- if 1 bReflect = 0; [cont_all] = batch_contour_f(sImage,n_class,n_obj,n_contsamp,bR eflect); save(sCont, 'cont_all'); bReflect = 1; [cont_all] = batch_contour_f(sImage,n_class,n_obj,n_contsamp,bR eflect); save(sCont1, 'cont_all'); end %% Compute or Load all the shape context data ------------------------------------ if 1 [SC] = Batch_Comp_IDSC( sImage, sCont, n_class, n_obj, n_dist, n_theta, ... bTangent, bSmoothCont, bSimplecont, 0); [SC1] = Batch_Comp_IDSC( sImage, sCont1, n_class, n_obj, n_dist, n_theta, ... bTangent, bSmoothCont, bSimplecont, 1); save(sSC, 'SC'); save(sSC1, 'SC1'); else load(sSC); load(sSC1); end %% classifying each object by comparing its SC to training objects ----------------- fprintf('Compute distance matrix b/w SC .............\n'); %-Compute distance matrix dismat = zeros(n_objall,n_objall); for i1=1:n_objall t0 = clock; for i2=1:n_objall if i1~=i2 [dis_sc,costmat] = dist_bw_sc_C( SC{i1},SC{i2}, 0); [cvec,cost1] = DPMatching_C(costmat,thre,num_start,search_step); dismat(i1,i2) = cost1; [dis_sc,costmat] = dist_bw_sc_C( SC{i1},SC1{i2}, 0); [cvec,cost2] = DPMatching_C(costmat,thre,num_start,search_step); dismat(i1,i2) = cost2; dismat(i1,i2) = min(cost1,cost2); end end disp(['Round ' num2str(i1) ' of 1400 finished, ' num2str(etime(clock,t0)) 'sec.']); end dismat = min(dismat,dismat'); %% Get final bullseye score bull_score = Compu_Bullscore(dismat, n_class, n_obj, n_bull, labels); fprintf('\nBullseye score = %.2f', 100*bull_score); |
زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۰۹:۵۱ قبل از ظهر ميباشد. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.