![]() |
برنامه الگوريتم K_means با نرم افزار مطلب
1(ها)ضميمه
سلام دوستان
كسي مي تواند بگويد اين تابعي كه من براي الگورريتم K_means با نرم افزار مطلب نوشته ام كجا ش مورد دارد؟ خواهش مي كنم اگر كسي مي داند مرا راهنمايي كند. function [dx,ct]= h_kmeans(x,N) [m,n]=size(x); ct=zeros(m,n); ct=x(ceil(rand(m,1)*m),:); D=zeros(m,n); dx=0; while any(ct~=dx) ct=dx; for i=1:N q=zeros(m,1); for j=1:N q=q+(x(:,j)-ct(i,j)).^2; end D(:,j)=dx; end [z,dx]=min(D,[],2); for i=1:m idx=mean(x(dx==i,:)); end end return end |
سلام
در اینجا ماتریس x ماتریسی است که شما می خواهید کلاستر بندی کنید درسته؟ آیا سطرها ابعاد هر عنصر را تشکیل می دهند یا ستون ها؟ بعدا اگر N برابر تعداد کلاستر ها است چرا تعداد مرکز دسته ها m تا انتخاب شده است؟؟ |
سلام ، خيلي ممنونم از توجه شما:63:
بله x ماتريسي است كه كلاستر بندي مي شود. سطرها ابعاد عنصر را تشكيل مي دهند. و چر ا كه من m را انتخاب كردم علتش اين بود كه من n را گذاشته بودم ولي از ابعاد ماتريسها قسمت محاسبه فاصله ها نرم افزار خطا مي گرفت. به همين علت من خيلي ابعاد ماتريس را دستكاري كردم تا اينكه سر (m,1)جواب داد والآن سر خط 14 خطا مي گيرد.:confused: ??? Subscripted assignment dimension mismatch. Error in ==> h_kmeans at 14 D(:,j)=q; Error in ==> mean2 at 9 [dx,ct]=h_kmeans(x,2); و برنامه اي كه در زير قرار داده ام برنامه اي است كه با آن تابع فراخواني مي شود: A=imread('rice.png'); b=im2double(A); [ca,ch,cv,cd]=dwt2(b,'bior3.5'); im=cat(3,ca,cd); x=im2double(im); [dx,ct]=h_kmeans(x,2); pixel_labels=reshape(dx,133,133); figure(1); subplot(2,2,1); imshow(pixel_labels,[]); subplot(2,2,2); imshow(A); |
سلام من هم همین مشکل را دارم ولی در روشsubtractive -fuzzy c-meansنمی تنم داه ها و ماتریس را وارد و تعریف کنم
|
زمان محلي شما با تنظيم 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.