nina222 56 مالک اشتراک گذاری ارسال شده در 23 بهمن، ۱۳۹۳ این چه حرفیه، انجمن برای سوال کردن دیگه. خب زهرا خانوم توضیح دادن، شما سطوح روشنایی تصویر ورودیت بین 0 تا 255 هست، این منحنی cdf هم که حساب کردی توی 256 تا درایه داره که مقادیر جدید این پیکسل های داخلش قرار داره، تنها کاری که باید انجام بشه اینه که دونه دونه پیکسل ها مفدارشون بررسی بشه (دو تا حلقه اینکار رو می کنن، جهت افقی و عمودی)، بعد هر مقداری داست با یک جمع می کنیم چون آدرس ها توی متلب از یک شروع میشه دیگه، مقدار جدید رو از بردار cdf بر می داریم، مثلا اگه مقدار قبلی پیکسلمون 10 باشه، مقدار جدیدش میشه درایه 11 بردار cdfمون. در مورد اون فرمول هم باید بیشتر توضیح داده بشه، هر کدوم از این متغیر هایی که استفاده شدن چی هستن، int فکر کنم برای integer باشه، L هم تعداد سطوح روشنایی. سلام مقدار جدید رو چطور بر می داریم؟ یا اون out که من گذاشتم درست هست یا غلط؟ 1 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 23 بهمن، ۱۳۹۳ سلاممقدار جدید رو چطور بر می داریم؟ یا اون out که من گذاشتم درست هست یا غلط؟ مثلا تصویر وردی مون این باشه با 8 سطح روشنایی: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام خب ماتریس cdfمون رو در 7 ضرب کردیم و رندشون کردیم، مثل ورودی مون بین 0 تا 7 بشه: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام یعنی به جای سطح روشنایی اول و دوم باید 0 بذاریم، برای سطح روشنایی سوم باید 1 بذاریم، برای سطح روشنایی چهارم (یعنی 3) باید 3 بذاریم، همینطور تا آخر، تصویر خورجی مون میشه این: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام 2 لینک به دیدگاه
nina222 56 مالک اشتراک گذاری ارسال شده در 23 بهمن، ۱۳۹۳ مثلا تصویر وردی مون این باشه با 8 سطح روشنایی: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام خب ماتریس cdfمون رو در 7 ضرب کردیم و رندشون کردیم، مثل ورودی مون بین 0 تا 7 بشه: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام یعنی به جای سطح روشنایی اول و دوم باید 0 بذاریم، برای سطح روشنایی سوم باید 1 بذاریم، برای سطح روشنایی چهارم (یعنی 3) باید 3 بذاریم، همینطور تا آخر، تصویر خورجی مون میشه این: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام مرسی. خیلی محبت کردید همه دوستان اما من نتونستم پیاده سازیش کنم. 1 لینک به دیدگاه
zahra jalili 746 اشتراک گذاری ارسال شده در 23 بهمن، ۱۳۹۳ این الگوریتم تعدیل سازی هیستوگرام هست: اینم کد مربوطه که من ازش جواب گرفتم: f=imread('0.jpg'); hnorm=imhist(f)./ numel(f); cdf=round(cumsum(hnorm)*255); for i=1:size(f,1) for j=1:size(f,2) f(i,j)=cdf(f(i,j)+1); endend imhist(f) تصویری که هم گذاشتین، واضح نیست! یه کد دیگه هم از تعدیل سازی هیستوگرام دارم که بدون استفاده از توابع متلب نوشته شده، اگه خواستی برات بفرستم. 2 لینک به دیدگاه
nina222 56 مالک اشتراک گذاری ارسال شده در 24 بهمن، ۱۳۹۳ سلام زهرا جان دستتون درد نکنه محبت کردید من دوباره عکس از هر کدوم فرمول ها جدا عکس گرفتم(3 تا عکس) محبت می کنید یه نگاه بندازید؟ عزیزم لطف کردید من برام با حلقه ها کار کردن خیلی سخت هست. الانم بس که استرس دارم دیگه اوضاع بدتر شده. 2 لینک به دیدگاه
nina222 56 مالک اشتراک گذاری ارسال شده در 24 بهمن، ۱۳۹۳ سلام زهرا جان دستتون درد نکنه محبت کردید من دوباره عکس از هر کدوم فرمول ها جدا عکس گرفتم(3 تا عکس) محبت می کنید یه نگاه بندازید؟ عزیزم لطف کردید من برام با حلقه ها کار کردن خیلی سخت هست. الانم بس که استرس دارم دیگه اوضاع بدتر شده. به اون L-1 و 0.5 تو فرمول3 شک دارم که نکنه فرق داشته باشه 1 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 26 بهمن، ۱۳۹۳ سلام زهرا جان دستتون درد نکنه محبت کردید من دوباره عکس از هر کدوم فرمول ها جدا عکس گرفتم(3 تا عکس) محبت می کنید یه نگاه بندازید؟ عزیزم لطف کردید من برام با حلقه ها کار کردن خیلی سخت هست. الانم بس که استرس دارم دیگه اوضاع بدتر شده. به اون L-1 و 0.5 تو فرمول3 شک دارم که نکنه فرق داشته باشه سلام به نظرم L باید همون 256 (تعداد سطوح) باشه، که یکی کم می کنیم بشه ماکزیمم سطح روشنایی، اون نیم هم واسه این گذاشته اگه به مقدار بالایی نزدیک تر بود به اون گرد بشه، مثلا من عددم وقتی در L منهای یک ضرب میشه بدست بیاد، 200.75، همینجوری به پایین گرد کنه میشه 200، ولی وقتی با نیم جمع کنه بعد گردش کنه به پایین میشه 201. 3 لینک به دیدگاه
nina222 56 مالک اشتراک گذاری ارسال شده در 26 بهمن، ۱۳۹۳ سلامبه نظرم L باید همون 256 (تعداد سطوح) باشه، که یکی کم می کنیم بشه ماکزیمم سطح روشنایی، اون نیم هم واسه این گذاشته اگه به مقدار بالایی نزدیک تر بود به اون گرد بشه، مثلا من عددم وقتی در L منهای یک ضرب میشه بدست بیاد، 200.75، همینجوری به پایین گرد کنه میشه 200، ولی وقتی با نیم جمع کنه بعد گردش کنه به پایین میشه 201. سلام پس احتمالا به جای استفاده از hiteq باید خود این فرمول رو پیاده سازی کنم. می دونید T و Tmin چطور محاسبه می شه؟ 1 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 27 بهمن، ۱۳۹۳ سلامپس احتمالا به جای استفاده از hiteq باید خود این فرمول رو پیاده سازی کنم. می دونید T و Tmin چطور محاسبه می شه؟ سلام خیلی شبیه histeq هست. T رو که فرمولش رو داری، وقتی محاسبه ش کردی، کوچکترین مقدارش میشه Tmin. 3 لینک به دیدگاه
nina222 56 مالک اشتراک گذاری ارسال شده در 2 اسفند، ۱۳۹۳ سلام من چند تا سئوال داشتم . اگر راهنمایی بفرمایید ممنون میشم. ا) دستور hist ,histeq برای تصاویر از نوع unit8 هستند و نمی شه برای تصویر از نوع double استفاده بشن؟ 2) وقتی یه تصویر به double تبدیل می شه دیگه نمی شه خط افقی هیستوگرام از 0 تا 255 باشه؟ برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام وقتی بیشترین مقدار L یک هست چه طور باید خط افقی از 0 تا 255 باشه؟ چطوری رسمش کنم درست دستور plot(h,256) رو بلدم اما باز یه جور دیگه رسم می کنه. 1 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 2 اسفند، ۱۳۹۳ سلام من چند تا سئوال داشتم . اگر راهنمایی بفرمایید ممنون میشم. ا) دستور hist ,histeq برای تصاویر از نوع unit8 هستند و نمی شه برای تصویر از نوع double استفاده بشن؟ 2) وقتی یه تصویر به double تبدیل می شه دیگه نمی شه خط افقی هیستوگرام از 0 تا 255 باشه؟ برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام وقتی بیشترین مقدار L یک هست چه طور باید خط افقی از 0 تا 255 باشه؟ چطوری رسمش کنم درست دستور plot(h,256) رو بلدم اما باز یه جور دیگه رسم می کنه. سلام ببین نینا خانوم متلب تصویر دابل رو بین یک و صفر فرض می کنه، یعنی مقادیر بزگتر از یک رو یک در نظر می گیره و مقادیر کوچیکتر از صفر رو هم صفر، در واقع تصویرت رو تقسیم بر 255 می کنی. به جای دستور double برای تصویر از im2double استفاده کن، مقادیر خروجیش بین صفر و یک میشه: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام برای نمایشش هم باید از stem استفاده کنی که شبیه متلب بشه: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام 3 لینک به دیدگاه
ارسال های توصیه شده