matlabkhooneh

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

1 - نویز متناوب سینوسی به شکل زیر را به تصویر cameraman اعمال کرده و تصویر حاصل را رسم کنید. سپس با توجه به فرکانس های نویز سینوسی یک filter notch طراحی کنید و تصویر اولیه را بازیابی کنید. ( برای سادگی فرکانس Vرا صفر در نظر بگیرید. مقدار A هم طوری انتخاب شود که نویز در تصویر دیده شود.)

\[\eta (x,y)=Asin(2 \pi u_{0}x+2 \pi v_{0}y)\]

2 - تبدیل هاف تصویر زیر را رسم کنید و rho , theta ی خطوط تصویر را مشخص کنید.

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

4 - در تصویر شکل زیر تعداد دایره های کوچک و بزرگ را تعیین کنید.

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

6 - یک تصویر خاکستری را در ماتریسی در متلب بخوانید، به کمک حلقه for و تعریف یک سطح آستانه ( مفهوم سطح آستانه برای این عملیات تدریس شده است) ، آن را به تصویر باینری تبدیل کرده و در یک پنجره هر دو تصویر را در کنار هم نمایش دهید. سطح آستانه را تغییر داده و مجددا عملیات قبل را تکرار کنید. تفاوت در تصاویر باینری استخراجی را توضیح دهید.

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

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

9 - تصاویر همراه با فایل را با استفاده از روش otsu و activecontour سگمنت کنید.

لایه های رنگی را باید به صورت جداگانه اعمال کنید و هیستوگرام آن ها را رسم کنید و با ذکر دلیل بیان کنید که بر روی کدام لایه رنگی از تصویر، الگوریتم های استفاده شده نتیجه بهتری داشتند.

10 - در این تمرین دو تصویر normalBrainGray  و alzaimerBrainGray را از هم تفریق کرده و تصویر سوم با نام out تولید کنید. برای انجام عمل تفریق یک تابع خودتان بنویسید و خروجی را نمایش دهید. سپس نتیجه را با تابع موجود در نرم افزار متلب مقایسه کرده و خروجی تابع متلب را هم نمایش دهید.

11 - در این تمرین دو تصویر EyeLGray و EyeRGray را با هم جمع کرده و تصویر سوم با نام out را تولید کنید. برای انجام عمل جمع یک تابع خودتان بنویسید و خروجی را نمایش دهید. سپس نتیجه را با تابع موجود در نرم افزار متلب مقایسه کرده و خروجی تابع متلب را هم نشان دهید.

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

13 - با استفاده از تصویر نویزدار آپلود شده اثر سه فیلتر حداقل و حداکثر و میانه در حذف نویز را مقایسه کنید.

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

 

 

تکالیف پردازش تصویر - الگوریتم های تشخیص لبه ( کد Mat0057 )

1 - پیاده سازی الگوریتم لاپلاسین برای تشخیص نقطه در یک تصویر خاکستری

2 - پیاده سازی الگوریتم لاپلاسین برای تشخیص خط در یک تصویر خاکستری به صورت ایزوتروپیک

3 - پیاده سازی الگوریتم لاپلاسین برای تشخیص خط با جهتی خاص در یک تصویر خاکستری به کمک فیلترهای شکل 

4 - تشیخیص لبه در یک تصیویر خاکستری به کمک فیلتر گرادیان سوبل شیکل 14-4 و نمایش تصیاویر گرادیان در جهت x ،گرادیان در جهت y و تصیییویر اندازه گرادیان |y| + |x| عملیاتی شبیه عملیات شکل 16-4 و مقایسه جهت لبه های تشخیص داده شده در هر یک

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

6 - تشخیص لبه در یک تصویر خاکستری هموار شده با فیلتر میانگین به کمک فیلتر گرادیان سوبل شکل 14-4 و نمایش تصاویر گرادیان در جهت x ،گرادیان در جهت y و تصیییویر اندازه گرادیان |y| + |x| عملیاتی شبیه عملیات شکل 18-4 و مقایسه جهت لبه های تشخیص داده شده در هر یک

7 - تشخیص لبه های قطری در یک تصویر خاکستری به کمک فیلتر گرادیان سوبل تصویر اندازه گرادیان |y| + |x|

8 - تشخیص لبه در یک تصویر خاکستری هموار شده با فیلتر میانگین به کمک فیلتر گرادیان سوبل شکل 14-4 ،یعنی تهیه تصویر اندازه گرادیان |y| + |x| و سپس آستانه گیری از این تصویر و نمایش آن

9 - بخش بندی یک تصویر بدون نویز خاکستری به کمک آستانه گیری سراسری

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

11 - بخش بندی یک تصویر نویزدار خاکستری به کمک هموارسازی و آستانه گیری سراسری

12 - بخش بندی یک تصویر نویزدار خاکستری که اندازه شی ء خیلی کوچکتر از پس زمینه باشد به کمک تصویر گرادیان و آستانه گیری سراسری

13 - بخش بندی یک تصویر خاکستری با روش رشد ناحیه با شرط تفاضل مطلق

14 -بخش بندی یک تصویر خاکستری با روش رشد ناحیه از طریق تقسیم و ادغام ناحیه، مطابق شکل 31-4 با شرطی دلخواه مثل متناسب بودن شدت نور ناحیه با پیکسل های همسایه

15 - با استفاده از دستور imnoise  بر روی یک تصویر grayscale چندین بار ( مثلا 100 بار ) نویز اضافه کنید و سپس با استفاده از میانگین گیری تصویر اصلی را بازیابی کنید.

16 - تصویر cameraman.tif را در نظر بگیرید و فیلتر ایده آل ، باترورث و گوسین بالاگذر با D0=10,20,40,80 را اعمال نموده و نتایج را نمایش دهید.

17 - تصویر T1.bmp را

الف ) با نویز Salt & Pepper  با چگالی نویز 0.04

ب ) با نویز گوسین با میانگین صفر و واریانس 0.06

ج ) نویز Speckle با واریانس 0.06

ترکیب نموده و نتایج فیلترهای زیر را با ماسک هایی به ابعاد 5*5 و 7*7 را بررسی نمایید.

Alpha Trimmed mean filter (d=mark size 2)

median filter

max and min filters

18 - الگوریتم مناسبی برای رنگ آمیزی  H & E  ( Hematoxylin and Eosin stain )  پیاده سازی کنید.

19 - روش های شناسایی لبه Sobel , Prewitt , Laplacian , LOG , Canny را در محیط متلب ( یا پایتون ) پیاده سازی کنید.

20 -

21 -

22 -

23 -

24 -

25 -

26 -

27 -

28 -

29 -

30 -

31 -

32 -

33 -

34 -

35 -

36 -

37 -

38 -

39 -

40 -

41 -

42 -

43 -

44 -

45 -

46 -

47 -

48 -

49 -

50 -

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

تکالیف متلب MATLAB - ماتریس دو بعدی ( کد Mat0056 )

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

2 - برنامه ای بنویسید که یک ماتریس دو بعدی دلخواه و عدد صحیح n را دریافت کند و تعداد ماتریس های n*n که تمامی درایه های آن ها غیر صحیح است را شمرده و چاپ کند.

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

4 - برنامه ای بنویسید که دو عدد صحیح و مثبت را دریافت نموده و بزرگترین مقسوم علیه مشترک آن دو عدد را نمایش دهد

5 - برنامه ای بنویسید که دو عدد صحیح و مثبت را دریافت نموده و کوچکترین مضرب مشترک آن دو عدد را نمایش دهد

6 - برنامه ای بنویسید که یک آرایه از اعداد صحیح و مثبت دریافت نموده از عنصر دوم تا عنصر یکی مانده به آخر به جای هر عدد میانگین دو عدد مجاور را قرار دهد

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

8 - برنامه ای بنویسید عدد صحیح و مثبت N را دریافت نموده و مجموع مقسوم علیه های اول آن را نمایش دهد.

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

10 - برنامه ای بنویسید که یک بردار مانند A را دریافت کرده و میانگین اعداد بردار را نمایش دهد

11 - برنامه ای بنویسید که بردار A شامل اعداد صحیح و مثبت را دریافت کرده و میانگین مجذور عناصر بردار را بدست آورد

12 - برنامه ای بنویسید که بردار A شامل اعداد صحیح و مثبت را دریافت کرده و سپس عناصر بردار A را مرتب نماید

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

14 - برنامه ای بنویسید که عدد صحیح و مثبت N را دریافت نموده اعداد مربع کامل (مانند 25،16،9،4،1) که کوچکتر از N هستند را نمایش دهد.

15 - برنامه ای بنویسید که دو آرایه از اعداد صحیح و مثبت به طول یکسان را دریافت نموده و سپس تعداد عناصر آن دو آرایه را که در جایگاه یکسان مقادیر یکسان دارند را نشان دهد.

16 - برنامه ای بنویسید که دو آرایه از اعداد صحیح و مثبت به طول دلخواه را دریافت نموده و سپس تعداد عناصر آن دو آرایه را که مقادیر یکسان دارند را نشان دهد.

17 - برنامه ای بنویسید که یک آرایه از اعداد صحیح و مثبت به طول دلخواه را دریافت نموده و سپس مجموع عناصری که جایگاه فرد دارند را محاسبه نماید

18 - برنامه ای بنویسید که یک آرایه از اعداد صحیح و مثبت به طول دلخواه را دریافت نموده و سپس مجموع عناصری که فرد هستند را محاسبه نماید

19 - برنامه ای بنویسید که عدد صحیح و مثبت N را دریاقت کرده و یک ماتریس مربعی از مرتبه N با اعداد تصادفی بین 1 تا N ایجاد نماید.

20 - برنامه ای بنویسید که یک ماتریس مربعی مرتبه N را دریاقت کرده و تعداد درایه های مساوی صفر آن ماتریس را نمایش دهد.

21 - برنامه ای بنویسید که یک آرایه از اعداد صحیح مثبت را دریافت نموده آرایه را به صورت صعودی و نزولی مرتب نماید ( از دستور sort استفاده ننمائید)

22 - برنامه ای بنویسید که یک عدد صحیح مثبت را دریافت نماید و تمام مقسوم علیه های آن را در یک آرایه نمایش دهد ( از دستور divisors استفاده نکنید )

23 - برنامه ای بنویسید که یک آرایه از اعداد صحیح مثبت را دریافت نماید و اعداد اول درون آرایه را نشان دهد

24 - برنامه ای بنویسید که یک عدد صحیح مثبت را دریافت نماید و مجموع مقسوم علیه های اول آن را نمایش دهد

25 - برنامه ای به منظور ایجاد دفترچه تلفن، طراحی و پیاده سازی کنید.

اطلاعات هر مخاطب شامل نام و شماره تماس است. اسامی مخاطبین منحصر به فرد بوده و برای هر مخاطب امکان ثبت چند شماره ( حداکثر 3 مورد ) وجود دارد.

خدمات زیر توسط برنامه به کاربر ارائه می شود: ثبت اطالعات مخاطب جدید ، حذف مخاطب ، جستجوی شماره تماس مخاطب مورد نظر ، نمایش لیست مرتب شده الفبایی مخاطبین

26 - دستور حل معادلات جبری به روش نیوتن را بنویسید. یک معادله را به دلخواه تعریف کنید و دستور مناسب را برای یافتن پاسخ بنویسید.

27 -

28 -

29 -

30 -

 

 

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

تکالیف متلب MATLAB - چند جمله ای ها ( کد Mat0049 )

1 - برنامه ای که یک بردار 100*1 از اعداد تصادفی بین 1 تا 100 دریافت کند ( اعداد اعشاری ) و سپس آن ها را به صورت صعودی مرتب کند. ( اجازه استفاده از دستور sort را ندارید و باید با استفاده از حلقه ها بردار را مرتب کنید )

2 - یک تابع بنویسید که دو چند جمله ای از درجه دلخواه را جمع یا تفریق یا ضرب نمیاد. از p=polyaddsubmult(p1,p2,operation) به عنوان نام تابع استفاده نمایید. دوپارامتر نخست ورودی p1و p2 بردارهای ضرایب دو چند جمله ای می باشند. ( دقت شود که در جکع یا تفریق اگر دو چند جمله ای هم درجه نباشند ، تابع به تعداد کافی عناصر صفر به بردار کوچکتر اضافه کند، اما در ضرب، دو چند جمله ای می توانند از درجه دلخواه باشند. ) پارامتر سوم ورودی operation یک رشته است، که برای جمع یا تفریق و یا ضرب بردارها باید به ترتیب از add یا sub و یا mult استفاده شود. پارامتر خروجی بردار ضریاب چند جمله ای حاصل می باشد.

3 - برنامه مربوط به polyaddsubmult را به گونه ای بنویسید که سه زیرتابع polyadd , polysub و  polymult به ترتیب برای محاسبه جمع دو چند جمله ای ، تفریق دو چند جمله ای و ضرب دو چند جمله ای استفاده نماید.

4 - همچنین برنامه ای را در یک فایل منتی جهت دریاف بردارهای دو چند جمله ای و رشته مورد نظر جهت جمع ، تفریق یا ضرب بردارها operation و در نهایت جهت نمایش خروجی ( حاصل جمع ، یا حاصل تفریق ، یا حاصل ضرب بردارهای مورد نظر ) بنویسید. این برنامه باید به گونه ای نوشته شود که از تابع polyaddsubmult استفاده نماید. نام این فایل متنی را polynomial قرار دهید.

 5 - دستور MATLAB  برای هریک از موارد زیر را بنویسید و برای هر کدام یک مثال بزنید

حل دستگاه خطی

محاسبه دترمینان ماتریس

  محاسبه چند جمله ای مشخصه ماتریس

محاسبه بردارهای ویژه ماتریس

تبدیل یک مجموعه مستقل خطی از بردارها به یک مجموعه متعامد یکه از بردارها با فضای تولید شده یکسان

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

7 - قوانین و محدودیت های انتخاب اسامی متغییر ها را بنویسید.

* نام متغیر باید از حروف کوچک و بزرگ ، اعداد و علامت _ تشکیل شده باشد

* نام متغییر نمی تواند با عدد یا _ شروع شود و حتما باید با حروف کوچک و بزرگ شروع شود.

* در نام متغییر نمی توان فاصله space گذاشت.

* نمی توان نام متغیر را در دو سطر نوشت.

* از کلمات رزرو شده مانند for  و  if  و ...  و توابع داخلی متلب نمی توان به عنوان متغیر استفاده کرد

* متلب حساس به حروف بزرگ و کوچک می باشد. این گفته، به این معنی است که بین حروف بزرگ و کوچک، تفاوت وجود دارد

* حداقل طول یک متغیر یک کاراکتر و حداکثر طول آن 63 کاراکتر است.

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

الف - whos

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

10 - ابتدا برداری متناظر با ریشه های یک چند جمله ای تشکیل داده ، سپس چند مله ای متناظر با آن را پیدا کنید.

11 - تابعی دلخواه 3 متغییره ابتدا بنویسید و سپس بر حسب یکی از متغییر ها مرتب کنید.

12 - کاربر دستورهای expand و  factor را در مثالی دلخواه بررسی کنید.

13 - دستگاه معادلات زیر را با استفاده از دستور solve حل نموده و مجهولات را با استفاده از نرم افزار MATLAB بدست آورید.

\[\left\{\begin{matrix}-4x+5y=-10\\3.5x-12y=8.5\end{matrix}\right.\]
\[\left\{\begin{matrix}-4x+5y-15z=54\\3.5x-12y+0.5z=44\\8x-y+7z=-16\end{matrix}\right.\]
\[\left\{\begin{matrix}-4x+5y-15z-6u=45\\3.5x-12y+0.5z-3.5u=-36\\8x-y+7z-7u=18\\-x+4y-z+8u=32\end{matrix}\right.\]
\[\left\{\begin{matrix}-4x+5y-15z-6u+20w=100\\3.5x-12y+0.5z-3.25u-10w=-30.6\\8x-y+7z7u+15w=108\\-x+4y-z+8u-0.002w=-23\\x-y+z-u+w=55\end{matrix}\right.\]

14 - ریشه های چند جمله ای زیر را بدست آورید.

\[A=-0.5x^{14}+3.2x^{12}-1.5x^{10}+0.03x^{8}+4x^{6}+1.5x^{4}-0.00045x^{2}-8\]
\[B=13x-13x^{8}+2x^{5}+7.5x^{7}-2\]

15 - چهار نوع داده مختلف و دلخواه در نظر بگیرید.

الف - نمودار هر کدام را به صورت مجزا رسم نمایید.

ب - هر چهار نمودار را در یک شکل رسم نمایید.

ج - شکل را به چهار بخش کرده و در هر کدام یک نمودار را رسم کنید

د - شکل را به شش قسمت تقسیم کنید ، در دو بخش اول آن یک شکل از هر چهار منحنی را رسم کنید و در سایر بخش ها به صورت دو به دو منحنی هار ا مقایسه کنید.

 

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

تکالیف پردازش تصویر - عملیات مورفولوژیکی ( کد Mat0048 )

1 - پیاده سازی عملیات ساییدگی یک مربع مشکی 200*200 پیکسل با عنصر سازنده مربع مشکی 20*20 پیکسل و 60*20 پیکسل

2 - پیاده سازی عملیات ساییدگی روی یک تصویر باینری

3 - پیاده سازی عملیات انبساط یک مربع مشکی 200*200 پیکسل با عنصر سارنده مربع مشکی 20* 20 پیکسل و 60*20 پیکسل

4 - پیاده سازی عملیات انبساط روی یک تصویر باینری 

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

6 - انجام عملیات انبساط بر روی یک تصویر باینری دلخواه مناسب ، با استفاده از تابع آماده ساییدگی  MATLAB و مقایسه نتیجه آن با  اجرای انبساط به صورت کدنویسی شده

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

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

9 - پیاده سازی عملیات بازکردن و سپس بستن بر روی یک تصویر باینری دلخواه مناسب و بررسی مزایا و معایب هر مرحله

10 - پیاده سازی عملیات تبدیل اصابت  روی یک تصویر باینری 

11 - پیاده سازی عملیات استخراج مرز روی یک تصویر باینری

12 - پیاده سازی عملیات پرکردن سوراخ  روی یک تصویر باینری

13 - پیاده سازی عملیات استخراج مولفه های متصل روی یک تصویر باینری

14 - پیاده سازی عملیات پوسته محدب روی یک تصویر باینری

15 - پیاده سازی عملیات نازک کردن روی یک تصویر باینری

16 - پیاده سازی عملیات ضخیم کردن روی یک تصویر باینری

17 - پیاده سازی عملیات انبساط ژئودزیک روی یک تصویر باینری

18 - پیاده سازی عملیات ساییدگی و انبساط یک تصویر خاکستری با عنصر سازنده تخت 

19 - پیاده سازی عملیات بازکردن و بستن یک تصویر خاکستری با عنصر سازنده تخت

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

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