matlabkhooneh

تکالیف متلب MATLAB - بررسی مثلث ( کد Mat0093 )

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

2 - برنامه ای بنویسید که اعداد 1 یا 2 یا 3 را از ورودی گرفته و مشخص کند عدد ورودی کدام است و اگر غیر از این وارد شد ، برنامه مشخص کند که عدد وارد شده جزو این اعداد نیست.

3 - برنامه ای بنویسید که یک عدد بین 0 تا 6 را از ورودی گرفته و معادل روز هفته آن عدد را در خروجی چاپ کند.

4 - برنامه قبل را با ساختار Switch-Case بنویسید.

5 - برنامه ای بنویسید که یک عد به عنوان روز را از ورودی گرفته مشخص کند این عدد مربوط به ماه چندم سال است؟

6 - برنامه ای بنویسید که سه عدد را از ورودی گرفته مشخص کند ، این اعداد تشکیل اضلاع یک مثلث می دهند یا خیر.

7 - برنامه ای بنویسید که سه ضلع ورودی را گرفته مشخص کند این اعداد تشکیل یک مثلث قائم الزاویه می دهند یا خیر؟ ( شرط مثلث بودن اعداد هم چک شود )

8 - برنامه ای بنویسید که سه عدد را از ورودی گرفته مشخص کند این اعداد تشکیل یک مثلث متساوی الساقین می دهند یا خیر ( شرط مثلث بودن اعداد هم چک شود )

9 - برنامه ای بنویسید که سه عدد را از ورودی گرفته مشخص کند این اعداد تشکیل یک مثلث متساوی الاضلاع می دهند یا خیر ( شرط مثلث بودن اعداد هم چک شود )

10 - برنمه ای بنویسید که اعداد زوج 1 تا 20 را در خروجی چاپ کند.

11 - برنامه قبلی را با while بنویسید.

12 - برنامه ای بنویسید که یک عدد از ورودی دریافت کند و مجموع اعداد یک تا خود آن عدد را در خروجی ننمایش دهد.

13 - برنامه ای بنویسید که یک عدد را از ورودی گرفته مجموع اعداد زوج قبل از آن را در خروجی چاپ کند ( برنامه با حلقه while نوشته شود )

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

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

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

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

18 - برنامه ای بنویسید که جدول ضرب 1 تا 10 را در خروجی چاپ کند.

19 - برنامه ای بنویسید که با تعریف دو تابع شعاع یک کره را از ورودی گرفته مساحت و حجم کره را محاسبه کند.

20 - یک تابع بنویسید که فاکتوریل عدد را حساب کند.

21- برنامه ای بنویسید که فشار هوای منطقه ای را بر حسب پاسکال بخواند و آن را به بار تبدیل کند.

22 - برنامه ای بنویسید که وزن افراد را بر حسب کیلوگرم بخواند و به پوند تبدیل کند.

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

تکالیف متلب MATLAB - سیستم های ارتعاشی ( کد Mat0068 )

1 - الف ) برنامه ای بنویسید که N را گرفته و انتگرال توابع زیر را با استفاده از روش ذوزنقه ای و عددی متلب و سیمولینک متلب در صورت وجود محاسبه کرده و مقایسه کند.

ب - نمودار تغییرات انتگرال با افزایش N را رسم کنید 

ج - نمودارهای سه بعدی توابع را رسم کنید.

\[\int_{0}^{2 \pi}\int_{0}^{2 \pi}cos(x)sin(y)dxdy\]

\[\int_{0}^{\frac {\pi}{2}}\int_{0}^{\frac {\pi}{2}}\frac {sin(y)}{x^{2}}dxdy\]

\[\int_{1}^{2 \pi}\int_{0}^{2 \pi}xy^{3}\;\; ln(x)dxdy\]

\[\int_{0}^{2 }\int_{-3}^{3}x^{4}+yx^{2}+2y^{3}dxdy\]

2 - معادله دیفرانسیل حاکم بر سیستم های ارتعاشی به شکل زیر است. با فرض مقادیر مختلف برای جرم ، سختی فنر ، دمپینگ و شرایط اولیه ( سرعت جابجایی اولیه ) سیستم ، معادله را با استفاده از ODE متلب محاسبه کنید.

\[m\ddot{x}+c\dot{x}+kx=f(t)\;\;\; , \; \;\; x(0)=x_{0}\;\; , \;\; \dot{x}=\dot{x_{0}}\]

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

4 - برنامه ای به فرم script بنویسید که دو عدد طبیعی a و b را به عنوان ورودی دریافت کرده و با استفاده از دستور switch چنانچه هر دو زوج باشند ، حاصل جمع آن ها و اگر هردو فرد باشند ، قدر مطلق تفاوت آن ها و در صورتی که یکی زوج و دیگری فرد باشد، عدد بزرگتر را چاپ کند.

5 - فرض کنید دستور meshgrid در MATLAB وجود ندارد. تابعی به نام mymeshgrid بنویسید که دو وکتور را به عنوان ورودی گرفته و خروجی meshgrid را تولید کند.

6 - از تابع قسمت قبل به عنوان زیر برنامه استفاده کرده و به ازای  مقدار با فاصله مساوی برای phi بین 0 تا pi و 100 مقدار با فاصله مساوی برای theta بین 0 تا 2pi رویه زیر را رسم کنید.

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

8 - فلوچارتی را رسم کنید که تعدادی عدد را خوانده و سپس تعداد اعداد مثبت ، منفی و صفر را چاپ کند. ( بدون استفاده از آرایه ها )

9 - برای تابع زیر مقدار مشتق را به روش مرکزی و به روش پس رو پیش رو برای مقادیر متنوعی از dx در نقطه x=1 محاسبه کنید.سپس نموداری رسم کنید که خطای روش ها نسبت به جواب واقعی بر اساس اندازه dx نمایش دهد.

\[xe^{x}-3\]

10 - بدون کمک گرفتن از توابع MATLAB ، تابعی بنویسید که یک ماتریس دلخواه با ابعاد دلخواه A و یک عدد دلخواه a را به عناون ورودی از کاربر دریافت کند . خروجی این تابع باید یک بردار سطری مثل B باشد که در هر ستون از آن مجموع تعداد درایه هایی از ستون متناظر ماتریس A قرارداده شود که از a بزرگتر هستند. ضمنا باید در خروجی پیام هایی ذکر شود که نشان دهد چه درایه هایی از ماتریس A بزرگتر از a هستند.

Element (3,1) is greater than0.20

11 - برنامه ای بنویسید که یک ماتریس دلخواه با ابعاد دلخواه A را از کاربر دریافت کرده و ماتریس B را با ابعاد مشابه A تولید کرده که هر درایه آن صفر ، 1 و 1- باشد. اگر درایه ای از A مثبت باشد دردایه نظیر آن در B عدد 1 است . اگر درایه ای از A صفر باشد درایه نظیر آن در B عدد صفر است و در نهایت اگر درایه ای اط A منفی باشد درایه نظیر آن در B عدد 1- است.

12 - برنامه ای بنویسید که برای n نفر قد و وزن را از ورودی گرفته ، شاخص BMI آن ها را محاسبه کرده و در خروجی روی یک نمودار نشان می دهد.

13 - محیط windows command را پاک کنید، با استفاده از تابع ()ones ماتریسی شامل سه سطر و چهار ستون را با نام M در پوشه جاری ذخیره کنید

محیط space work را پاک کنید

فایل M را از محلی که ذخیره کرده اید فراخوانی کنید و ستون چهارم ماتریس M را حذف کنید

درایه های قطر اصلی را به عدد 1 تغییر دهید

درایه سوم ماتریس را برابر 1 و درایه هفتم ماتریس را برابر 1 قرار دهید

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

حاصلجمع و حاصلضرب همه درایه های ماتریس M جدید را چاپ کنید.

14 - با استفاده از تابع ()input ، نمرات دروس ریاضی 3(واحد) ،فیزیک (2 واحد) ، معارف (2 واحد) ، نقشه کشی (1 واحد) چند دانشجو را به صورت یک ماتریس (4*N) از کاربر بگیرد و موارد زیر را محاسبه و با پیغام مناسب نمایش دهد

معدل هر درس

معدل هر دانشجو

میانگین نمرات زیر 12 بدون احتساب واحد هر درس

معدل کل دروس برای تمامی دانشجویان

15 - برنامه ای بنویسید که یک ماتریس n × m را بگیرد و درایه های آن را٩٠درجه در جهت عقربه های ساعت بچرخاند و ماتریس حاصل را چاپ کند.

16 - برنامه ای بنویسید که عدد طبیعی فرد n و سپس n عدد را دریافت کرده و میانۀ اعداد وارد شده را محاسبه و چاپ کند. میانۀ اعداد، عددی است که نصف اعداد از آن عدد بزرگتر و نصف اعداد از آن عدد کوچکتر یا مساوی است.

17 - برنامه ای بنویسید که یک ماتریس n × m را بگیرد و مشخص کند آیا هیچ دو سطر این ماتریس با هم برابر است یا خیر

18 - برنامه ای بنویسید که اعداد طبیعی l, n, m و سپس یک ماتریس n × m و یک ماتریس l × n را بگیرد و حاصلضرب دو ماتریس را محاسبه و چاپ کند.

19 - برنامه ای بنویسید که عدد طبیعی n و سپس n عدد را دریافت کرده و سپس k را دریافت کرده و kامین کوچکترین عدد وارد شده را محاسبه و چاپ کند

20 - برنامه ای بنویسید که عدد طبیعی n و سپس n عدد را دریافت کرده و سپس عددی که بیشترین تکرار و عددی که کمترین تکرار را دارد را با تعداد تکرار هر کدام محاسبه و چاپ کند.

21 - برنامه ای بنویسید که عدد طبیعی n و سپس n عدد را دریافت کرده و در آرایه ای ذخیره کند و سپس عدد k را گرفته و محتوای آرایه را به اندازه k شیفت دوری دهد به این معنی محتوای خانه اول را در خانه١ + k ،محتوای خانۀ دوم را در خانۀ٢ + k و ... قرار دهد. با رسیدن به آخر آرایه، خانه ها با ابتدای آرایه شیفت پیدا کند.

22 - برنامه ای بنویسید که عدد طبیعی n با حداکثر٣٠رقم و عدد صحیح m را دریافت کرده و بخشپذیری n بر m را بررسی کند.

23 - برنامه ای بنویسید که عدد طبیعی n را دریافت کرده و تمام اعداد طبیعی کوچکتر از ١٠٠٠ را که را m متحابه هستند را محاسبه و چاپ کند

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

25 - برنامه ای بنویسید که عدد طبیعی n را دریافت کرده و تجزیه آن به عوامل اول را محاسبه و چاپ کند. خروجی به صورت عوامل اول و توان هر کدام چاپ شود.

26 - برنامه ای بنویسید که عدد طبیعی n و سپس n عدد را دریافت کرده و از بین آنها تمام جفت اعدادی که نسبت به هم اول هستند را محاسبه و چاپ کند.

27 - فرض کنید ١٣٧۴٨۶x٢٢۵ = t که x یک رقم است. مقادیری از x را بیابید که با جایگزینی آنها t بر٧بخشپذیر باشد.

28 - فرض کنید ١٣٧۴٨۶x٢٢۵ = t که x یک رقم است. مقادیری از x را بیابید که با جایگزینی آنها t بر٣بخشپذیر باشد

29 - به نظر میرسد جملات متوالی دنبالۀ فیبوناچی نسبت به هم اول هستند. برنامه ای بنویسید که این امر را برای ١٠٠٠ جملۀ اول دنباله فیبوناچی تحقیق کند.

30 - برنامه ای بنویسید که دو عدد صحیح را دریافت کرده و تمام مقسوم علیه های مشترک اول آنها را محاسبه و چاپ کند.

31 - برنامه ای بنویسید که از بین اعداد ١ تا ١٠٠٠٠ آن عددی (یا اعدادی) که بیشترین تعداد مقسوم علیه دارند را محاسبه و چاپ کند

32 - برنامه ای بنویسید که عدد طبیعی n را دریافت کرده و سپس تمام اعداد صحیح کمتر از١٠٠٠٠که دقیقا n مقسوم علیه دارند را محاسبه و چاپ کند.

33 - برنامه ای بنویسید که یک عدد طبیعی را دریافت کرده و آن را به رشته ای از ارقام تبدیل کند. مثلا عدد ١٧۶٧ به رشتۀ “١٧۶٧” تبدیل شود.

34 - برنامه ای بنویسید که ابتداعدد طبیعی n و سپس n عدد اعشاری را دریافت کرده و ماکزیمم، مینیمم و میانگین اعداد وارد شده را محاسبه و چاپ کند

35 - برنامه ای بنویسید که عدد طبیعی n را دریافت کرده و !n را محاسبه و چاپ کند. با استفاده از این برنامه مقدار !١٠٠ را محاسبه کنید.

36 - برنامه ای بنویسید که دو عدد صحیح ٣٠ رقمی را دریافت کرده و مجموع آنها را محاسبه و چاپ کند

37 - برنامه ای بنویسید که یک عدد دودیی (باینری) را دریافت کرده و آن را به مبنای ٨،١٠ و ١۶تبدیل کند.

38 - برنامه ای بنویسید که یک رشته از ارقام را دریافت کرده و عدد متناظر با آن را محاسبه کند. به عنوان مثال، اگر ورودی به ترتیب ٢،٣،۴،٩ و ٣باشد به عدد٢٣۴٩٣تبدیل شود.

39 - فرض کنید ٠ = a٠ ،١ = a٢ = a١ و جملات بعدی دنباله مجموع سه جمله قبلی آنهاست. برنامه ای بنویسید که عدد طبیعی n را دریافت کرده و nامین جمله دنباله را محاسبه و چاپ کند.

40 - برنامه ای بنویسید که دو عدد طبیعی m و n را دریافت کرده و مشخص کند آیا دو عضو متوالی دنبالۀ فیبوناچی هست یا خیر؟

41 - برنامه ای بنویسید که عدد طبیعی n را دریافت کرده و nامین جملۀ دنباله فیبوناچی را محاسبه و چاپ کند

42 - برنامه ای بنویسید که عدد طبیعی n را دریافت کرده و مشخص کند آیا فاکتوریل عددی هست یا خیر

43 - برنامه ای بنویسید دو عدد صحیح (مثبت یا منفی) را دریافت کرده و حاصلضرب آنها را بدون استفاده از عمل ضرب محاسبه و چاپ کند.

44 - ام فایلی بنویسید که از اپراتور مقدار x را به عنوان درجه یک چند جمله ای بگیرد. سپس ضرایب چند جمله ای را به صورت تصادفی بین 0 تا 5 محاسبه کند . سپس چند جمله ای را در بازه -3 تا3 رسم نماید. (دقت نمایید که چندجمله ای از درجه n ،دارای 1+n ضریب است)

45 - ام فایلی بنویسید که بردار ضرایب چند جمله ای را از اپراتور بگیرد و سپس به ازای x در بازه -5 تا 5 ، خود چند جمله ای و مشتق آن را با دو رنگ مختلف ترسیم نماید.

46 - برنامه ای بنویسید که دو عدد از کاربر گرفته و باقیمانده عدد اول بر عدد دوم را بدست بیاورد

47 - برنامه ای بنویسید که دو متغیر عددی را از ورودی گرفته و بدون استفاده از متغیر کمکی محتویات آنها را عوض کند.

48 - برنامه ای بنویسید که سه آرایه سه در سه از کاربر بگیرد و آنها را به یک آرایه 3×3×3 تبدیل کند.

49 - برنامه ای بنویسید که یک ماتریس 1111 در 1111 به نحوی تولید کند که عناصر قطر اصلی و فرعی آن عدد 10 و سایر عناصر عدد 111 باشد.

50 - برنامه ای بنویسید که دو آرایه مربعی A و B را از کاربر دریافت کرده و عناصر قطر اصلی A را در عناصر قطر فرعی B ضرب کرده و مجموع این اعداد را در خروجی نشان دهد.

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

تکالیف پردازش تصویر - برش تصویر ( کد Mat0020 )

1 - یک تصویر خاکستری را در ماتریسی در متلب MATLAB بخوانید، ابعاد آن را مشخص کرده و به کاربر اطلاع دهید که تصویر دارای چه ابعادی است و با دستور input از او بخواهید که بگوید به چه ابعاد کوچکتری بریده شود. کاربر ابعاد مورد نظر را وارد کند. اگر ابعاد ورودی کمتر از ابعاد اصلی تصویر بود، تصویر را به آن ابعاد بریده و نمایش دهد. وگرنه، به کاربر پیام خطا در وارد کردن ابعاد داده و مجدد از او ابعاد جدید بخواهد.

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

3 - تابعی برای نمایش نمودار هیستوگرام را در OpenCV بنویسید و در مورد خط به خط آن توضیح دهید.

4 - تابع rectangle در OpenCV چکار میکند؟ در مورد آرگومانهای ورودی آن توضیح دهید

5 - در OpenCV چگونه میتوان با یک خط کد تصویری با رنگ سفید تولید کرد؟

6 - در OpenCV چگونه میتوان با یک خط کد تصویری با رنگ سیاه تولید نمود؟

7 - عملگرهای موفولوژی چه هستند و هر یک چه کاری انجام میدهند؟

8 - Erosion چیست؟ و الگوریتم آن چگونه عمل میکند؟ بطور کامل توضیح دهید. کاربرد آن چیست؟

9 - Dilation چیست؟ و الگوریتم آن چگونه عمل میکند؟ بطور کامل توضیح دهید. کاربرد آن چیست؟

10 - عملگر opening چیست؟ الگوریتم آن چگونه عمل میکند؟ کاربردهای آن چیست؟ با ذکر مثال و توضیح آن.

11 - عملگر closing چیست؟ الگوریتم آن چگونه عمل میکند؟ کاربردهای آن چیست؟ با ذکر مثال و توضیح آن.

12 - در مورد Erosion در حالت یک بعدی توضیح دهید؟ پنجره دو بعدی آن به چه صورت است؟

13 - در مورد dilation در حالت یک بعدی توضیح دهید؟ پنجره دو بعدی آن به چه صورت است؟

14 - دستورات متلب برای dilation را بنویسید و بیان کنید که آرگومانهای آن چیست ؟ دستور ایجاد پنجره را با ذکر مثال بنویسید.

15 - دستورات متلب برای erosion را بنویسید و بیان کنید که آرگومانهای آن چیست؟ پنجره را برای اید دستور چگونه میتوان درست نمود؟

16 - پیکسل لنگری در سایش و گسترش چه هست؟

17 - دستور برای سایش در OpenCV چیست؟ توضیح دهید که هر کدام از آرگومانهای آن چه هستند؟

18 - -دستور برای گسترش در OpenCV چیست؟ توضیح دهید که هر کدام از آرگومانهای آن چه هستند؟

19 - دستور برای opening در OpenCV چیست؟ چه کاربردی دارد؟

20 - دستور برای closing در OpenCV چیست؟ چه کاربردی دارد؟

21 - فیلتر Hat Top چه کاری انجام میدهد؟ و چگونه میتوان آن را پیاده سازی کرد؟

22 - فیلتر Hat Black چه کاری انجام میدهد؟ و چگونه میتوان آن را پیاده سازی کرد؟

23 - چطور میتوانیم یک تصویر را در متلب و در OpenCV تبدیل به باینری کنیم؟

24 - دستور آستانه گذاری در OpenCV چیست؟ چگونه استفاده میشود؟ کاربرد آن چیست؟

25 - برای ایجاد یک کرنل )پنجره( برای عمل سایش و گسترش در OpenCV با ذکر مثال و توضیح بیان کنید از چه دستوراتی میتوانیم استفاده نماییم

26 - ویدیو چیست؟ توضیح دهید. rate Frame چیست؟

27 - در OpenCV چگونه میتوانیم فریم های یک ویدیو را خواند؟ کدهای مربوطه را بنویسید.

28 - در OpenCV از کجا بفهمیم )از چه دستوری میتوانیم استفاده کنیم( فایلی که میخواسته ایم باز کنیم درست باز شده است یا خیر؟

29 - متد get در OpenCV برای پردازش ویدیو چیست و چگونه میتوان از آن استفاده کرد؟ کاربرد آن چیست؟

30 - متد set در OpenCV برای پردازش ویدیو چیست و چگونه میتوان از آن استفاده کرد؟ کاربرد آن چیست؟

31 - برنامه ای در OpenCV بنویسید که یک ویدیو را خوانده و آن را نمایش دهد. خط به خط برنامه را به طور کامل توضیح دهید.

32 - برنامه ای در OpenCV بنویسید که دوربین لپ تاپ )وب کم( را خوانده و آن را نمایش دهد. برخط به خط برنامه را به طور کامل توضیح دهید.

33 - برنامه ای در OpenCV بنویسید که یک ویدیو را خوانده، سایز آن را 3 برابر کرده و آن را نمایش دهد. خط به خط برنامه را به طور کامل توضیح دهید

34 - برنامه ای در OpenCV بنویسید که یک ویدیو را خوانده، لبه های تصویر را استخراج کرده و آن را نمایش دهد. خط به خط برنامه را به طور کامل توضیح دهید

35 - برنامه ای بنویسید که در آن بعد از فراخوانی تصویر ( هم تصاویر خاکستری و هم رنگی ) نتیجه اعمال فیلترهای میانه ، میانگین ( هم ساده و هم وزن دار ) و فیلتر گوسی را نمایش دهد. کد باید به صورتی باشد که کاربر بتواند ابعاد نقاب mask را انتخاب کند.

36 - برنامه های زیر را بنویسید.

الف ) انتقال لگاریتمی و تابع گاما

ب ) محاسبه هیستوگرام

ج ) روش متعادل سازی هیستوگرام و تناظریابی هیستوگرام

37 - برنامه ای بنویسید که بدون استفاده از دستور rgb2gray یک تصویر رنگی را به تصویر gray scale تیدیل کند.

38 - برنامه ای بنویسید که یک تصویر را بخواند و با استفاده از همسایگی افقی - عموذی و قطری فیلتر میانگین را پیاده سازی کنید.

39 - تبدیل تصاویر سطح خاکستری به تک رنگ Dithering

Dithering به مفهوم جایگزینی ارزش های  0 تا 255 مربوط به تصاویر خاکستری، با الگوهایی است که در چاپگرهای 1 بیتی ( سیاه و سفید ) قابل چاپ باشند به طوری که سطوح خاکستری با استفاده ازاین الگو صفر و یک، به صورت خاکستری به نظر برسند. Dithering موجب فشرده سازی تصویر خواهد شد. فشرده سازی تصویر فرآیندی است که حجم تصویر کاهش می یابد اما کیفیت تصویر دست خوش تغییرات زیاد قرار نمی گیرد. الگوریتم Dithering را در متلب Matlab پیتده سازی کنید.

40 - الف ) چند عکس خیلی تاریک یا خیلی روشن پیدا کنید. در صورت لزوم از تابع rgb2gray برای تبدیل یک تصویر رنگی به یک تصویر در مقیاس خاکستری استفاده کنید.

ب ) تابعی بنویسید که با استفاده از مقدار تعیین شده gamma ، تصویر مشخص شده را روشن ( یا تیره ) کند. تابع باید هم ماتریس تصویر و هممقدار gamma را به عنوان ورودی بپذیرد. این تابع بایستی در حالت ایده آل با هر تصویر خاکستری مقیاس و با هر تصویر رنگی کار کند. ( برای تنظیمات حالت رنگی ، تصویر باید به فضای رنگی YCbCr تبدیل شود و تبدیل باید در کانال Y اعمال شود. )

ج) برنامه ای بنویسید که

- یک تصویر دلخواه در محیط MATLAB وارد کند.

- تصویر اصلی و هیستوگرام آن را رسم کند.

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

- نسخه بهبود یافته تصویر را همراه با هیستوگرام آن نمایش دهد.

41 - الف ) یکی دیگر از دسته های معروف توابع ، کلاس توابع نمایی است. در شکل زیر ، نمونه ای از نمودارهای توابع نمایی را با پایه های مثبت مختلف قابل مشاهده می باشد، به علاوه می توانیم تاثیر پایه را بر شکل نمودار نیز بررسی کنیم.

بر خلاف نمودارهای توابع توان، نمودارهای توابع لگاریتمی از مبدا و نقطه (1,1) عبور نمی کنند. چه راهکاری برای حل این مشکل می توان اراده کرد؟

ب ) به نظر شما این توابع، می توانند در بهبود کیفیت کدام دسته از تصاویر به کار روند؟ چگونه؟

ج ) یک تابع بنویسید که ویژگی های پنهان تصویر مشخص شده را با استفاده از تبدیل لگاریتمی با مقدار مشخص شده پایه b نشان دهد. تابع شما باید تصویر و پایه را به عنوان ورودی بپذیرد. در حالت ایده آل، عملکرد شما باید با هر تصویر خاکستری و یا هر تصویر رنگی کار کند. در حالت دوم باید به فضای رنگی YCbCr تبدیل شود و تبدیل باید به کانال Y اعمال شود.

تابعی بنویسید که کارهای زیر را انجام دهد.

- یک تصویر را به محیط محاسباتی MATLAB وارد کنید.

- تصویر اصلی و هیستوگرام آن را نمایش دهد.

د ) تابعی بنویسید که در مساله فوق ایجاد کرده اید فراخوانی کنید تا ویژگی های پنهان در تصویر اصلی ظاهر شود. پارامترهای تبدیل لگاریتمی خود را آزمایش کنید و سعی کنید مقادیر بهینه آن پارامترها را تعیین کنید.

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

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

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

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

الف ) نیمه عمودی وسط

ب ) نیمه افقی وسط

ج ) قسمت مستطیل وسط

توابع خود را با مجموعه ای از تصاویر انتخابی آزمایش کنید.

45 - توابع مشابه را برای انتخاب مناطق دیگر ( مثلا یک سوم افقی میانی ، نیمه بالایی ، یک چهارم عمودی چپ و غیره ) تصویر مشخص شده با ضرب در یک ماتریس مناسب بنویسید.

46 - برنامه ای بنویسید که کارهای زیر را انجام دهد.

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

ب ) از کاربر بخواهد تا نوع ماسک مورد نظر را مشخص کند ( افقی ، عمودی ، حاشیه ای )

ج ) از توابعی که در تمرین 5 ایجاد کردید برای ایجاد ماسک مورد نظر استفاده کنید.

47 - برنامه ای بنویسید که ظاهری شبیه با تصویر زیر داشته باشد تا بتواندموارد خواسته شده را بر روی تصویر اعمال کند.

- دکمه ای جهت بازکردن تصویر ( فرمت Jpg , Bmp , Gif , Tiff )

- یک listbox جهت انتخاب شیوه نمایش تصویر ، این لیست باکس همانطور که در تصویر بالا نشان داده شده است باید دارای گزینه های RGB, R , G , B , B&W , Graysclae باشد. با انتخاب تصویر باید این تغییرات روی تصویر اعمال شود.

- یک Radio  Button Group برای انتخاب نوع فیلتر مورد نظر برای اعمال بر روی تصویر که شامل موارد زیر باشد.

* اعمال حد آستانه

* اعمال فیلتر منفی

* اعمال فیلتر میانگین

* اعمال فیلتر استخراج لبه

* قرینه کردن افقی تصویر

* قرینه کردن قائم تصویر

* اعمال فیلتر 3*3 مورد نظر کاربر که مقادیر آن در editbox های زیر آن وراد شده است.

* نمایش هیستوگرام تصویر

- یک دکمه برای اعمال تغییرات مورد نظر

- یک دکمه جهت ذخیره کردن تصویر با یکی از فرمت Jpg , Tiff, Gif , Bmp برای گرفتن مسیر و فرمت فایل خروجی.

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

49 - برنامه های زیر را بنویسید.

  • انتقال لگاریتمی
  • تابع گاما
  • محاسبه هیستوگرام
  • متعادل سازی هیستوگرام
  • تناظریابی هیستوگرام

50 -

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

موضوعات
Designed By M A T L A B K H O O N E H