matlabkhooneh

تکالیف متلب MATLAB - کار با آرایه ها ( کد Mat0069 )

1 - برنامه ای بنویسید که عدد طبیعی فرد N را از ورودی گرفته و سپس حاصل جمع زیر (سری) را محاسبه و مقدار نهایی را چاپ نماید؟

Sum = 2+4+6+8+10+12+14+ .... +2N

2 - برنامه ای که یک عدد را از ورودی گرفته و قدرمطلق آن را محاسبه و چاپ نماید؟ در ادامه، برنامه باید مشخص نماید که قدرمطلق حساب شده برای عدد ورودی، چند رقم دارد؟ (پس از محاسبه قدر مطلق عدد وارد شده، چند رقمی بودن آن نیز مشخص شود. مثال 100 ،سه رقم دارد یا 1000 ،چهار رقم دارد و ...)

3 - برنامه ای که یک متن لاتین را از ورودی گرفته (با هر تعداد کلمه و جمله) و تعداد دفعات تکرار کلمه yes در متن را تعیین و چاپ نماید؟ (چند مرتبه کلمه yes در داخل متن ورودی تکرار شده است)

4 - برنامه ای که یک آرایه نظیر x را از ورودی گرفته و کل درایه های آن را در یکدیگر ضرب و جواب نهایی را در  ه در داخل فایل اکسل ذخیره نماید. (منظور این است که مقدار داخل سلول اکسل شود)

5 - برنامه ای بنویسید که عدد طبیعی N را از ورودی گرفته و سپس حاصل جمع زیر (سری) را محاسبه و مقدار نهایی را داخل فایل اکسل ذخیره نماید؟

\[Sum=\frac{3}{8}+\frac{4}{10}+\frac{5}{12}+\frac{6}{14}+...+\frac{N-1}{2N}\]

6 - رنامهای که عدد طبیعی P را از ورودی خوانده، اعداد فرد کوچکتر از آن را تعیین و میانگین آنها را محاسبه و چاپ نماید؟ (در واقع، مثال اگر مقدار P از ورودی برابر با 20 وارد شود، جمع اعداد 1 ،3 ،0، ... ،20 را محاسبه و میانگین را تعیین و چاپ نماید)

7 - -برنامه ای که تعداد K عدد را از اکسل گرفته، و سپس آنها را از آخر به اول چاپ کند؟ (منظور اینکه K عددی که از فایل اکسل وارد شده اند، حال از انتها به ابتدا به ترتیب چاپ شوند)

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

9 - برنامه ای که K عدد را از ورودی گرفته، مجموع اعداد مثبت و همچنین انحراف معیار اعداد مثبت را محاسبه و چاپ نماید؟ (منظور اینکه از بین K عدد مختلف ورودی، جمع اعداد مثبت را تعیین نماید. همچنین، انحراف معیار فقط اعداد مثبت ورودی را محاسبه کند)

10 - برنامه ای که یک آرایه دوبعدی را گرفته (با تعداد ردیف و ستون مشخص)، و در کلیه خانه های آن عدد 0 (صفر) را قرار دهد؟ (منظور آن است که یک ماتریس با ابعاد مشخص تشکیل شود که تمام اعضای آن دارای مقدار صفر (0)باشند)

11 - برنامه ای که یک متن لاتین را از ورودی گرفته (با هر تعداد کلمه و جمله) و تعداد دفعات تکرار حرف m را در متن ورودی مشخص نماید؟ همچنین، حروف متن ورودی را از انتها به ابتدا چاپ نماید؟ (چند مرتبه حرف m در داخل متن ورودی تکرار شده است و چاپ حروف تشکیل دهنده متن از انتها به ابتدا)

12 - برنامه ای که عدد طبیعی X و عدد طبیعی Y را از ورودی گرفته و سپس میانگین اعداد بزرگتر از Y را محاسبه و چاپ نماید؟ (منظور اینکه مجموع اعداد طبیعی را که بزرگتر از Y و کوچکتر از X میباشند، محاسبه نموده و بر تعداد آنها تقسیم نماید تا میانگین تعیین شود)

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

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

15 - برنامه ای که سه عدد را از فایل اکسل خوانده (شامل A ، B و C ،)و سپس مشخص کند که آیا مثلث بدست آمده از سه ضلع، قائم الزاویه است یا خیر؟ همچنین برنامه باید مساحت و محیط مثلث را تعیین و در داخل فایل اکسل، ذخیره نماید؟

16 - برنامه ای که تعدادی عدد را از فایل اکسل خوانده (به عنوان ورودی)، اختلاف بین بزرگترین عدد و کوچکترین عدد را محاسبه و چاپ نماید؟ (خروجی برنامه، تعیین اختالف بین ماکزیمم اعداد ورودی و مینیمم اعداد ورودی است - الزم است در ابتدا بزرگترین عدد و کوچکترین عدد بین ورودی ها تعیین شوند)

17 - برنامه ای که دو عدد طبیعی M و N را از ورودی گرفته M>N ،مجموع اعداد فرد بین M و N را ( محاسبه، و در نهایت مجموع بدست آمده را داخل فایل اکسل ذخیره نماید؟  ( مجموع اعداد فرد بزرگتر از M و کوچکتر از N مورد نظر است)

18 - برنامه ای که یک متن لاتین را از ورودی گرفته (با هر تعداد کلمه و جمله) و تعداد دفعات تکرار حرف s را در متن ورودی مشخص نماید؟ همچنین، حروف متن ورودی را از انتها به ابتدا چاپ نماید؟ (چند مرتبه حرف s در داخل متن ورودی تکرار شده است و چاپ حروف تشکیل دهنده متن از انتها به ابتدا)

19 - برنامه ای که یک آرایه دوبعدی را گرفته (با تعداد ردیف و ستون مشخص)، و در کلیه خانه های آن عدد 20 را قرار دهد و در نهایت آرایه دوبعدی ایجاد شده را نمایش دهد؟ (منظور آن است که یک ماتریس با ابعاد مشخص تشکیل شود که تمام اعضای آن دارای مقدار 20 باشند)

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

21 - برنامه ای که دو عدد طبیعی M و N را از ورودی گرفته  ( M>N )کلیه اعداد مضرب 2 بین M و N را ( داخل یک آرایه ذخیره و در نهایت آرایه مورد نظر را چاپ نماید؟ 

22 - برنامه ای بنویسید که یک بردار با 11 درایه را دریافت کرده و آن را به یک آرایه 11 در 11 تبدیل کند به صورتی که عناصر بردار بر روی قطر اصلی آرایه 11 در 11 قرار بگیرد و سایر عناصر آرایه صفر باشند.

23 - برنامه ای بنویسید که 25 عدد را از ورودی گرفته (از داخل فایل اکسل) و مقدار حداکثر (ماکزیمم) آن ها و محل آن را تعیین و چاپ نماید؟ (مقدار حداکثر بین اعداد ورودی چند است و در کدام درایه قرار م یگیرد (مثال اولین عدد ورودی یا عدد دوم و ...))

24 - برنامه ای بنویسید که طول اضلاع یک مثلث را از ورودی گرفته و مساحت کل آن را محاسبه و چاپ نماید.

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

26 - برنامه ای بنویسید که یک عدد را از کاربر بگیرد و آن را در متغیری به نام x ذخیره کند. با استفاده از آن ، عبارت زیر را محاسبه کند و مقدار y را با پیغام مناسب نمایش دهد.

\[ y=x^{3}+3x^{2}+6x+6\]

با تایپ نام برنامه در جلوی اعلان MATLAB آن را اجرا کنید.

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

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

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

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

31 -

32 -

33 -

34 -

35 -

36 -

37 -

38 -

39 -

40 -

41 -

42 -

43 -

44 -

45 -

46 -

47 -

48 -

49 -

50 -

| جهت سفارش پروژه ، تکلیف و آموزش سیمولینک 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