اطلاعیه

Collapse
No announcement yet.

کمک درباره مقاله GVF

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    #46
    پاسخ : کمک درباره مقاله GVF

    سلام ................

    من پیگیری میکنم؛ نتیجه ی اون رو توی همین تاپیک قرار میدم .. موفق باشید ..
    دوستان! مدتی کمتر به سایت میام ..

    دیدگاه


      #47
      پاسخ : کمک درباره مقاله GVF

      با سلام وعرض ادب
      ببخشید آیا مقالاتی که تصاویر تومور دار در اون بود بدست شما رسید؟ اون مقالات رو من به ایمیل شما فرستادم اگه نرسیده بفرمایید که دوبار اونارو برای شما سند کنم
      با کمال تشکر

      دیدگاه


        #48
        پاسخ : کمک درباره مقاله GVF

        نوشته اصلی توسط siakamary
        با سلام وعرض ادب
        ببخشید آیا مقالاتی که تصاویر تومور دار در اون بود بدست شما رسید؟ اون مقالات رو من به ایمیل شما فرستادم اگه نرسیده بفرمایید که دوبار اونارو برای شما سند کنم
        با کمال تشکر
        سلام ..................

        بله .. میلتون رسیده؛ فایل هاتون هم دانلود کردم منتهی هنوز فرصت پیدا نکردم با برنامه چکش کنم .. آخر هفته سعی میکنم حتما به این موضوع وقت اختصاص بدم و نتیجه رو اعلام کنم .. موفق باشید ..
        دوستان! مدتی کمتر به سایت میام ..

        دیدگاه


          #49
          پاسخ : کمک درباره مقاله GVF

          سلام ................

          من از PDF هایی که برام فرستاده بودید، سه تا تصویر نمونه رو به عنوان مواردی که برای تست با این الگوریتم احتیاج بود، انتخاب کردم و برنامه رو با اونها تست کردم .. نتایجی که در ادامه روی اونها صحبت میکنیم هرکدوم علت و دلیلی داره که میشه برای ارتقا به اونها فکر کرد .. فقط یه توصیح کوتاه و اون اینکه اگه بخوایم الگوریتم رو بدون تغییر روی تصاویر تست کنیم با مشکل روبرو میشیم؛ چرا که فضای که در الگوریتم در حوزه ی رنگی در نظر گرفته شده یه فضای 2D هست (برای اینکه Level رنگیمون Gray Scale هست..) امــا تصاویری که ما از اونها استفاده میکنیم، توی Level دیگه ای هستن (RGB هستن..) .. پس اولین تغییری که برای adapt شدن الگوریتم با تصاویر باید انجام بدیم اینه که ایتن تغییر رو اعمال کنیم .. با این توضیح میریم سراغ نتایج و توضیحاتی که روی اونها ممکنه به وجود بیاد ..

          اولین تصویری که با اون برنامه رو تست کردم، تصویر زیر بود .. تفاوتی که کلا در این تصاویر (تصاویر مغز..) با تصویر im_lung وجود داره (تصویری که توی خود Paper اولی AMT بهش استناد شده..) اینه که اینا در گوشه ها دارای concavity هستن و اگه ما Bounding Box این تصاویر رو هم داشته باشیم؛ باز هم این Concavity رو نتونستیم توی اسلاید از بین ببریم .. اشکالی که به وجود میاد کجاست یا بهتر بگم، چرا این مطلب رو عنوان کردم؟ دلیل این مطلب توی تصاویر دوم و سوم کاملا مشخص میشه امــا در مجموع اینطور میشه گفت که برای پیدا کردن محل غده ها توی مغز، الگوریتم PIG باید بر حسب Boundary Extraction عمل کنه امــا اینجا چون در لبه ها Concavity داریم، الگوریتم Boundary خود مغز رو پیدا میکنه و نمیتونه به محدوده ی داخلی نفوذ کنه .. راه حلی که برای حل کردن این مشکل میشه مطرحش کرد رو آخر مطالب باهم بحث میکنیم ..

          تـصـویـر اول ..


          نـتـایـج پیاده سازی مستقیم ..


          نـتـایـج پیاده سازی در فضای رنگی نقیض ..


          منظور از فضای رنگی نقیض اینه که قرینه ی پیکسل هارو قرار بدیم و با اون تصویر رو ببینیم .. اگه Level رنگی ما باینری بود؛ این تعبیر اینطور نتیجه گیری میشد که هر پیکسلی که سیاهه، سفید بشه و برعکس .. توی Level رنگی Gray Scale هم وضعیت به این ترتیبه با این تفاوت که در مقیاس 255 بحث میشه .. برای اینکار هم تصویر رو از 253 کمش کردیم .. یعنی تقریبا مکمل اونهم در Level رنگی Gray Scale .. حالا چرا 255 نذاشتیم؟ چون در ادامه به Length تصویر در تابع AC_AMT اشکال وارد میشه و برنامه Run نمیشه .. توی برنامه هم تغییرات زیر رو باید اعمال کنیم .. (یک بار خط آخر رو از برنامه حذف میکنید که به طور معمول در فضای رنگی مستقیم برنامه اجرا میشه و بار دیگه خط آخر رو بهش اضافه میکنید (% رو بر میدارید و به خط بالاییش متغییر dd رو اطلاق میکنید ..) و بعد برنامه رو اجرا میکنید که در این صورت فضای رنگیتون نقیض میشه ..)



          تـصـویـر دوم ..


          نـتـایـج پیاده سازی مستقیم ..


          نـتـایـج پیاده سازی در فضای رنگی نقیض ..


          ==========================

          تـصـویـر سـوم ..


          نـتـایـج پیاده سازی مستقیم ..


          نـتـایـج پیاده سازی در فضای رنگی نقیض ..


          خب نتایج رو ملاحظه میکنید؟ به نظرتون مشکل از چی میتونه باشه؟ طبیعتا یه مشکل بزرگی که وجود داره احتمالا بر میگرده به همون Concavity ای که در Bonding Box ها وجود داره .. حالا درسته که تصویر اول یک مقدار خوب جواب داده امــا تصاویر دوم و سوم خیلی نتایج جالبی ندارن .. (البته شاید تصاویری که برای مغز در نظر گرفتیم هم زیاد جالب نباشن، امــا اینها تصاویری هستن که توی Paper اومده و قاعدتا باید با اونها هم به نتیجه برسیم؛ هر چند که روشمون متفاوت باشه .. ) بحث Concavity بحثیه که توی مدل های Parametric خیلی مهمه و نکته ایه که اگه خواستید روش بیشتر صحبت میکنیم .. مساله ای که من رو وادار کرد تا از فضای رنگی نقیض استفاده کنم؛ این بود که خود الگوریتم روی تصویر im_lung پیاده سازی شده بود و اونجا زمینه ی سیاه ارزش بیشتری داشت و همونطور هم که میبینید توی تصاویر اول؛ همه ی نتایج منتهی شده به Boundary خود مغز .. امــا با نقیض کردن فضا، الگوریتم به داخل مغز برمیگرده و این نکته ای بود که در بالا اشاره کردیم .. مساله ی دیگه ای که هست اینه که Color Distribution تصویر اول خیلی بهتره تا تصویر دوم و سوم .. تصویر دوم که اصلا هیچی! خیلی sample بدیه .. امــا سومی نسبتا خوبه و میتونیم بگیم مثل تصویر اوله ولی تحلیل هیستوگرام چیز دیگه ای میگه..

          هیستوگرام تصویر اول ..


          هیستوگرام تصویر سوم ..


          میبینید؟ یگانگی حوزه ی رنگی ماگزیمم در تصویر اول خیلی بیشتره تا تصویر سوم (یعنی از نظر Regional میتونیم بگیم Discriminative تره .. ) و این عامل باعث شده که Result خوبی داشته باشیم .. امــا معمولا برای پیدا کردن اینگونه موارد باید تصویر رو Crop کنیم به طوریکه بتونیم صرفا روی یک ناحیه خاص متمرکز بشیم .. مثلا اگه همون تصویر سوم رو مثل شکل زیر Crop کنیم و الگوریتم رو روش تست کنیم میتونیم نتیجه ی خوبی از پیاده سازی الگوریتم بگیریم ..

          تـصـویـر Crop شده ..


          نـتـیـجـه ی پیاده سازی الگوریم در فضای نقیض ..


          حالا نظری که میتونه برای بهبود الگوریتم مفید باشه اینه که شما به نوعی تمرکز تصویریتون رو بذارید روی ناحیه ای که احتمال میدید در اونجا غده وجود داره .. مسلما این ناحیه یه Feature خاص داره و میتونه شناخته بشه (من زیاد اطلاعی از این مورد ندارم ..) ولی مثلا میتونید یه فیلتر یا یه کرنل روی تصویر قرار بدید و موظفش کنید به اینکه مثلا روی مقادیر خاص پیکسلی (یه threshold خاص مثلا..) تقویت انجام بده و روی پیکسل هایی که از اون شرط پیروی نمیکنن، تضعیف .. یعنی مقادیرشون رو به ترتیب زیاد و کم کنه اونهم با نسبتی معین .. اینطوری چه اتفاقی میوفته؟ ناحیه ای که دارای غده هست؛ Bold تر میشه و نواحی مجاورش Cancel میشن .. اون تصویر رو اگه به جای تصویر Crop شده ی قبلی قرار بدید مطمئنا ناحیه ای که براتون Segment میشه؛ غده یا تومور خواهد بود .. امیدوارم مطالب براتون تکراری نبوده باشه .. .. ضمنا تصاویر و فایل برنامه رو براتون ضمیمه کردم .. موفق باشید ..
          فایل های پیوست شده
          دوستان! مدتی کمتر به سایت میام ..

          دیدگاه


            #50
            پاسخ : کمک درباره مقاله GVF

            با سلام وعرض ادب به شما
            من چند سوال داشتم که در زیر به ترتیب آنها نیز مطرح میکنیم
            1)یه منبع رو می خوام که بتونم level تصاویر رو مطالعه کنم چون میخوام بیشتر بدونم، تمام اون چیزیایی رو که شما برام سند کرده بودید قابل درک بود برام اما میخوام با توسعه اطلاعاتم برام روشن تر بشه اون منبع به نظرشما بهتر چی باشه؟
            2)شما در تایپک قبلی برام نوشته بودید که پیادهسازی مستقیم یعنی پروژه رو با خود همون عکسها تست کردید؟
            3)پیاده سازی در فضای رنگی نقیض در level gray scaleدر مقیاس 255است یعنی اینکه در این level ما دارای 255 رنگ متمایز هستیم که با کم کردن شماره رنگ مورد نظر از 253نقیض یا معکوس همان رنگ بدست می آید چون طبق مطالب شما و آنچه که خودم نیز در درس هام فهمیدم نقیض یا متمم یه عدد با کم کردن اون از مبنای مورد نظر بدست می آید؟
            4) واما وجود تومور در مغز در ناحیه ی خاصی نیست مثلا بگیم که تومور با احتمال خاصی در قسمت تحتانی مغز یا در قسمت مخچه یا در هر قسمت دیگر باشد ولی یه نکته قابل تامل وجود داره اونم اینه که فشردگی مغز در قسمتی که تومور هست و اطراف تومور بیشتر از قسمتهای دیگر مغز است چون به دلیل وجود تومور و گسترش تومور مغز در اون نقاط فشرده تر میشه یه سری اطلاعات بیشتر در مورد تومور ها دارم میتونم اونا رو هم برای شما سند کنم اما اونا به ما کمک نمی کنندچون در عکس همچنین اطلاعاتی وجود نداره با این وجود اگه خواستید اونا رو هم براتون سند می کنم
            5)و آخرین مورداینکه از ه روش cropصحبت کرده بودید که فکر کنم مطئمن ترین روش برای پیدا کردن توده باشه؟
            با کما ل تشکر

            دیدگاه


              #51
              پاسخ : کمک درباره مقاله GVF

              سلام .................

              یه منبع رو می خوام که بتونم level تصاویر رو مطالعه کنم چون میخوام بیشتر بدونم، تمام اون چیزیایی رو که شما برام سند کرده بودید قابل درک بود برام اما میخوام با توسعه اطلاعاتم برام روشن تر بشه اون منبع به نظرشما بهتر چی باشه؟
              منظورتون از Level های تصویر چیه؟ فضای رنگی منظورتون هست؟ اگه بله که میتونم خود کتاب گونزالس رو بهتون معرفی کنم .. این تفاوت هارو خیلی عالی توضیح داده .. اگه منظورتون هم مطلب دیگه ای بود که شرمنده .. متوجه نشدم ..

              شما در تایپک قبلی برام نوشته بودید که پیادهسازی مستقیم یعنی پروژه رو با خود همون عکسها تست کردید؟
              همون عکس ها منظورتون کدوم عکس هاست؟ اینایی که توی فایل آخری براتون گذاشتم؟ اگه منظورتون اینا هست که باید بگم؛ بله .. نتایج رو هم که براتون گذاشتم .. امــا اگه منظورتون مطلب دیگه ای بود که شرمنده .. متوچه نشدم ..

              پیاده سازی در فضای رنگی نقیض در level gray scaleدر مقیاس 255است یعنی اینکه در این level ما دارای 255 رنگ متمایز هستیم که با کم کردن شماره رنگ مورد نظر از 253نقیض یا معکوس همان رنگ بدست می آید چون طبق مطالب شما و آنچه که خودم نیز در درس هام فهمیدم نقیض یا متمم یه عدد با کم کردن اون از مبنای مورد نظر بدست می آید؟
              منظورم همونیه که توی تصاویر اومده .. شاید نتونستم معادل فارسیش رو درست بگم .. ببینید توی دو تا تصاویری که گذاشتم چه اتفاقی افتاده .. دقیقا متوجه جریان میشید .. عنوانش رو شاید بد انتخاب کردم .. شما بگید A و A Complement ..

              واما وجود تومور در مغز در ناحیه ی خاصی نیست مثلا بگیم که تومور با احتمال خاصی در قسمت تحتانی مغز یا در قسمت مخچه یا در هر قسمت دیگر باشد ولی یه نکته قابل تامل وجود داره اونم اینه که فشردگی مغز در قسمتی که تومور هست و اطراف تومور بیشتر از قسمتهای دیگر مغز است چون به دلیل وجود تومور و گسترش تومور مغز در اون نقاط فشرده تر میشه یه سری اطلاعات بیشتر در مورد تومور ها دارم میتونم اونا رو هم برای شما سند کنم اما اونا به ما کمک نمی کنندچون در عکس همچنین اطلاعاتی وجود نداره با این وجود اگه خواستید اونا رو هم براتون سند می کنم
              ببینید من گفتم شاید اینطوری باشه .. اولش هم که عرض کردم اطلاعات من توی اون زمینه ناچیزه (مثل زمینه های دیگه ..) .. شاید اینطور بگم خیلی بهتر باشه .. روزی که آقای XU این متدهارو مطرح کرد (Snakes..) به موارد و آبجکت های خیلی خاص برای Implementation Results استناد میکرد .. با تکمیل متدش کم کم آبجکت ها ی خلیل خاص تر وارد Test domain شدن و روی یکی از اونها واقعا به مشکل خورد .. فکر نکنم هنوز هم تونسته باشه برای اون متدی ارائه کنه .. حالا تصویر چی بود؟ خیلی ساده بخوام بگم؛ فرض کنید یه کلید رو که قسمت سرش یک حفره داره .. حالا حلقه ی Initial که برای این تصویر میذاریم کاملا محدود عمل میکنه .. چرا؟ چون نمیتونه هم اون حفره رو Segment کنه و هم Boundary خود کلید رو .. اینجا هم دقیقا همچین اتفاقی افتاده .. برای همین باید به فکر Crop بود .. حالا برای Crop میتونید از فیلتر هایی استفاده کنید که اهمیت اون نواحی رو بیشتر کنن .. متوجه منظورم هستید که .. فرض کنید Goal شما اینه که اون ناحیه رو با متدهای ROI به دست بیارید .. حالا چیکار میکنید؟ این راه حل منه ..


              و آخرین مورداینکه از ه روش cropصحبت کرده بودید که فکر کنم مطئمن ترین روش برای پیدا کردن توده باشه؟
              در مورد Crop که فکر کنم با پاسخ سوال قبلیتون پوشش داده شد .. موفق باشید ..
              دوستان! مدتی کمتر به سایت میام ..

              دیدگاه


                #52
                پاسخ : کمک درباره مقاله GVF

                با سلام وعرض ادب
                در چند روز گذشته یه اتفاق برام افتاد که نمی تونستم زیاد پی در سهام بیام اما از امروز دوباره اومدم که بیشتر به در سام توجه کنم.
                1) من چطوری می تونم تکنیک cropرا روی عکسهای مغز انجام بدم میخام که این کار رو برای تمام اون عکسا انجام بدم و ببینم که چقدر نتیجه در مورد این عکسا درسته .
                2) الگوریتم رو باید در کجاها تغییر بدیم .البته شما فرموده بودید levelعکسهایی که ما با اونا کار می کنیمRGBاست والگوریتم مورد نظر در فضا یا محدوده 2D پیاده سازی شده است و اولین تغییر برای ADAPT شدن الگوریتم با عکسا همینه این کاره چطوری می تونم اینکار ها رو انجام بدم.

                با کمال تشکر از شما

                دیدگاه


                  #53
                  پاسخ : کمک درباره مقاله GVF

                  سلام ................

                  امیدوارم مساله ی خاصی پیش نیومده باشه ..

                  من چطوری می تونم تکنیک cropرا روی عکسهای مغز انجام بدم میخام که این کار رو برای تمام اون عکسا انجام بدم و ببینم که چقدر نتیجه در مورد این عکسا درسته
                  بستگی داره به دو سه تا مورد ..

                  مثلا اینکه اگه شما تصاویرتون یه Scale خاص داشته باشن؛ میتونید ناحیه ای که با وجود تومور تغییر میکنه رو جدا کنید یا اینکه صرفا اون محدوده رو با یه تقریب شعاعی خاص (که در واقع یه مربع یا مستطیل رو به شما میده..) جدا کنید .. مثلا همون مثالی که توی دو پست قبل براتون گذشتم فکر میکنید به چه ترتیب Crop شده بود؟ یه مختصات فرضی بهش دادم و با دستور imcrop جداسازی رو انجام دادم .. حالا بحث سر اینه که اون مختصات به چه ترتیبی انتخاب بشه که اولا به محدوده ی مغزی نزدیکتر باشه (برای Detect کردن تومور..) و دوما اطلاعات Redundant کمتری داشته باشه .. برای همین من توی پست قبل این ایده به ذهنم اومد که شاید بتونید با استفاده از تکنیک های ROI این Color Specification رو به انجام بدید .. مثلا بگید اونجاییکه که Intensity بالاتره (روشن تره..) یه جور Fire بشه برای ROI .. فکر کنم اگه روی این ایده کار کنید بد نباشه .. چیزی که باید بدونید اطلاعات رنگیه .. البته اگه تومور اطلاعات رنگی متفاوتی داشته باشه .. اگر هم اونقدر حساسیت کار بالا نباشه میتونید مختصات های Default اعمال کنید و اسلایدتون رو Crop کنید .. فکر نکنم این هم نتیجه ی بدی داشته باشه..

                  الگوریتم رو باید در کجاها تغییر بدیم .البته شما فرموده بودید levelعکسهایی که ما با اونا کار می کنیمRGBاست والگوریتم مورد نظر در فضا یا محدوده 2D پیاده سازی شده است و اولین تغییر برای ADAPT شدن الگوریتم با عکسا همینه این کاره چطوری می تونم اینکار ها رو انجام بدم.
                  نمیخوام اشکال بیمورد بگیرم امــا اگه بگیم فضای رنگی 2D خیلی بهتره .. میدونید چرا این رو گفتم؟ چون برخی مواقع PM هایی دریافت میکنم که به نوع انتخاب واژه ها هم نقیصه وارد کردن(اصل مطلب رو رها کردن؛ چسبیدن به فــــرع..!!)

                  در مورد تغییر الگوریتم که من توی پست دوتا قبل خدمتتون عرض کردم .. برنامه ای که ضمیمه ی اون پست شده اون تغییر رو اعمال کرده .. همون دستوری که توی کادر نوشتیم .. یه تبدیل rgb2gray معمولی قبل از Image Read گذاشتیم؛ مشکلمون حل شد .. اگه برنامه منطبق بر فضای رنگی 2D نبود؛ اون نتایج هم قابل اجرا نبودن .. از این جهت مطمئنیم که تونستم فضامون رو صحیح اعمال کنیم .. موفق باشید ..
                  دوستان! مدتی کمتر به سایت میام ..

                  دیدگاه


                    #54
                    پاسخ : کمک درباره مقاله GVF

                    سلام ...................

                    توی پست قبل در مورد این صحبت کردیم که اگه بتونیم بر حسب یه ویژگی خاص ناحیه ی تومور رو describe کنیم‎ توانایی Crop کردن اون ناحیه رو خواهیم داشت .. توی پست قبل گفتیم که شرایط تصویر Sample مون هم خیلی مهمه و اگه ارزش رنگی تومور به اندازه ی کافی Discriminative باشه میتونیم Image Croping رو انجام بدیم .. تصویر زیر رو ببینید تا روی اون صحبت کنیم ..


                    خطوط قرمزی که کشیدیم نشون دهنده ی هدف ما از Crop کردنه .. یعنی چی؟ یعنی اینکه بتونیم به صورت خاصی اون قسمت رو از سایر قسمت های اسلاید جدا کنیم.. اما منظور از ناحیه ی زرد چیه؟ اون قسمتیه که شاید با استدلال Concavity و شامل شدن Background خالص در Segmentation به مشکل بخوره .. اما فعلا با اون بحث کار نداریم و تمام تلاشمون اینه که بتونیم تا آخر این پست برسیم به یه ناحیه ی Crop شده از اسلاید ، اونهم برشی که بتونه ناحیه ی محتمل غده رو برامون تعیین کنه ..

                    خب .. اطلاعاتی که از شهود قضیه میتونیم کسب کنیم چیه؟ اینه که ظاهرا نواحی شامل تومور از نظر Color Intensity به مراتب Discriminative تر هستن از نواحی دیگه ای که از نظر Pixel Distribution میشه اونهارو توجیه کرد .. پس هدف چیه؟ اینه که با این درک نسبت به متمایز بودن نواحی تومور جدا سازی کنیم اون بخش هایی رو که میدونیم با این ویژگی قابل تشخیص هستن .. اما نکته ای که خیلی باید به اون توجه کنیم اینه که اگه صرفا بخوایم به Intensity متمایل بشیم مطمئنا به نتیجه ی لازم نمیرسیم چراکه اگه یه نمودار هیستوگرام از تصویر Sample رسم کنید میبینید که در Value هایی با اون حوزه ی رنگ ما بافت های دیگه ای هم داریم که با چنین نگاهی دچار Over Selection میشن .. پس باید یه فکر دیگه کرد ..

                    دوباره به تصویر Sample نگاه کنید .. (خطوط قرمز و دایره رو بذارید کنار ..) نکته ای که علاوه بر Color Specification نظر مارو به خودش جلب میکنه فراوانی نمونه های رنگی در فضای پیکسلیه .. یعنی چی؟ یعنی اینکه فراوانی پیکسل هایی با ویژگی رنگی خاص در ناحیه ی تومور بیش از قسمت های دیگه هست و این همون نکته ایه که ما ازش استفاده میکنیم تا بتونیم تصویرمون رو با تلفیق مبنای دیگه ای Crop کنیم .. یعنی فراوانی + مشخصه ی رنگی .. در نتیجه ما توی الگوریتمی که مینویسیم باید به دنبال این باشیم که از این دو ویژگی به خوبی استفاده کنیم ..

                    برنامه ای که با توجه به توضیحات بالا براتون نوشتم تصویر Sample رو (توی فایل ضمیمه شده براتون دو نمونه ی اونها رو گذاشتم .. اسامیشون هم gvf و gvv هست .. ) میگیره و Crop شده ی اون رو بر میگردونه .. برای مشاهده ی نتیجه هم از دستور Subplot استفاده کردیم .. حالا یه سوال: توی نمودار سه تا تصویر وجود داره .. تصویر اول و آخر که طبیعتا مشخصه اما تصویر وسط چیه؟ تصویر وسط رو شما توضیحش رو بدید .. برای راهنمایی هم بگم که اگه متن برنامه رو تحلیل کنید میتونید به جواب برسید .. باز اگه به مشکل برخوردید مطرح بفرمایید .. موفق باشید ..

                    فایل های پیوست شده
                    دوستان! مدتی کمتر به سایت میام ..

                    دیدگاه


                      #55
                      پاسخ : کمک درباره مقاله GVF

                      با سلام وعر ض ادب به حضور شما
                      ببخشید که یه سری سوالهای تکراری پرسیدم وباعث شدم که اون مطالب رو دوبار تکرار کنید از این جهت پوزش می خواهم
                      در ابتدا جواب سوالی رو که شما مطرح کرده بودید بیان کنم با دلیل.
                      اون تصویر دوم در نمودار، قسمتی از تومور است و خود تومور به صورت کامل نمی باشد من این جواب رو با تحلیل برنامه ای که شما فرستاده بودید بدست آوردم
                      اگه بخواهیم برنامه رو از با لا به پایین بررسی به این صورته که:
                      1)یه تصویر رو از ورودی می گیریم فضای رنگی که تصویر در اون تعریف شده تغییر می دیم
                      2)یه فیلتر روی تصویر قرار می دیم
                      3)سپس دو ماتریس مربعی تعریف کردید
                      4)تصویر فیلتر شده رو به اندازه شش بار در تابع imerodeقرار دادید که با عث میشه کهpixelهای boundary objectدر تصویرحذف بشه
                      5)سپس تعداد سطر و ستونهای ersion6رو بدست آوردید
                      6)به متغییر کنترل کننده x,o,z,qمقدار اولیه 10 داده اید
                      7)در دو حلقه forتودر تو در ماتریسerosion6جایی که مقدارآن یک است سطر وستونها را در متغیرهایی نگهداری کرده اید و ای عمل را چها بار تکرار کرده اید
                      8)و تابع imcrop را دوبار فراخوانی نموده برای اول بار با erosion6ویه مختصات و در بار دوم با b که همون تصویر اصلی که فضای رنگیشو تغییر دادید
                      9)ودر نهایت با استفاده از توابع subplot , imshow اونا رو نمایش دادید
                      erosion6یه تصویر به ما می ده که فقط ساختار مغز و تومور در آن قابل تشخیص است .و تا حدودی قسمتی از تومور با مغز همرنگ شده .
                      بنابراین چون erosion6یک ماتریس از نوع باینری یا صفر ویک است . اون نقاطی که ماتریسerosion6 به ازای اونا یک است تومور می با شد . و اون قسمت از تومور که با بقیه ساختار مغز همرنگه شده ماتریس erosion6به ازای اون نقاط صفر است پس نتیجه تابعimcropهمون نقاطی از ماتریس erosion6 است که یک بودن
                      حالا چند تا سوال دارم
                      1)توی برنامه یه مقدار آستانهthresholdتعریف کرده بودید من نمی تونستم دلیل اون درک کنم ممکنه اون برام توضیح بدید؟
                      2)متغییر های کنترل کننده چرا مقدار 10 دارند؟
                      3) یکی از]چهار قسمت coordinatها رو توضیح بدید فهمیدم اما یه مقدار برام گنگه چرا متغییر های کنترل کننده پس از شرط if مقدار 50 در اون قرار می گیره؟
                      4)آیا این برنامه رو میشه با تابع imdilate اجرا کرد نظر شما چیه؟

                      امیدورام که جوابم درست بوده باشه وبا کمال تشکر از زحمات شما

                      دیدگاه


                        #56
                        پاسخ : کمک درباره مقاله GVF

                        سلام ....................

                        4)تصویر فیلتر شده رو به اندازه شش بار در تابع imerodeقرار دادید که با عث میشه کهpixelهای boundary objectدر تصویرحذف بشه
                        دلیل اصلی این کار میدونید چیه؟ اونجایی که گفتیم از از دو فاکتور استفاده میکنیم رو دوباره به خاطر بیارید .. مشخصه ی رنگی + فراوانی رنگی .. دستور imerode چیکار میکنه؟ بر حسب کرنلی که براش تعریف میکنیم؛ آبجکت باینریمون رو Prun میکنه؛ یعنی به نوعی هرس کردن پیکسل ها.. این کار کمک میکنه مارو تا بتونیم روی چگالی رنگی تمرکز کنیم .. دقیقا علتی که ما از این تابع استفاده کردیم این بود .. حالا چرا چندین بار متوالی این کار رو کردیم؟ برای اینکه میخواستیم به صورت Incremental به محدوده نزدیک بشیم .. بـــلــه؛ ممکنه بگید از یه کرنل بزرگتر استفاده میکردیم امــا ما باید ببینیم که به چه هدفی اینکار رو میکنیم .. یعنی آخرش میخوایم به چی برسیم .. میخوایم یه Bound پیدا کنیم برای محدوده ی تومور محتمل .. پس نمیخوایم حتی یک پیکسل هم در فضای غیر محتمل وجود داشته باشه .. برای همین ترجیح میدیم که آهسته آهسته عملیات Prunning پیکسل های مجاور رو انجام بدیم و به هدف برسیم ..

                        1)توی برنامه یه مقدار آستانهthresholdتعریف کرده بودید من نمی تونستم دلیل اون درک کنم ممکنه اون برام توضیح بدید؟
                        برای اینکه بتونیم از دستورات Morphology استفاده کنیم بهتره که فضای رنگیمون رو باینری کنیم .. برای همین نیاز داریم که بهترین Threshold ای رو انتخاب کنیم تا بتونیم بر مبنای اون تصویرمون رو نگاتیویته کنیم .. برای همین از یه Threshold استفاده کردیم ..

                        2)متغییر های کنترل کننده چرا مقدار 10 دارند؟
                        متغییر های کنترلی توی برنامه نویسی برای این به کار میرن که بتونیم به کمک اونها یه حلقه رو برای حالتی خاص اجرا کنیم .. کلا این حالت توی برنامه نویسی خیلی پیش میاد .. مثلا شما میخواید یه حلقه فقط در صورت وقوع یه اتفاق خاص اجرا بشه و نه هرزمان دیگه .. اینجا اون اتفاق خاص در حکم یه متغییر توی محیط برنامه نویسی برای شما رل بازی میکنه .. مقدارش هم اصلا مهم نیست .. هر مقداری که مد نظرتون باشه میتونید برای اونها قرار بدید .. امیدوارم تونسته باشم منظورم رو برسونم ..

                        3) یکی از]چهار قسمت coordinatها رو توضیح بدید فهمیدم اما یه مقدار برام گنگه چرا متغییر های کنترل کننده پس از شرط if مقدار 50 در اون قرار می گیره؟
                        مثلا برای X سمت چپ مثال بزنیم .. برنامه ای که برای اون نوشتیم رو با هم یک بار بررسی کنیم ..


                        تعریفی که برای i میکنیم چیه؟ نماینده ی سطره .. تعریف j چیه؟ نماینده ی ستونه .. حالا با این notation میریم جلو .. قراره چیکار کنیم؟ نقطه ای که شامل ناحیه ی چگال هست؛ رو پیدا کنیم .. چطور؟ چون قراره که این کار مرز Bound سمت راستمون رو مشخص کنه ستون رو یکی یکی اضافه میکنیم و در هر مرحله سطرهارو اسکن میکنیم .. یعنی چی؟ یعنی مثلا به ازای ستون اول؛ همه ی سطرهارو به منظور پیدا کردن مولفه ی رنگی سفید؛ اسکن میکنیم و اگه این جستجو نتیجه ای نداشت؛ یک واحد به ستونمون اضافه میکنیم و دوباره عمل اسکن سطری رو انجام میدیم .. اون دو تا حلقه ی For ای که تودرتو نوشته شده هم به همین خاطره .. حلقه ی بیرونی وظیفه ی اضافه کردن ستونی رو بر عهده داره و حلقه ی درونی هم وظیفه ی اسکن سطری.. برای سایر نقاط هم وضعیت به همین ترتیبه .. حالا قضیه ی اون 50 چیه؟ میخوایم هر وقت شرط برقرار شد؛ متغییر کنترلی از روال مقایسه حذف بشه .. یعنی چی؟ یعنی شرط؛ فقط و فقط یک بار تکرار بشه و تمام ..

                        حالا ممکنه بپرسید که این نقاط دارای مولفه ی دوبعدی هستن یا تک بعدی؟ یعنی آیا ما برای هر نقطه یه X میخوایم و یه Y یا اینکه دونستن i و j میتونه کافی باشه؟ جواب این سوال اینه که ما صرفا به دنبال i و j هستیم چرا که میخوایم محدوده ی Bound مون رو به دست بیاریم و از اون طریق توی cropping به کار ببندیمشون در نتیجه نازی به دونستن دو مولفه تواما نیست ..

                        4)آیا این برنامه رو میشه با تابع imdilate اجرا کرد نظر شما چیه؟
                        خــب .. میتونم استدلالتون رو در مورد dilation بپرسم؟ منتظر میمونم .. موفق باشید ..
                        دوستان! مدتی کمتر به سایت میام ..

                        دیدگاه


                          #57
                          پاسخ : کمک درباره مقاله GVF

                          با سلام وعرض ادب
                          ببخشید اما از جوابی که من به سوال شما دادم ، نفرمودید درسته یا نه(همون سوال که در مورد تصویر دوم نمودار مطرح کرده بودید)؟
                          اگرم جوابم اشتباه بوده ،اگه ممکنه جواب درست رو برام بذارید.
                          من تابع imdilateرو برای این تصویر اجرا کردم حتی با همون شش مرحله ، یعنی من برنامه رو تا قبل از اون مقدار دهی اولیه به متغییر های کنترلی اجرا کردم.البته با تابعimdilateومقدار برگشتی این تابع رو توی متغیر های dilation , dilaton1...dilation6قرار دادم
                          وقتی دستور dilation6اجرا کردم، یه ماتریس که تعداد سطر وستونهای اون بیشتر از 200 بود رو مشاهده کردم ، تمام درایه های این ماتریس بین یه محدوده خاص بودن به عبارت بهتر می تونم بگم که این درایه ها یا صفر بودن یا از 176 تا 250بودن. اینجا یه نکته داره اونم اینه که اگه اشتباه نکنم ، نقاطی که در محدوده تومور قرار دارن بیشترین مقدار از همون محدوده درایه ها رو به خودشون اختصاص میدن و با استفاده از همون حلقه های forتودرتو می تونیم مثلا محدوده 215 تا 250 رو بدست بیارییم وتومور رو با یه مرز دقیقتر استخراج کنیم.
                          نمی دونم تونستم اون چیزی رو که تو ذهنم بوده بیان کنم یا نه ؟

                          دیدگاه


                            #58
                            پاسخ : کمک درباره مقاله GVF

                            سلام .................

                            جواب قبلیتون موردی نداشت .. امــا اون بخشی که بهش اضافه کردم تکمیل کننده ی توضیحات خودتون بود ..

                            در مورد تابع Dilation متوجه استدلالتون نشدم! متوجه نمیشم؛ شما چرا از Dilation استفاده میکنید؟ ما برای چی اینجا از Erosion استفاده میکنیم؟ برای این منظور که بتونیم پیکسل های پراکنده رو که ارتباط Distributional قابل توجیهی با ناحیه تومور ندارن؛ حذف کنیم .. حالا استدلال شما از Dilation چیه؟ میدونید که مهمترین خاصیت Dilation؛ پخش شدن اون کرنل در حیطه ی آبجکتیه که مورد Dilation قرار گرفته .. یعنی چی؟ یعنی اگه شما Dilation رو روی آبجکتی که الان شده نگاتیویتیه ی تصویر مغز نمونه های شما، اعمال کنید؛ کاری که کردید Bold کردن کلیه ی پیکسل ها متناسب با کرنلتون بوده .. این توضیح رو من توی تاپیک آموزشی Morphological Image Processing کامل دادم .. اون بخش رو حتما مجدد بخونید .. حالا با این ارزیابی؛ دوباره میپرسم؛آ‌ هدفتون از به کار بردن تابع Dilation در این مرحله چیه؟ منتظر پاسختون میمونم .. موفق باشید ..
                            دوستان! مدتی کمتر به سایت میام ..

                            دیدگاه


                              #59
                              پاسخ : کمک درباره مقاله GVF

                              با سلام وعرض ادب
                              قطعه کد ابتدای برنامه ای که شما برای من فرستاده بودید من اون با تابع imdilate اجرا کردم . یعنی از همون اول برنامه درست تا سر خط 22یا Limitation به جای erosionکلمهdilationقرار دادم وبه جای imerodeتابع imdilate رو قرار دادم ،در انتهای این کدها dilation6می نویسیم واینتر می زنیم .حالا یه ماتریس داریم.
                              که در این ماتریس سری درایه ها رو داریم .معمولا درایه های ستونها تکراری هستند و این درایه ها دارای مقدار ی بین 160 تا 255هستند .وبقیه صفر هستند.
                              خوب این خود حاکی از این است که درایه هایی که دارای مثلا مقدار 215 تا 255 هستندمشابه هم هستندیا به عبارت بهترimdilate(i,j) imdilate(i.j-1) imdilate(i,j+1 مشابه به هم هستند خوب چون تصویرdilation6تنوع رنگی زیادی ندارد ما می توانیم داریه هایی از ماتریس dilation6را پیدا کنیم که به هم نزدیکتر هستند مثلا در همان حلقه های for تودرتوداریه هایی را پیدا کنیم که مثلا مقدار آنها بین 215 تا 255 است . چون اگر اشتباه نکنم نقاط ناحیه تومور دارای بیشترین مقدار داریه هستند پس با دقت بیشتر توانستیم که نقاط توموری را پیدا کنیم.
                              باز از طریق ایمیل برای شما توضیح می دم که منظورم چیه امیدوارم که تونسته باشم اون چیزی رو که توی ذهنم بوده بیان کرده باشم حداقل اینکه به صحیح یا غلط بودن استدلالهای ذهنم پی ببرم

                              دیدگاه


                                #60
                                پاسخ : کمک درباره مقاله GVF

                                سلام ....................

                                خـــب؛ من اون فایلتون رو خوندم .. امــا نتیجه : شما اومدید چیکار کردید؟ تصویر Gray Scale شده رو اومدید و با دستور imdilate مورد dilation قرار دادید .. حالا نکته ی اول.. مگه میشه تصویر Gray Scale رو هم Dilate کرد؟ جواب مثبته .. نکته ی دوم.. Dilation چه نکته ای داره؟ Growing the dilated Region .. یعنی از نظر Distribution انسجام پیکسل های جدا شده از هم رو بیشتر میکنه .. یعنی چی؟ یعنی شما با رشد ناحیه ی Dilate شده روبرو میشید .. حالا از این نکته چه استفاده ای کردید؟ اومدید و ناحیه ی محتمل تومور رو Grow کردید به این امید که بتونید از تنوع رنگی استفاده کنید .. چه استفاده ای؟ اینکه بتونید با محاسبه ی intensity پیکسل هاتون؛ ناحیه ی تومور رو Describe کنید ..

                                حالا من یه نکته میگم .. شما اگه بخواید روی اطلاعات پیکسلی که از ماتریس Dilation6 به دست اومده؛ قضاوت کنید نمیتونید صرفا با اون سینتکس های Switch و Case این کار رو بکنید چرا که اصلا نمیتونید روی این حساب که Value های پیکسل های ناحیه ی تومور یه مقدار خاص دارن؛ مانور بدید چون اصلا این تخصیص مقدار خاص برای مقادیر پیکسل های تومور معنایی نداره .. در واقع شما باید دنبال یه راه عمومی باشید تا بتونید به وسیله ی اون مختصات Croping رو به دست بیارید .. یعنی اینکه روی یه اسلاید خاص یک سری ویژگی تعریف کنید و بدون در نظر گرفتن Generalization (نه به اون معنای ML..) اونهارو به عنوان متد ثابت در نظر بگیرید؛ نه درسته و نه منطقی ..

                                شما برای ین کار چند تا Sample رو اجرا کنید ببینید واقعا این مقادیری که توی Switch گذاشتید حالت عمومی پیدا میکنن یا خیــر .. من نظرم اینه که جواب منفی خواهد بود امــا باز شما امتحان کنید و نتیجه رو اعلام .. توجه داشته باشید که این مقادیر باید به گونه ای انتخاب بشه که بتونیم بر پایه ی اونها قضاوت صحیحی داشته باشیم و صرفا از روی یک نمونه استدلال کردن؛ نمیتونه تعمیم به کل پیدا کنه ..

                                یه نکته ی دیگه ای که فکر کنم بی ارتباط با کاری که شما کردید؛ نباشه اینه که شما اومدید و یک قضاوت روی اطلاعات نمونه ای رنگی پیکسل ها داشتید .. Theme کارتون شاید به صورت کاملتر بشه روشی که توی IP زیاد استفاده میشه .. یه توضیح براتون میدم تا ببینید منظورم چیه؟ اول اسم روش رو بگم که Clustering هست .. حالا تعریف کلی: Clustering متدیه که برای دسته بندی اطلاعات به کار میره .. یعنی مثلا شما میخواید پیکسل هایی که از نظر Color Neighborhood باهم Similarity دارن رو دسته بندی کنید .. اون چیزی که به عنوان نتیجه مسلمه چیه؟ اینه که شما یک سری Cluster دارید که در بردارنده ی تعدادی پیکسل هستن اونم با Similarity های ماگزیمم.. روش متداولی که برای اینکار استفاده میشه چیه؟ K-Means .. این روش دیتاهای شما رو به Cluster های Discriminative دسته بندی میکنه و از Accuracy بالایی هم برخورداره .. اگه میخواید کارتون رو با این View جلو ببرید که میتونید به این روش هم فکر کنید .. البته م پیشنها نمیدم چرا که شما Pixel Intensity متمایزی برای تومور ندارید ..

                                مطلب دیگه ای که در مورد فایلتون توی ذهنم هست اینه که شما مطلبی فرموده بودید با این مضمون که Erosion تصویر رو از دریچه ی دو رنگ میبینه و این استدلال رو در مقابل Dilation قرار دادید .. دوتا نکته هست که بد نیست راجع بهشون صحبت کنیم .. اول اینکه علت اونکه Erosion یه همچین حالتی داره اینه که توی آرگومان تصویر ورودیش؛ یه تصویر باینری شده رو وارد کردیم .. پس صرفا حضور Erosion به این معنا نیست که ما نتیجه ای با مضمون باینری داریم بلکه این نتیجه کاملا دست خودمونه که آرگومان تصویر ورودی رو باینری بدیم یا Gray Scale .. دوم اینکه ما از Erosion استفاده کردیم به چه استدلال؟ به این استدلال که بتونیم ناحیه ی تومور رو با Prun کردن پیکسل ها به دست بیاریم یعنی فضای پردازش محدود و محدودتر میشه و این نکته ایه که خیلی میتونه توی اجرای الگوریتم به کمک ما بیاد .. الان شما اگه از Dilation استفاده کنید؛ نمیتونید این محدودیت در فضارو ایجاد کنید و این یه حالتیه که من خیلی روش انتقاد دارم ..

                                به عبارت بهترimdilate(i,j) imdilate(i.j-1) imdilate(i,j+1 مشابه به هم هستند
                                این اطلاعات فکر کنم اشتباه تایپ شده؛ چرا که imdilate یه تابع هست و باید دو آرگومان داشته باشه: یکی کرنل و دیگری هم خود تصویر ورودی .. احتمالا منظور شما dilation(i,j) بوده .. به هر حال در فایلی که برام رستاده بودید صحیحش نوشته شده بود؛ گفتم این رو هم اینجا قید کنیم تا دوستانی که بحث رو دنبال میکنن با شبهه روبرو نشن .. امیدوارم مطالب براتون تکراری نبوده باشه .. موفق باشید ..
                                دوستان! مدتی کمتر به سایت میام ..

                                دیدگاه

                                لطفا صبر کنید...
                                X