کانال تخصصی متلب – Telegram
کانال تخصصی متلب
7.13K subscribers
247 photos
112 videos
1.03K files
162 links
👈 فایل‌های آموزشی متلب در حوزه:
مخابرات،کنترل،پردازش سیگنال،عمران،هوافضا، ریاضی،فیزیک

کانال۷۵۰۰ نفره متلب:
@Matlab_Communication

گروه ۶۵۰۰ نفره متلب:
t.me/joinchat/EHEbrEA6SZ1bAjLdUj7bwA

ادمین‌:
@add_and_removal
تاسیس۹۵/۱۱/۱۱
Download Telegram
🔘مشاهده کدهای توابع متلب با دستور type
در متلب، توابع بسیاری وجود دارد که هر کدام در واقع یک برنامه می‌باشند که یک یا چند ورودی را دریافت می‌کنند و یک یا چند خروجی را بر می‌گردانند. ممکن است نیاز داشته باشیم که کدهای نوشته شده برای یک تابع در متلب را مشاهده کنیم. امکان مشاهده کدهای برخی از توابع داخلی متلب وجود ندارد، اما چنانچه این امکان برای یک تابع متلب فعال باشد، باید از دستور type استفاده کنیم. به مثال زیر توجه کنید:
به عنوان مثال، تابع graphminspantree در متلب، برای حل مسئله minimal spanning tree در یک گراف به کار می‌رود. چنانچه فردی بخواهد کدهای نوشته شده برای این تابع را مشاهده کند باید دستور زیر را اجرا کند:
>>type graphminspantree
سپس کدهای این تابع نمایش داده یشود.

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
Gonzalez.rar
16.4 MB
🔘 کتاب پردازش تصویر گنزالس

🔺Digital Image Processing Rafael C Gonzalez

🔺ویرایش سوم

🔺حجم 16.4 مگابایت(16.4MB)

🔺لطفا" به فایل "توجه "دقت کنید.

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘 لینک‌های تصاویر کتاب "پردازش تصویر گنزالس (ویرایش سوم)" با کیفیت اصلی

👉Book Images (Chapter 1) (19.1 Mbytes)
🔗 http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH01_Original_Images.zip

👉 Book Images (Chapter 2) (8.2 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH02_Original_Images.zip

👉Book Images (Chapter 3) (3.8 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH03_Original_Images.zip

👉 Book Images (Chapter 4) (4.2 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH04_Original_Images.zip

👉 Book Images (Chapter 5) (4.9 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH05_Original_Images.zip

👉 Book Images (Chapter 6) (22.4 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH06_Original_Images.zip

👉Book Images (Chapter 7) (740 Kbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH07_Original_Images.zip

👉 Book Images (Chapter 8) (8.1 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH08_Original_Images.zip

👉Video Clips (Chapter 8) (60 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH08_Original_Video_Clips.zip

👉Book Images (Chapter 9) (2.3 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH09_Original_Images.zip

👉 Book Images (Chapter 10) (7.3 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH10_Original_Images.zip

👉Book Images (Chapter 11) (3.5 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH11_Original_Images.zip

👉 Book Images (Chapter 12) (1.9 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_CH12_Original_Images.zip

👉Problem_Figures (3.1 Mbytes)
🔗http://www.imageprocessingplace.com/downloads_V3/dip3e_downloads/dip3e_book_images/DIP3E_Problem_Figures.zip

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
dipole antenna.rar
101.9 KB
🔘 کد متلب برای انواع آنتن دایپل

🔺بصورت فایل word

🔺منبع: وبسایت نواندیشان

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
Tasavir_e_motevali_dar_matlab.rar
615 KB
🔘 آموزش ایجاد ویدئو از تصاویر متوالی در متلب

🔺فایل ورد و PDF

#پردازش_فیلم

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
Camera_Control.pdf
186.9 KB
🔘 آموزش گام به گام کنترل دوربین در متلب


کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘وارد کردن اطلاعات از Excel به درون متلب و بالعکس

👈 برای وارد کردن اطلاعات از Excel به درون متلب، احتیاج به دستور خاصی نیست و این کار کاملا ساده می‌باشد . مثلا فرض کنید اطلاعاتی را شامل ۴ مقدار در درون نرم افزار Excel بنویسیم. سپس این اطلاعات را به صورت یک فایل با نام numbers.xlsx ذخیره می‌کنیم. اکنون درون نرم افزار متلب، از منوی File گزینه Open را انتخاب می‌کنیم.
در پنجره باز شده باید ابتدا باید گزینه روبروی عبارت Files of type را به All Files تغییر بدهیم و سپس به آدرس حاوی فایل numbers.xlsx رفته و آن را انتخاب کنیم و بر روی گزینه Open کلیک کنیم.
اگر دکمه Finish کلیک کنیم، متلب اطلاعات را به صورت یک ماتریس در Workspace ذخیره خواهد کرد و مثلا در شکل فوق‌، اسم پیش فرض data را برای این ماتریس انتخاب کرده است. اگر اسم دیگری مد نظرتان است باید با موس بر روی کلمه data کلیک کنید و آن را تغییر دهید. ما اسم A را انتخاب کرده و سپس بر روی گزینه Finish کلیک می‌کنیم. مشاهده خواهید کرد که ماتریس A به Workspace افزوده می‌شود. کد زیر را اجرا می‌کنیم تا مقادیر ماتریس A را مشاهده کنیم‌:
نتیجه:

کد:
A =

۱۲
۳۴
مقادیر برابر همان مقادیر وارد شده در نرم افزار Excel می‌باشد.
حال می‌خواهیم یکسری اطلاعات را از متلب وارداکسل کنیم. در پنجره work space روی متغیر مورد نظر دو بار کلیک کنید تا تا اطلاعات در یک پنجره مشابه اکسل دیده شوند.
حال با موس خانه‌هایی که حاوی اطلاعات است را انتخاب کرده و از منوی بالای آن گزینه کپی را بزنید:
یک صفحه ی اکسل جدید باز کرده و با راست کلیک داخل آن گزینه paste را بزنید.
ملاحظه می‌شود داده‌ها وارد اکسل شده‌اند و می‌توانیم روی آن‌ها محاسبات انجام دهیم.


کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘کتاب طراحی و آنالیز سیستم‌های رادار با متلب

#کتاب

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
این کتاب را در قسمت پایین دانلود کنید👇👇
Radar systems analysis and design using matlab.rar
3.9 MB
🔘کتاب طراحی و آنالیز سیستم‌های رادار با متلب

#کتاب

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘خواندن اطلاعات عددی موجود در یک فایل متنی و ذخیره آنها در یک ماتریس با دستور dlmread در متلب

🔸فرض کنید که در یک فایل متنی، اطلاعاتی را به صورت اعداد داریم و قصد داریم که آن اطلاعات عددی را به درون نرم افزار متلب وارد کنیم. برای این منظور می‌توانیم دستور dlmread در متلب را به کار ببریم که اعداد درون فایل متنی را خوانده و آنها را در یک ماتریس ذخیره می‌کند.
دقت شود که فایل متنی باید تنها شامل عدد باشد و وجود کاراکترهای دیگر(مثل حروف الفبا) در آن، باعث می شود که با خطا روبرو شویم.

🔺به مثال زیر توجه کنید :
👈اطلاعات زیر را در یک فایل متنی با نام kelidestan.txt ذخیره می‌کنیم :
6 5 3 8
12 3 56 48 2 7
745 1 36 95
5 3
این فایل متنی باید در کنار برنامه‌ای که در حال اجرای آن هستیم و یا در یکی از مسیرهای تعریف شده برای نرم افزار متلب قرار بگیرد (تا نرم افزار متلب بتواند آن را بیابد.).
سپس کدهای متلب (MATLAB) زیر را اجرا می‌کنیم :
clear all
close all
clc
A = dlmread('kelidestan.txt')
سه خط اول کدها برای عم تداخل برنامه فعلی با برنامه های قبلی اجرا شده می‌باشد.
✔️نتیجه :
اطلاعات عددی فایل متنی خوانده شده و در یک ماتریس با نام A ذخیره می‌گردند:

A =
6 5 3 8 0 0
12 3 56 48 2 7
745 1 36 95 0 0
5 3 0 0 0 0
مشاهده می‌کنید که در سطرهایی که تعداد اعداد از بقیه سطرها کمتر بوده است، به جای عددهایی که وجود نداشته، عدد صفر در نظر گرفته شده است.

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘خواندن اطلاعات یک خط مشخص از یک فایل متنی در متلب.

🔸زمانی که مشغول خواندن اطلاعات یک فایل متنی در متلب هستیم ممکن است که بخواهیم تنها یک یا چند خط مشخص از آن فایل متنی خوانده شود. مثلا فرض کنید که بخواهیم تنها خط شماره 3 از فایل متنی خوانده شود. در این مبحث، این مورد را با یک مثال شرح می‌دهیم.
🔺مثال
👈فرض کنید یک فایل متنی با نام example.txt داریم که اطلاعات زیر درون آن نوشته شده است:
Line number 1
Line number 2
Line number 3
Line number 4
اکنون می‌خواهیم که اطلاعات موجود در خط شماره 3 آن را توسط متلب بخوانیم (اطلاعات را در متغیری ذخیره کنیم)، برای این منظور، کدهای زیر را می‌نویسیم:

clear all
close all
clc

fid=fopen('example.txt');
A=textscan(fid, '%s', 'delimiter', '\n');
Line_Number=3;
Line_Information=A{1}{Line_Number}

ابتدا فایل example.txt را با دستور fopen باز کرده‌ایم، سپس کل اطلاعات آن را با دستور textscan به صورت یک آرایه سلولی (cell array) در متلب ذخیره می‌کنیم. همان طور که مشاهده می‌کنید، درون پرانتز دستور textscan ، مقدار delimiter را برابر \n تعیین کرده‌ایم، delimiter همان جداکننده است که باعث می‌شود که بخش های مختلف آرایه بر اساس علامتی که تعیین می کنیم، مشخص شود. علامت های \n برای رفتن به خط جدید به کار می رود، بنابراین وقتی علامت های \n را به عنوان جداکننده تعیین می‌کنیم، باعث می‌شود که هر خط از فایل متنی در یک بخش از آرایه سلولی قرار داده شود.
شماره خط مورد نظرمان را در متغیر Line_Number ذخیره کرده ایم و در آخر، اطلاعات خط سوم از فایل متنی در متغیر Line_Information ذخیره خواهد شد.

✔️نتیجه :

Line_Information =

Line number 3

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘تعیین مقدار زمان اجرای محاسبات در متلب

🔸برای تعیین زمان اجرای برنامه و یا بخشی از برنامه، از دستورهای tic و toc استفاده می‌شود. همان‌طور که مشخص است، نام این دو دستور از(تیک تاک) ساعت گرفته شده است. این دستورات یکی از مهمترین دستورات متلب می‌باشند. قبل از هر چیز، اهمیت این دستورات را برای شما شرح می‌دهیم:
معمولا در پروژه های پیچیده، زمان اجرای برنامه بسیار طولانی می‌شود. در چنین مواقعی برنامه نویس ممکن است که کنجکاو باشد که یکی از موارد زیر را بداند:
1- کدام بخش برنامه است که بیشترین زمان را به خود اختصاص داده است. با دانستن این موضوع، برنامه‌نویس سعی می‌کند که کدهای آن بخش از برنامه را بهینه‌سازی کند تا در زمان صرفه جویی شود.
2- ممکن است بخواهیم بدانیم که زمان اجرای برنامه چقدر است، اما نمی خواهیم که مجبور باشیم همین طور بنشینیم و ببینیم چه زمانی برنامه پایان می‌یابد. مثلا شب قبل از خواب، برنامه را اجرا می کنید و صبح که بیدار شوید می‌توانید در پنجره Command ، میزان زمان اجرای برنامه را ببینید.
3- در بسیاری از برنامه‌ها، حلقه های for هستند که زمان زیادی می‌گیرند. فرض کنید حلقه‌ای داریم که پارامتر آن از 1 تا 1000 می‌باشد. با قرار دادن دستور در ابتدا و انتهای حلقه(ابتدا و انتهای درون حلقه) می‌توانیم زمان یک بار اجرا را محاسبه کنیم و سپس آن را ضرب در 1000 کنیم، چنانچه زمان بیش از حد زیاد باشد، می‌توانیم همین حالا آن را متوقف کنیم(با گرفتن کلید Ctrl و فشار دادن کلید C از کیبورد)، به جای آن که پس از اجرای نیمی از برنامه، به این نتیجه برسیم.

🔺نحوه استفاده از دستورهای tic و toc را در مثال زیر شرح داده‌ایم:
👈مثال

tic
A=ones(100,100);
toc
✔️نتیجه :

Elapsed time is 0.000064 seconds.
دستور (100,100)A=ones ، ماتریسی با 100 ردیف و 100 ستون می‌سازد که همه مقادیر آن برابر 1 می‌باشد. همان‌طور که مشاهده می کنید ساخت این ماتریس، 0.000064 ثانیه طول کشیده است. زیاد به این عدد کوچک خیره نشوید، زیرا ممکن است روزی آرزویتان این باشد که برنامه‌ای که دارید در کمتر از 1 روز اجرا شود.

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘نمایش تاریخ و ساعت در متلب

🔸معمولا در برنامه‌های کاربردی که با متلب می‌نویسیم، پیش می‌آید که بخواهیم روز و یا ساعت اجرای برنامه را بدانیم. مثلا اگر بخواهیم با متلب یک برنامه جعبه لایتنر بنویسیم، باید بدانیم که هر فلش کارت، آخرین بار در چه روزی مشاهده شده است. متلب برای اینگونه موارد دستوراتی را در نظر گرفته است که در ادامه آنها را توضیح می‌دهیم:
👈دستور clock :
دستور clock ، مقدار سال، ماه، روز، ساعت، دقیقه و ثانیه را برای لحظه فعلی به صورت یک بردار نشان می‌دهد. ترتیب این مقادیر در بردار خروجی به صورت زیر می‌باشد:
[year month day hour minute seconds]
🔺مثال

A=clock
✔️نتیجه :

A =
1.0e+003 *
2.0120 0.0050 0.0270 0.0090 0.0170 0.0264
👈در نتایج فوق همان‌طور که می‌بینید، قبل از خط نمایش مقادیر عناصر بردار، عبارت 1.0e+003 * نوشته شده است که معنای آن این است که مقادیری که نمایش داده شده‌اند، بر 1000 تقسیم شده‌اند تا نمایش آنها راحت تر باشد، بنابراین مثلا برای دانستن مقدار سال باید عدد 2.012 را در 1000 ضرب کنیم که نتیجه می‌شود سال 2012 .
👈دستور date :
این دستور تاریخ امروز را به صورت یک رشته نمایش می‌دهد. به مثال زیر توجه کنید:

🔺مثال

date
✔️نتیجه :

ans =
27-May-2012
👈دستور today :
این دستور تعداد روزهای گذشته از تقویم میلادی تا به امروز را به صورت یک عدد محاسبه می‌کند.

🔺مثال
👈می‌خواهیم بدانیم که امروز چندمین روز از تقویم میلادی می‌باشد. می‌نویسیم:


today
✔️نتیجه :

ans =
735016
در واقع عدد فوق، تعداد تمامی روزهایی می‌باشد که از تقویم میلادی گذشته است. مثلا امروز تاریخ 2012/05/27 میلادی می‌باشد، بنابراین عدد فوق باید به طور تقریبی برابر حاصل اجرای دستور زیر باشد:
(2011*365)+(5*30)+27
✔️نتیجه :

ans =
734192

همان طور که مشاهده می‌کنید، عبارت بالا تنها یک تقریب است که عملکرد دستور today را متوجه شوید، اما دستور today ، عددی را که بر می‌گرداند، کاملا دقیق است.

👈دستور datenum :
قبلا شرح دادیم که دستور today ، عدد مربوط به تعداد روزهای گذشته از تقویم میلادی تا به امروز را حساب می‌کند. اما ممکن است بخواهیم تعداد روزها را برای یک تاریخ مشخص که در ذهن داریم، محاسبه کنیم. برای این منظور می‌توانیم از دستور datenum استفاده کنیم. این دستور مخفف date number می‌باشد. در دستور datenum ، تاریخ مد نظرمان را به شکل‌های مختلفی می توانیم مشخص کنیم که عبارتند از:

🔸شکل اول: دریافت عدد روز و ماه و سال به‌صورت جداگانه

🔺مثال:

A=datenum(2012, 05, 27)
همان‌طور که مشاهده می‌کنید، ابتدا باید سال، بعد ماه و در آخر، روز را برای دستور datenum مشخص کنیم.

✔️نتیجه :

A =
735016
🔸شکل دوم‌: به صورت کاملا عددی(مثل: 27.05.2012)

🔺مثال

A=datenum('27.05.2012', 'dd.mm.yyyy')
✔️نتیجه :

A =
735016

👈دقت شود که با عبارت 'dd.mm.yyyy' در واقع ترتیب به کار رفته برای روز، ماه و سال را مشخص کرده‌ایم. d حرف اول کلمه day و m حرف اول کلمه month و y حرف اول کلمه year می‌باشد.
🔸شکل سوم: ماه به صورت نام(مثل : 27-May-2012)

🔺مثال

A=datenum('27-May-2012', 'dd-mmm-yy')
✔️نتیجه :

A =
735016

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘کد نمایش انیمیشن از یک کره(sphere) در متلب

👈کد متلب:

clear all
close all
clc
% Draw a sphere
sphere
% Make the current axis box square in size
axis('square')

% Define noscript and labels for reference
noscript('Rotation of a sphere...')
xlabel('x'); ylabel('y'); zlabel('z')

% Modify azimuth (horizontal rotation) and update drawing
for az = -50 : .2 : 30
view(az, 40)
drawnow
end

% Modify elevation (vertical rotation) and update drawing
for el = 40 : -.2 : -30
view(30, el)
drawnow
end

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
👆👆👆👆خروجی قطعه کد بالا(نمایش انیمیشن از یک کُره)


کانال تخصصی متلب:👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘کد نمایش انیمیشن از سهمی (paraboloid)

👈کد متلب :

clear all
close all
clc

% Define paraboloid
X = -2 : .1 : 2; Y = X;
[x, y] = meshgrid(X, Y);
z = .5 * (x.^2 + y.^2);

% Draw 3D figure, keep track of its handle
h = surf(x,y,z);
% Keep axes constant
axis([-2 2 -2 2 0 20])

% Define noscript and labels for reference
xlabel('x'); ylabel('y'); zlabel('z')

% Stretch paraboloid and show updates
for i = 1 : .1 : 5;
set(h, 'xdata', x, 'ydata', y, 'zdata', i*z)
drawnow
end

% Modify azimuth (horizontal rotation) and update drawing
for az = -37.5 : .5 : 30
view(az, 30)
drawnow
end

کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
👆👆👆👆خروجی قطعه کد بالا(نمایش انیمیشن از سهمی)


کانال تخصصی متلب:👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication
🔘 اتسو یک روش آستانه‌گذاری خودکار است که با توجه به هیستوگرام تصویر یک مقدار آستانه را تولید می‌کند. در این قسمت تصویر با استفاده از این روش آستانه‌گذاری شده و به یک تصویر باینری تبدیل شده است که تنها پیکسل‌های سفید و سیاه دارد. همانطور که مشاهده می‌شود، سکه‌ها با دقت نسبتا خوبی از پس زمینه جدا شده‌اند.
clc
close all
clear all
image=imread('coins.png');
figure,imshow(image),noscript('image')
TH = graythresh(image);
TH = TH * 255;
mask = image > TH ;
figure,imshow(mask),noscript('segmented image')


لینک کانال‌:👇👇👇👇👇
@Matlab_Communication

تصاویر خروجی و تصویر مورد استفادهء برنامه در قسمت پایین قابل مشاهده می‌باشد. لطفاً جهت استفاده، تصویر اصلی را دانلود کنید👇👇👇👇👇👇👇
Media is too big
VIEW IN TELEGRAM
🔘نحوه کار با سایت فیزیونت

🔺 نحوه دسترسی به داده های سایت فیزیونت
🔺 نحوه کار با GUI سایت فیزیونت
🔺 نحوه دانلود داده به فرمت .mat
👈مدرس: محمد نوری زاده چرلو
کانال تخصصی متلب:👇👇👇👇
•┄✺ೋ🌹‌✺┄•
@matlab_communication