matlabkhooneh

تکالیف متلب MATLAB - پردازش سیگنال ( کد Mat0103 )

1 - برنامه ای بنویسید که فرکانس سیگنال ورودی مدار زیر را دریافت کند و به کمک حلقه for خروجی را در هر لحظه حساب کند و در نهایت سیگنال خروجی را رسم کند؟

ورودی را به صورت 1000sin(wt) در نظر بگیرید.

ابتدا t را بین 0 تا 100 با گام های 0.01 تعریف کنید، سپس w را به عنوان ورودی دریافت و سیگنال ورودی را تولید کنید. سپس به کمک یک حلقه for که تعداد تکرارهایش با بعد t برابر است خروجی را برای لحظه بعد بدست آورید.

2 - ریشه معادله 3s3+5s2-1=0 را حساب کنید.

3 - سه ماتریس تصادفی 3*3 و 3*1 و1*3 تشکیل داده و به کمک این سه ماتریس و ماتریس یکه واحد به عنوان بلوک چهارم ، یک ماتریس 4*4 ساخته و A بنامید. ماتریس B را به صورت [4;3;2;1]  تعریف کنید و حاصل درستگاه فوق را بیابید. در صورتی که دستگاه شما جواب ندارد علت را بیان کنید.

4 - تابع sinc را در بازه 7 تا 7- رسم کنید. این تابع در چه نقاطی صفر است؟

5 - یک تابع رندوم 10000*1 با مقادیر مثبت و منفی درست کرده و آن را رسم کنید.

6 - تابعی بنویسید که توابع tan(x) و cos(x) را با گرفتن x و N با استفاده از سری تیلور محاسبه کند.

7 - تابعی بنویسید که بزرگترین درایه ( همراه با شماره سطر و ستون ) و متوسط درایه های مارتیس را محاسبه کند.

8 - برنامه ای بنویسید که عدد سه رقمی دلخواهی را گرفته و جای ارقام اول و سوم را با هم عوض کند.

9 - سیگنال های زیر را به کمک دستور stem رسم کنید.(دقت کنید که سیگنال های پله و ضربه واحد باید توسط خودتان پیاده سازی شود و سیگنال ها زمان گسسته هستند)

\[x(n)=u(n+3)-u(n-3)+2\delta (n+3)+3\delta(n+2)\]

\[y(n)=2x(n)-x(2n)\]

\[z(n)=cos(2\pi n).x(n)\]

10 - اگر x(n)=u(n)-u(n-10) یک ورودی برای سیستم LTI با پاسخ ضربه h(n)=(0.9)nu(n) باشد.

الف) ورودی و پاسخ ضربه را رسم کنید.

ب) با کمک مطالبی که در کالس درس آموختید سیگنال خروجی را روی کاغذ بدست آورید و رسم کنید.

ج) با کمک تابع conv متلب خروجی را بدست آورید و با پاسخ خود در قسمت ب مقایسه کنید.

(سیگنال ها زمان گسسته هستند)

11 - الف) تابعی بنویسید و به کمک آن کانوولوشن دو سیگنال گسسته را در زمان محاسبه کنید. (از تابع کانوولوشن متلب استفاده نکنید)

ب) تابع خود را بر روی دو سیگنال دلخواه اعمال کنید و خروجی را بدست بیاوردید ، سپس هر سه سیگنال(دو سیگنال ورودی و یک خروجی) را به کمک دستور subplot ترسیم کنید.

ج) صحت پاسخ خود را به کمک تابع conv متلب بررسی کنید.

12 - با کمک تابع repmat و دستور stem سیگنال زیر را بصورت متناوب تا ۳ دوره تناوب ترسیم کنید

\[x[n]=sin(2\pi n)(u[n]-u[n-10])\]

13 - اندازه و فاز سیگنال زیر را بدست آورید و با استفاده از subplot رسم کنید.

\[X(w)=e^{3jw}+e^{5jw} \;\;\;\;\; for (-10\pi \leq w \leq 10\pi)\]

14 - پاسخ ضربه و پاسخ پله یک سیستم انتگرال گیر را بدست آورده و نمایش دهید.

15 - سه ثانیه صدای خود را ضبط کنید و در حوزه ی زمان و فرکانس نمایش دهید.

16 - حاصل کانولوشن دو سیگنال زیر را بدست آورده و نماش دهید.

\[cos(2 \pi t) \;\;\;\;\; \delta (t)\]

17 - برنامه ای بنویسید که ابتدا 3 عدد a , b, c را از ورودی دریافت کند. سپس max و min آن ها را یپدا کرده و یک ماتریس به ابعاد (max , 3 ) ساخته و سطر a ام را اعداد فرد بزرگتر از a و سطر b ام را اعداد تصادفی بین min و  max  و سطر سوم را اعداد بین min و  max با فاصله یکسان قرار دهد.

18 - برنامه ای بنویسید که مقادیر xmin  و  xmax را از کاربر بگیرد و نمودارهای x2 و x3 و x4 را ابتدا در یک نمودار با هم ئو در مرحله بعد در 3 نودار مختلف در یک تصویر نمایش دهد. همچنین مقدار max و min هر نمودار را با دایره علامتگذاری کند.

19 - برنامه ای بنویسید و در یک تصویر دستورهای plot3 , mesh , surf , ezsurf را برای معادله دلخواه با هم مقایسه کنید.

20 - تبدیل فوریه یک سیگنال پیوسته و یک سیگنال گسسته را بدست آورده و رسم کنید.

 

21 - برنامه ای در MATLAB بنویسید که یک عدد اعشاری را از ورودی بگیرد و بخش صحیح و اعشاری را با هم عوض کند و در خروجی نمایش دهد. ( به صورت عددی بدون استفاده از توابع مخصوص رشته ها )

\[ 123.873 \to 873.123\]

22 - تمرین قبل را با استفاده از توابع مخصوص رشته ها و کاراکترها را نیز پیاده سازی کنید.

23 - برنامه ای بنویسید که دو بردار A و B را دریافت کند و عناصر مشترک آن ها را چاپ کند.

24 - با در نظر گرفتن ماتریس های A و B برنامه ای بنویسید که دستگاه معادلات AATX=B را حل کند.

\[A=\begin{bmatrix} 1& 2 & 3 & 4 \\ 2& 3 & 4 & 1 \\ 3& 4 & 1 &2 \\ 4& 1& 2& 3 \\\end{bmatrix} \;\;\;\;\; B=\begin{bmatrix}3 \\ 0\\ 1\\4\end{bmatrix}\]

25 - دستگاه معادلات زیر را در نظر بگیرید

\[\left\{\begin{matrix} 10x-y+2z=6\\ -x+11y-z+3w=25\\ 2x-y+10z-w=-11\\3y-z+8w=15\end{matrix}\right.\]

برنامه ای بنویسید که این دستگاه را به دلخواه توسط یکی از روش های حذفی ژاکوبی یا گاوس سایدل و با 3 مرتبه تکرار حل کند. مقدار اولیه را بردار صفر در نظر بگیرید.

26 - برنامه ای بنویسٌید که با گرفتن مقدار n را  از کاربر، دستگاه معادلات غیر خطی زیر را به روش نیوتون رافسون با تقریب اولیه و تعداد n  تکرار محاسبه کند.

\[\left\{\begin{matrix} ln(x^{2}+y^{2})+y=1\\\sqrt{x}+xy=0\end{matrix}\right. \;\;\;\;\; (x_{0},y_{0})=(2.4 , -0.6) \]

27 - با استفاده از حلقه switch case برنامه ای بنویسید که از ورودی مقدار طول و واحد آن را بر حسب سانتی متر ، فوت و یا اینچ بگیرد و از ورودی بپرسد که این طول را به چه واحدی تغییر دهد، سپس مقدار طول را بر حسب واحد خواسته شده تغییر دهد.

28 - سوال های زیر فقط با استفاده از if و while انجام شوند ( اجازه استفاده از دستور های توان ، باقیمانده و ... را ندارید )

برنامه ای بنویسید که یک عدد را بگیرد و مربع آن را چاپ کند؟

برنامه ای بنویسید که عددی را از ورودی دریافت کند سپس مشخص کند عدد زوج است یا فرد؟

برنامه ای بنویسید که یک عدد را از ورودی دریافت کند و قدر مطلق آن را چاپ کند؟

برنامه ای بنویسید که یک عدد از ورودی بگیرد و فاکتوریل آن را حساب کند؟

برنامه ای بنویسید که مجموع اعداد بخش پذیر بر سه که کوچکتر از 1000 هستند را انجام دهد؟

29 - سوال های زیر  فقط با استفاده از if و for انجام شوند ( اجازه استفاده از دستور های توان ، باقیمانده و ... را ندارید )

برنامه ای بنویسید که یک عدد را بگیرد و مربع آن را چاپ کند؟

برنامه ای بنویسید که عددی را از ورودی دریافت کند سپس مشخص کند عدد زوج است یا فرد؟

برنامه ای بنویسید که یک عدد را از ورودی دریافت کند و قدر مطلق آن را چاپ کند؟

برنامه ای بنویسید که یک عدد از ورودی بگیرد و فاکتوریل آن را حساب کند؟

برنامه ای بنویسید که مجموع اعداد بخش پذیر بر سه که کوچکتر از 1000 هستند را انجام دهد؟

30 - برنامه ای بنویسید که یک عدد در مبنای 2 دریافت کند و آن را به مبنای 10 ببرد.

31 - برنامه ای بنویسید که یک عدد در مبنای 2 دریافت کند و مستقیما به مبنای 16 ببرد. ( بدون استفاده از مبنای 10 )

32 - زیربرنامه ای بنویسید که به عنوان ورودی یک ماتریس را گرفته و درصورتی که آن ماتریس مربعی باید دترمینان ماتریس ، معکوس ماتریس و مقادیر ویژه آن را محاسبه کرده و به عنوان خروجی به برنامه اصلی بازگرداند. در صورتی که ماتریس مربعی نباشد این محاسبات را انجام ندهد و تنها ابعاد ماتریس را بازگرداند.

33 - برنامه ای بنوسید که عددی از ورودی دریافت کرده، سپس سری فیبوناچی قبل از آنرا تولید نماید

34 - برنامه ای را بنویسید که یک عدد مثبت را خوانده و همه مقسوم علیه های آن را نمایش دهد

35 - برنامه ای بنویسید که یک عدد را خوانده و با نمایش پیغام مناسب اول بودن آن را تعیین نماید. نکته: عدد اول عددی طبیعی بزرگتر از 1 است که بر هیچ عددی به جز خود و 1 بخشپذیر نباشد. تنها استثنا عدد 1 است که جزو این اعداد قرار نمیگیرد.

36 - برنامه ای بنویسید که عددی را از ورودی دریافت کرده سپس معکوس (یا واران) عدد دریافتی را نمایش دهد.

مثال: ورودی: 2549 - خروجی: 9452

37 - برنامه ای بنویسید که عدد صحیح n را دریافت کرده و حاصل جمع n جمله ی اول سری زیر را نمایش دهد

\[S=\frac{1}{1!}+\frac{2}{2!}+\frac{3}{3!}+...++\frac{N}{N!}\]

38 - عملکرد هر یک از دستورات زیر را کامل شرح دهید.

clc

repmat

ceil

eye

39 - با فرض A=1:16  متغییر A را به صورت مستقیم ( از 1 تا 16 ) و معکوس ( از 16 تا 1 ) تعریف کرده و متغیری که به صورت مستقیم تعریف و در قالب یک ماتریس با سطر و ستون دلخواه نمایش داده شود.

40 - ماتریس زیر را فراخوانی کنید.

\[\begin{bmatrix} 3& 4 & 1 \\ 5& 8& 6\\ 2& 10 & 9 \\\end{bmatrix}\]

الف ) سطر سوم و ستون دوم را فراخوانی کنید.

ب ) سطر اول و ستون آخر را فراخوانی کنید

ج ) کل ستون اول را فراخوانی کنید.

د ) کل سطر دوم را فراخوانی کنید.

ه ) کل ماتریس را در 4 سطر و 5 ستون تکرار کنید.

41 - ماتریس زیر را در نظر بگیرید.

\[\begin{bmatrix} 6& 7 & 5 \\ 5& 2& 3\\ 1& 10 & 4 \\\end{bmatrix}\]

الف ) ابتدا ماتریس را تعریف کنید.

ب ) عناصر قطر اصلی ماتریس را صفر کنید.

ج ) عناصر قطر اصلی را فراخوانی کنید.

د ) عناصر قطر اصلی را جمع کنید.

ه ) کل درایه های ماتریس را یکبار جمع و یکبار ضرب کنید.

42 - برنامه ای بنویسید که عدد صحیح و مثبت N را دریافت کرده و اولین عدد اول بزرگتر از N را نمایش دهد.

43 - برنامه ای بنویسید که معادلات زیر را در یک پنجره به صورت زیر نمایش دهد.

\[\left\{\begin{matrix} y=5x^{2}+2x\\ y=log10(x)\\e^{-x/2}\end{matrix}\right.\]

44 -

45 -

46 -

47 -

48 -

49 -

50 -

| جهت سفارش پروژه ، تکلیف و آموزش سیمولینک Simulink  و  متلب Matlab لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

حروف الفبا به صورت ماتریسی ( متلب Mat0101 )

1 - نام و نام خانوادگی خود را با استفاده از کاراکترها در متلب بسازید. ( برای حروف ماتریس مختصات درست کنید و بر اساس 0 و 1 بودن کاراکتر مناسب را نمایش دهید. )

2 - تابعی بنویسید که یک ماتریس از کاربر گرفته و محل سطر و ستون بزرگترین عدد آن را اعلام کند.

3 - تابعی بنویسید که بر اساس عدد ورودی به همان اندازه ستاره در همان تعداد سطر چاپ کند.

4 - کدی بنویسید که یک عکس رنگی را از داخل فایل هایتان بخواند و سیاه سفید کرده و نمایش دهد.

5 - برنامه ای بنویسید که دما را بر حسب درجه سانتی گراد از کاربر دریافت کرده و آن را به فارنهایت تبدیل کند.

6 - برنامه ای بنویسید که شعاع دایره را دریافت کرده و محیط و مساحت آن را محاسبه کند.

7 - برنامه ای بنویسید که سه عدد دلخواه را به صورت تصادفی از کاربر دریافت کرده و آن ها را به صورت مرتب شده از کوچک به بزرگ ارائه دهد.

8 - برنامه ای بنویسید که عدد M را از کاربر دریافت کرده و اعداد اول کوچکتر از M را چاپ کند.

9 - برنامه ای بنویسید که یک عدد در مبنای 10 گرفته و به مبنای 2 تبدیل کند.

10 - ابتدا با استفاده از نرم افزار متلب MATLAB چهار تابع داده شده را ترسیم نموده و تصاویر این توابع را شامل محور عمودی و افقی و جعبه legend از متلب export کرده و در فایل گزارش خود وارد کنید. سپس با محاسبه انتگرال توسط متلب انرژی و توان هر سیگنال را تعیین کنید. روش محاسبه انتگرال و کدهای مربوطه را نیز در فایل گزارش توضیح دهید.

دقت کنید تنها متغیر مستقل t می باشد و بقیه پارامترها را به صورت دلخواه تعیین کنید.

11 - یک تابع بنویسید که مختصات سه نقطه را در صفحه x-y را دریافت نموده و برای مثلث تشکیل شده بین این نقاط ، مقدار مساحت و مختصات مرکز سطح را محاسبه کند.

12 - به عنوان یک تمرین ساده ، یک تابع بنویسید که تبدیل واحد انجام دهد. یک بار برای تبدیل واحد دما از فارنهایت به سلسیوس و بار دیگر برای واحد طول از فوت به متر.

13 - برنامه ای بنویسید که دو عدد را از کاربر دریافت کرده و سپس عدد سوم را دریافت کرده و بررسی کند که آیا این عدد در بازه بین دو عدد قبلی است یا بزرگتر از عدد بزرگتر یا کوچکتر از عدد کوچکتر است.

14 - برنامه ای‌ بنویسید‌ که‌ اعدادی را‌ از‌ کاربر‌ گرفته‌ و‌ میانگین‌ اعداد‌ برگتر‌ یا‌ مساوی‌ 10 را‌ حساب‌ کند برنامه‌ با‌ وارد‌ کردن‌ عدد‌ منفی‌ توسط‌ کاربر‌ پایان‌ می یابد.

15 - برنامه ای‌ بنویسید‌ که‌ عددی‌ را‌ از‌ کاربر‌ گرفته‌ و‌ اول‌ بودن‌ یا‌ نبودن‌ آن‌ را‌ اعلام‌ کند.

16 - برنامه‌ای‌ بنویسید‌ که‌ شکل‌ زیر‌ را‌ ترسیم‌ کند.

17 -

18 -

19 - برنامه ای به صورت m  فایل بنویسید که نمرات سه درس ریاضی ( 3 واحد ) ، فیزیک ( 3 واحد ) و شیمی ( 2واحد ) را برای تعداد n دانشجو به صورت ماتریس n*3 از کاربر دریافت کند و موارد زیر را محاسبه کند. در نوشتن این برنامه فقط از دستوراتی که تا الان گفته شده می توانید استفاده کنید. استفاده از دستورات شرطی و حلقه ها که موضوع بخش های بعدی درس هستند مجاز نیست.

20 - برنامه ای بنویسیدکه یک عدد را گرفته سپس میانگین ارقام آن را چاپ کند.

21 - برنامه ای بنویسیدکه یک عدد را گرفته سپس میانگین ارقام  زوج آن را چاپ کند.

22 - برنامه ای بنویسیدکه یک عدد را گرفته سپس میانگین ارقام فرد آن را چاپ کند.

23 - برنامه ای بنویسیدکه یک عدد را گرفته سپس مقلوب آن را چاپ کند.

24 - برنامه ای بنویسیدکه یک عدد را گرفته سپس مقلوب اعداد فرد آن را چاپ کند.

25 - برنامه ای بنویسیدکه یک عدد را گرفته سپس مقلوب اعداد زوج آن را چاپ کند.

26 - برنامه ای بنویسید که 2 عدد را گرفته سپس بزرگترین مقسوم علیه مشترک آن ها را چاپ کند.

27 - برنامه ای بنویسید که 2 عدد را گرفته سپس کوچکترین مضرب مشترک آن ها را چاپ کند.

28 - برنامه ای بنویسید که یک عدد را گرفته و آن را به عوامل اول تجزیه کند.

29 - برنامه ای بنویسید که 20 امین عدد اول سری فیبوناچی را چاپ کند.

30 - برنامه ای بنویسید که جملاتی از سری فیبوناچی را که اول هستند تا 50 جمله چاپ کند.

31 - برنامه ای بنویسید که یک عدد را گرفته سپس تشخیص دهد که در سری فیبوناچی وجود دارد یا خیر

32 - برنامه ای بنویسید 100 عدد را گرفته و تعداد اعدادی که در سری فیبوناچی وجود دارند را چاپ کند.

33 - برنامه ای بنویسید 100 عدد را گرفته سپس حاصل جمع کل ارقام 100 عدد را چاپ کند.

34 - برنامه ای بنویسید 100 عدد را گرفته سپس تعداد کل ارقام 100 عدد را چاپ کند.

35 -برنامه ای بنویسید 100 عدد را گرفته سپس میانگین ارقام آن ها را چاپ کند.

36 - برنامه ای بنویسید 100 عدد را گرفته سپس تعداد اعدادی را که با مقلوبشان برابرند را چاپ کند.

37 - برنامه ای بنویسید که یک عدد را گرفته سپس صفرهای آن را حذف کند.

38 - برنامه ای بنویسید که یک عدد را گرفته سپس تعداد مقسوم علیه های اول آن را چاپ کند.

39 - برنامه ای بنویسید که یک عدد را گرفته سپس مجموع مقسوم علیه های اول آن را چاپ کند.

40 - برنامه ای بنویسید که یک عدد را گرفته سپس میانگین مقسوم علیه های آن را چاپ کند.

41 - برنامه ای بنویسید که اولین عدد از سری فیبوناچی که با مقلوبش برابر است را چاپ کند.

42 - برنامه ای بنویسید که عدد n را گرفته سپس n سطر از شکل های زیر را چاپ کند.

43 - برنامه ای بنویسید که جدول ضرب را چاپ کند.

44 - برنامه ای بنویسید که جدول ضرب مبنای 8 را چاپ کند.

45 - برنامه ای بنویسید که ابتدا 100 عدد را از کاربر بگیرد سپس تعداد اعدادی که هم اول بوده و هم سری فیبوناچی وجود دارند را چاپ کند.

46 - برنامه ای بنویسیدکه یک عدد را گرفته سپس تعیین کند کامل است یا خیر.

47 - برنامه ای بنویسید که اعداد کامل کوچکتر از 1000 را چاپ کند

48 - برنامه ای بنویسید که 100 عدد را گرفته سپس تعداد اعدادی که کامل هستند را چاپ کند.

49 - برنامه ای بنویسید که 100 عدد را گرفته و تعداد اعدادی که هم کامل بوده و بر 2 بخش پذیرند را چاپ کند.

50 - برنامه ای بنویسید که یک عدد را گرفته و سپس رقم های زوج آن را حذف کند.

| جهت سفارش پروژه ، تکلیف و آموزش سیمولینک Simulink  و  متلب Matlab لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

پروژه های پردازش تصویر - تبدیل هندسی ( کد Mat0099 )

1 - تبدیل هندسی

۱-۱ -توسط تبدیل هندسی مناسب، تصاویر Lena ،Barbara و Girl را بر روی سه وجه از مکعب تصویر Cube قرار دهید. تبدیالت هندسی را با بکارگیری درونیابی نزدیکترین همسایه و درونیابی دوخطی انجام دهید.

۱-۲ -انطباق تصاویر یا Registration به فرایند منطبق کردن دو یک چند تصویر بر هم گفته میشود. در این حال و برای دو تصویر، یک تصویر، تصویر مرجع و دیگری تصویر ورودی است که بایستی بر تصویر مرجع منطبق شود. تصویر Map1 را به عنوان تصویر مرجع در نظر گرفته و تصویر Map2 را بر آن منطبق کرده و نمایش دهید. پارامترهای مدل را ارایه کنید

2 - فیلتر میانگین

۱-۲ -فیلتر میانگین به کمک کانولوشن پیاده سازی می شود. با استفاده از خصوصیات فیلتر میانگین از نوع Filter Box ،روشی برای افزایش سرعت پیاده سازی این فیلتر ارایه کنید؛ زمان اجرا الگوریتم اصلی را با الگوریتم خود مقایسه کنید.

۲-۲ -آشکارسازی لبه Robert را به تصویر Mosque اعمال کرده شدت لبه را نشان دهید. فیلتر میانگین 3×3 را ابتدا به تصویر اصلی اعمال کرده و آشکارساز لبه را به تصویر هموار شده اعمال کنید. چه تغییر در نتیجه ایجاد شده؟ این تجربه را به کمک فیلتر 5×5 و 7×7 نیز تکرار کرده و بر روی نتیجه بحث کنید.

۲-3 - دوبار اعمال متوالی یک فیلتر میانگین 3×3 دقیقاً همان نتیجهای که اعمال یکبار فیلتر 5×5 بوجود میآورد را ایجاد نخواهد کرد. آیا میتوانید فیلتری 5×5 طراحی کنید که نتیجهای اعمال آن مشابه دو بار اعمال یک فیلتر 3×3 باشد.

۲-۴ -فیلتری 7×7 طراحی کنید که اعمال آن معادل سه بار اعمال متوالی یک فیلتر 3×3 باشد. به کمک یک آزمایش بر روی تصویر Mosque صحت عملکرد فیلتر طراحی شده را نشان دهید.

3 - بهبود کنتراست تصویر

تصاویر He1 ،He2 ،He3 و He4 تصاویری هستند که میخواهیم به کمک بهبود کنتراست آنها را بهبود دهیم.

3-۱ -بهبود کنتراست این تصاویر را به کمک همسانسازی هیستوگرام (HE (انجام داده نتیجه را ارایه کنید.

3-۲ -اگر تصویر ورودی را f و تصویر بهبود یافته به کمک HE را fhe بنامیم. به ازای مقادیر مختلف α ،از 1.0 تا 5.0 با گام 1.0 تصویر fhe) α-1+(f.α=g را بدست آورده و نتیجه را نمایش دهید. بر روی نتایج بحث کنید.

3-3 -همسانسازی محلی هیستوگرام (LHE (با استفاده از پنجره هایی به ابعاد 5۱×5۱ ،۱0۱×۱0۱ ،۱5۱×۱5۱ و ۲0۱×۲0۱ را بر روی این تصاویر انجام و نتیجه را ارایه کنید. در مورد نتایج بحث کنید.

3-۴ -برای افزایش سرعت LHE از جابجایی بلوک ها به اندازه نصف بلوک و درونیابی استفاده کنید. جهت سهولت، ابعاد پنجره های فوق را در سطر و ستون یک واحد کم کنید تا ابعاد پنجره ها زوج شود.

4 - نقابگذاری غیر تیز (Un-sharp Masking)  

۴-۱ -به کمک استفاده از یک فیلتر هموارساز میانگین 3×3 از نوع Filter Box ،نقاب گذاری غیرتیز را به تصویر child اعمال کنید.

۴-۲ -نقابگذاری غیرتیز را با فیلتر هموار ساز میانگین 3×3 از نوع Average Weighted پیاده سازی کرده نتیجه را با نتیجه قبل مقایسه کنید.

۴-3 -تجربه قسمت )۱ )را با فیلترهای با اندازه بزرگتر 5×5 ،7×7 و 9×9 تکرار کنید. بزرگ کردن فیلتر چه تاثیری بر نتیجه دارد؟ بر روی آن بحث کنید.

۴-۴ -اگر در نقاب گذاری غیرتیز فیلتر میانه را به عنوان فیلتر هموارساز استفاده کنیم چه نتیجهای حاصل می شود؟ 16/1 کلیشه زیر را به عنوان کلیشه لاپلاسین در نظر بگیرید.

5 - حوزه فرکانس

5-۱ -تصویر Im184 را به حوزه فرکانس برده، یکبار طیف Im183 را با فاز Im184 ترکیب کنید و بار دیگر برعکس. حاصل را به حوزه مکان برگردانده و در مورد نتیجه بحث کنید.

5-۲ -با در نظر گرفتن تصاویر Im421 و Im423 به عنوان ورودی، با استفاده از فیلترهای پایینگذر گوسی با ۱0 پهنای باند مختلف، تصویر را هموار کرده نتیجه را نشان دهید.

5-3 -در هر مورد، آنچه که فیلتر پایینگذر حذف کرده را یکبار در حوزه ی مکان و یکبار در حوزه فرکانس بدست آورید و نتیجه را نمایش دهید. هر تصویر را درکنار تصویر متناظر از مرحله )۱ )نمایش دهید.

5-۴ -تصاویر Im421 و Im423 هر یک از دو تصویر مختلف ساخته شده است، یک تصویر از یک فیلتر پایینگذر و دیگری از یک فیلتر باالگذر عبور داده شده و نهایتا با تنظیم شدت مناسب با هم جمع شده اند. بر این اساس با در نظ ر گرفتن دو تصویر دلخواه شما نیز چنین تصویری ایجاد کنید.

6 - موجک

1-6 -یکی از کاربرد های تبدیل موجک، تشخیص خود شباهتی سیگنال است. فرض کنید تصویر fimg را داریم، در این تصویر بخشی از آن در مکان دیگری از تصویر کپی شده است که اصطالحا به چنین حالتی جعل move Copy گفته میشود. تصویر mask_fimg ناحیه دو بالک شبیه به هم را در تصویر fimg نمایش می دهد. ایده ای ارائه دهید که با استفاده از تبدیل موجک، بتوان این دو بلوک از تصویر fimg را که شبیه هم هستند، تشخیص داد. شبه کد الزامی و پیاده سازی میتواند با هر زبانی انجام شود.

2-6 -یکی از کاربرد های تبدیل موجک، یافتن شبیه ترین تصاویر نسبت به تصویر ورودی است. فرض کنید تصویر test را داریم و میخواهیم تصاویر پوشه آموزش را به ترتیب به شبیه ترین تصاویر مرتب کنیم. ایده پیشنهادی خود را شرح دهید و شبه کد آن را بنویسید.

6-3 -تصویر tree را به نویز گاوسی و نمک و فلفل آغشته کنید و با استفاده از تبدیل موجک، تقلیل نویز انجام دهید. شرح دهید که تبدیل موجک کدام نویز را بهتر تقلیل میدهد. کیفیت تصویر تقلیل یافته را به کمک معیارهای PSNR و SSIM گزارش کنید.

7 - پردازش تصاویر رنگی

با جستجو در منابع سه فضا ی رنگ بجز فضاهای رنگ معرفی شده در درس را پیدا کرده در هر مورد وی ژگی های فضا ی رنگ، کاربرد ها و ارتباط آن با فضا ی رنگ RGB یا HSI را بنویسید.

8 - لبه های تصویر زیر را با استفاده از یک فیلتر بالا گذر استخراج کرده (تصویر لبه را بدست آورده و نمایش دهید) و سپس لبه ها رو در تصویر اصلی تقویت کنید.

9 - برنامه ای بنویسید که نرم افزار MATLAB یک تصویر پزشکی را از ورودی گرفته و آن را به سیاه و سفید تبدیل نماید. سپس مقدار D0 و مرتبه فیلتر باترورث را از ورودی گرفته سپس از تصویر FFT گرفته و فیلترهای بالاگذر و پایین گذر باترورث ، گوسی و ایده آل را روی FFT تصویر اعمال نماید. در نهایت از تصویر بدست آمده تبدیل فوریه معکوس IFFT گرفته و حاصل ( تصویر فیلترشده و بهبود یافته ) را به همراه تصویر اصلی نمایش دهد.

10 - تصویر tif.Chessboard را در محیط متلب بارگذاری نمایید. ابتدا با استفاده از دستور rgb2gray ،تصویر را از حالت رنگی(سه لایه) به تصویر سطح خاکستری (یک لایه) تبدیل کنید، سپس آن را بصورت double تبدیل کنید و در متغیر img1 ذخیره نمایید.

11 - با استفاده از از روش اتسو، آستانه ی تصویر را بدست آورید و آن را در متغیر T ذخیره کنید. سپس تصویر را با استفاده از مقدار T ،آستانه گذاری کنید و نتیجه را نشان دهید. )توجه کنید که روش اتسو از هیستوگرام تصویر استفاده می کند(. آیا تمام خانه های سفید و سیاه به درستی از هم جدا شده اند؟ اگر اینطور نیست، چه راه حلی دارید؟ نتایج بهبود یافته خود را نمایش دهید.

12 - تصویر jpg.tr را در محیط متلب بارگذاری نمایید. ابتدا با استفاده از دستور rgb2gray ،تصویر را از حالت رنگی(سه لایه) به تصویر سطح خاکستری (یک لایه) تبدیل کنید، سپس آن را با دستور imbinarize به یک تصویر باینری تبدیل کرده و در متغیر img2 ذخیره نمایید. با استفاده از عملگرهای مورفولوژی، دایره ها را از تصویر استخراج نمایید و نتیجه را نمایش دهید.

13 - تصویر jpg.bottles را در محیط متلب بارگذاری نمایید. ابتدا با استفاده از دستور rgb2gray ،تصویر را از حالت رنگی(سه لایه) به تصویر سطح خاکستری (یک لایه) تبدیل کنید، سپس آن را بصورت double تبدیل کنید و در متغیر img3 ذخیره نمایید. با استفاده از روش های آستانه گذاری و مورفولوژی که تاکنون یادگرفته اید، بطری که مقدار کمتری محلول دارد را شناسایی کرده و مساحت مقدار محلول نشان داده شده ی آن را بدست آورید. (برای بدست آوردن مساحت و دیگر ویژگی ها، از دستور regionprops استفاده می شود.) راهنمایی: خروجی آستانه گذاری و سپس مورفولوژی شما باید بصورت شکل زیر باشد

14 - الگوریتم آستانه گذاری اتسو را پیاده سازی کنید و ،تصویر صفحه شطرنجی را با استفاده از الگوریتم خود آستانه گذاری نمایید و با خروجی دستور اتسو متلب مقایسه نمایید.

15 - تحقیقی در مورد روش های مختلف zooming  و  shrinking تصاویر انجام داده و کد متلب آن ها را بنویسید. به عبارت دیگر برنامه ای بنویسید که تصویری به همراه یک نسبت تغییر را از ورودی گرفته و به روش های مختلف آن تصویر را کوچک shrink و بزرگ zoom کند.

16 - با کمک دستورات متلب آزمایش های مقدماتی زیر را انجام دهید.

الف ) خواندن یک تصویر با فرمت مشخص مثل bmp و ذخیره سازی آن با فرمت دیگر jpg

ب ) به دست آوردن نگاتیو تصویر و نمایش آن

ج ) اعمال عملگرهای exp و log بر روی تصویر و نمایش نتایج آن ها

17 - برنامه ای بنویسید که تبدیل یک تصویر خاکستری به دو سطحی ( یک مقدار آستانه مناسب ) و نمایش هر دو تصویر را در متلب انجام دهید.

18 - برنامه ای بنویسید که یک تصویر خاکستری مانند Cameraman را با استفاده از روش Histogram Equalization  ارتقا و بهبود دهد ( بدون استفاده از histeq )

19 - برنامه ای بنویسید که تصویری از ورودی گرفته ، تصویر گرادیان و لاپلاسین آن را نمایش دهد. سپس تصویر را با نویز گوسی نویزی نموده و مجدد گرادیان و لاپلاسین آن را نمایش دهید و نتایج را تحلیل کنید.

20 - از دو تصویر مختلف تبدیل فوریه بگیرید. سپس فاز تبدیل فوریه این دو تصویر را جابجا نمایید. بدین معنی که فاز تصویر دوم را به تصویر اول دهید و برعکس. سپس با اعمال تیدیل فوریه ، دو تصویر جدید بدست آمده را نمایش دهید. نتایج بدست آمده را تحلیل کنید.

21 - برنامه ای بنویسید که فیلترهای بالاگذر ، میان گذر و پایین گذر ایده آل ، گوسی و باترورث را در حوزه فرکانس ( تبدیل فوریه ) با توجه به خصوصیت های ضرایب و موقعیت آن ها طراحی و یا فیلترهای حوزه مکان مقایسه کنید.

22 - برنامه ای بنویسید که در آن فیلتر همومورفیک را پیاده سازی کرده و آن را به تصویر مرد عکاس اعمال کند.

23 - با استفاده از برنامه نویسی در متلب فیلتر میانه را طراحی کنید. ( بدون استفاده از medfilt2)

24 - با استفاده از برنامه نویسی در متلب و دستورات جعبه ابزار پردازش تصویر آن دستورات imnoise , imfilter , medfilt2 , weiner2 با کمک help متلب دیده و با پارامترهای مختلف امتحان نمایید و تاثیر آن ها را بر خروجی مشاهده فرمایید.

25 - برنامه ای بنویسید که بر روی یک تصویر با نویز گوسی ، فیلتر وینر را اجرا کرده و نتایج را نمایش دهد. ( برنامه فیلتر وینر را به صورت دستی بنویسید و از تابع wiener2 استفاده نکنید.

26 - برنامه ای بنویسید که تبدیل تصویر رنگی به خاکستری و نمایش هر دو تصویر در متلب انجام دهد.

27 - برنامه ای بنویسید و در آن یک تصویر رنگی را بازکرده و مولفه های R , G , B را مشاهده کرده ، سپس این تصویر را به فضای HSV برده و مولفه های H , S , V را مشاهده کنید و احساس و دانش خود را در خصوص این مولفه ها بنویسید.

28 - برنامه ای بنویسید و در آن لبه های یک تصویر رنگی را استخراج کنید. برنامه لبه یابی را به صورت برداری پیاده سازی کرده و با نوع اسکالر آن مقایسه کنید.

29 - برنامه ای بنویسید که تصویر با سطح خاکستری آغشته به نویز گوسی را با واریانس مختلف به عنوان ورودی گرفته ، سپس به حوزه موجک ببرید و رفع نویز کنید. سپس با وارون تبدیل موجک ، تصویر نهایی را نمایش دهد. در نهایت معیارهای RMSE و PSNR را برای تصویر رفع نویز شده محاسبه نمایید.

30 - برنامه ای بنویسید و در آن روش Improved Gray Scale را پیاده سازی کنید. یک تصویر با 256 سطح را در ورودی گرفته و تصویر با 16 سطح در خروجی تحویل دهید.

31 - در گزارشی مراحل کامل فشرده سازی JPEG و JPEG2000 را توضیح دهید. سپس برنامه ای بنویسید که یک بلوک 8*8 را در ورودی گرفته و آن را با استفاده از روش JPEG فشرده کند.

32 - دو برنامه بنویسید که در آن ها یک تصویر باینری و یک تصویر خاکستری را به عنوان ورودی دریافت کرده و لبه های آن ها را با استفاده از لبه یابی موفولوژی استخراج کنید.

33 - برنامه ای بنویسید که در آن نویز نمکی یک تصویر را با استفاده از عملگرهای موفولوژی کاهش دهید.

34 - تفاوت تبدیل رادن با تبدیل هاف چیست؟ برنامه ای بنویسید و در آن تبدیل رادن را به یک تصویر خاکستری اعمال کرده و نتیجه را تفسیرکرده و در گزارش بیاورید.

35 - با اعمال ماسک های منایب به تصویر لبه های تصویر را استخراج و تصویر حاصل را نمایش دهید. روش های موجود در کتاب را مقایسه کنید.

36 - یک برنامه بنویسید و در آن روش باینری سازی اتسو Atsu را پیاده سازی کرده و به چند تصویر اعمال کنید. ( از توابع آماده متلب استفاده نکنید )

37 - برنامه ای بنویسید و با استفاده از الگوریتم خوشه بندی k-means یک تصویر رنگی را ناحیه بندی کنید.

38 -

39 -

40 -

41 -

42 -

43 -

44 -

45 -

46 -

47 -

48 -

49 -

50 -

| جهت سفارش پروژه و تکلیف پردازش تصویر OpenCV و متلب MATLAB لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

تکالیف سیمولینک Simulink - فیلتر بالاگذر ( Sim0006 )

1 - مدارات زیر را در محیط سیمولینک  Simulink شبیه سازی کنید.

2 - پاسخ پله یک مدار RLC سری را در سیمولینک Simulink شبیه سازی کنید و ولتاژ دو سر مقاومت، خازن و سلف را به همراه جریان مدار نمایش دهید.

3 - با استفاده از سیمولینک Simulink یک فیلتر بالا گذر RC ایجاد کنید

جهت سفارش پروژه ، تکلیف و آموزش سیمولینک Simulink  و  متلب Matlab لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

پروژه پردازش تصویر - آستانه گیری ( کد Mat0098 )

1 - Lowpass Filtering

a ) Implement the Gaussia lowpass filter in Eq. You must be able to specify the size , M * N , of the resulting 2D function. in addition , you must be able to specify the location of the center of the Gaussian function.

b ) Doenload Fig from the book web site and lowpass filter it to duplicate the results in fig.

2 - Highpass Filtering

a ) Implement the Gaussian highpass filter of eq. ( Note that , you can use basically program to generate highpass filters )

b ) Doenload Fig from the book web site and highpass filter it to duplicate the results in fig.

3 - Highpass Filtering Combined with Threshoding

Download Fig from the book web site and use your program from project to approximate the results in fig. ( Note  that you will be using a Gaussian, instead of a Butterworth  filter.

4 - یک عکس انتخاب کنید و سه روش آستانه گیری متفاوت را بر روی آن اجرا کنید. در مرحله بعد تبدیل توان و Negative را بر روی تصویر پیاده سازی کنید.

5 - با استفاده از حلقه های تو در تو (بدون استفاده از دستور imfilter ) فیلتر لاپلاسین زیر را بر روی عکس پیاده سازی کنید.

\[Laplacian Filter=\begin{bmatrix} 0 & -1 &0 \\ -1 & 5 &-1 \\ 0 & -1 & 0 \end{bmatrix}\]

6 - پروژه تعیین محدوده شناور در دریا با استفاده از لبه یابی

جهت سفارش پروژه و تکلیف پردازش تصویر OpenCV و متلب MATLAB لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

Designed By M A T L A B K H O O N E H