سلام
من این کد رو برای حذف کردن درصدی از ماتریس داده سه بعدی نوشتم ولی اجرا نمیشه . میشه کمک کنید .
من یک شرط while تعیین کردم برای درصدگیری از ماتریس ، البته چون ماتریس سه بعدی است ، یک ماتریس one تعریف کردم که همزمان با صفر شدن ستون های ماتریس اصلی سه بعدی ، همان درایه در ماتریس one صفر میشه و درصدگیری روی ماتریس one اعمال میشه . درایه ها به صورت تصادفی با دستور randi تعیین میشن .
ولی با اجرای برنامه خروجی percent رو برابر صفر نمایش میده و انگار اصلا حلقه while رو نمیخونه . داده ها در سایت فورشیر آپلود و در پیوست هستند.
فایل با پسوند mat. در سایت فورشیر آپلود شده است .
http://www.4shared.com/file/bmNmmHiE/3d_3c_synth.html
من این کد رو برای حذف کردن درصدی از ماتریس داده سه بعدی نوشتم ولی اجرا نمیشه . میشه کمک کنید .
من یک شرط while تعیین کردم برای درصدگیری از ماتریس ، البته چون ماتریس سه بعدی است ، یک ماتریس one تعریف کردم که همزمان با صفر شدن ستون های ماتریس اصلی سه بعدی ، همان درایه در ماتریس one صفر میشه و درصدگیری روی ماتریس one اعمال میشه . درایه ها به صورت تصادفی با دستور randi تعیین میشن .
ولی با اجرای برنامه خروجی percent رو برابر صفر نمایش میده و انگار اصلا حلقه while رو نمیخونه . داده ها در سایت فورشیر آپلود و در پیوست هستند.
کد:
m=d_x_true;
m_size=size(m);
% Eliminate Random Traces
delete=30; % in percent
number_zero=(m_size(2)*m_size(3)*delete)/100;
one=ones(m_size(2),m_size(3));
percent_eliminate=((numel(one)-nnz(one))/(numel(one))*100);
while (percent_eliminate == delete)
random_x= randi([1,121],1,1);
random_y=randi([1,121],1,1);
m_noise(:,random_x,random_y)=0;
one(random_x,random_y)=0;
percent_eliminate=((numel(one)-nnz(one))/(numel(one))*100);
end
percent_eliminate
فایل با پسوند mat. در سایت فورشیر آپلود شده است .
http://www.4shared.com/file/bmNmmHiE/3d_3c_synth.html
دوست دارم زندگی رو . . .