اطلاعیه

Collapse
No announcement yet.

آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

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

    آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

    با سلام و خسته نباشید
    سوالهایی درباره ی آموزش دادن نمونه ها و طبقه بندی کردن تصاویر دارم.امیدوارم که بتونین کمکم کنین.ممنون.
    من یک پایگاه داده از آدرس زیر دانلود کردم:
    www.robots.ox.ac.uk/~vgg/share/practical-image-classification.htm
    و برنامه استخراج ویژگی هم دارم که ویژگی های تصویر رو استخراج میکنه.سوال من اینه که آیا تمام تصاویر موجود در پایگاه داده رو باید آموزش بدم.منظور از آموزش دادن همون استخراج ویژگی یا نه؟حالا بعد از اینکار چطوری باید طبقه بندی کنم؟از لحاظ برنامه نویسی مشکل دارم
    ممنون

    #2
    پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

    سلام.
    معمولاً نمونه های پایگاه داده رو به نسبت 70 به 30 یا 60 به 40 به دو گروه آموزشی و تست تقسیم می کنن(به صورت تصادفی). در صورتی که مرحله Validation هم داشته باشه، نصف داده های تست برای Validation به کار میرن.
    کلاسیفایر (طبقه بند) رو مشخص کن، داده های آموزشی(به همراه برچسب(کلاس) هر کدوم رو بهش بده تا آموزش ببینه، بعد نمونه های تست رو بده و کارایی روشت رو با محاسبه درصد طبقه بندی درست از طریق مقایسه کلاس به دست آمده از کلاسیفایر با کلاس واقعی نمونه ها به دست بیار.
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"

    دیدگاه


      #3
      پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

      ممنون هادی جان.طبقه بند هم باید از SVM استفاده کنم.شما برنامشو داری؟
      منظور از آموزش دادن همون استخراج ویژگی یا نه؟اگه نیست پس کدام مرحله از استخراج ویژگی استفاده میشه؟
      ممنون

      دیدگاه


        #4
        پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

        خواهش می کنم. خود متلب برنامه SVM دوکلاسه رو داره، در صورتی که میخوای چند کلاسه استفاده کنی کافیه یه سرچ توی اینترنت بزنی.
        ویژگی هایی که استخراج کردی به عنوان ورودی کلاسیفایر استفاده میشن. فقط موقع آموزش، کلاس هر نمونه هم به تابع آموزش داده میشه ولی موقع تست فقط بردار ویژگی به تابع تست داده میشه.
        لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
        لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
        با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
        اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
        يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"

        دیدگاه


          #5
          پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

          سلام ..

          در کنار مطالب خوب بالا، بحث های مشابهی هم در ایـن تاپیک مطرح شدن که شاید بتونن امیدوارانه مفید باشن .. بعلاوه؛ بحث های مطرح شده در ایـن تاپیک و مطالب مطرح شده در ایـن پست و پست های بعد از اون هم میتونن به نوعی در مسیر سوال شما باشن .. امید که این آدرس ها بتونن کمکتون باشن .. پیروز باشید ..
          دوستان! مدتی کمتر به سایت میام ..

          دیدگاه


            #6
            پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

            یه سوال دیگه.پایگاه داده ما حداقل 1000 تا تصویر داره که به نسبت مثبت و منفی می باشند.آیا برای خواندن این تصاویر باید به تعداد تصاویر از دستور imread استفاده کزد؟ واینکه خروجی که از استخراج یک تصویر بدست میاد با تصویر دیگه فرق میکنه،برای اینکه در بردار ویژگی ذخیره کنم مشکل بوجود نمیاد(از لحاظ برنامه نویسی)

            دیدگاه


              #7
              پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

              مثلا یکی از خروجی استخراج برابر با <131x7 double> شده ویکی دیگه <176x7 double .حالا با استفاده از کدام دستور متلب مبشه این خروجی ها رو در بردار (سوپر ماتریس ) ذخیره کرد؟نباید ابتدا ابعاد رو یکیکرد
              ممنون

              دیدگاه


                #8
                پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن ت&#1589

                برای ذخیره کردن ماتریس های با اندازه متفاوت در یک ساختار واحد میتونید از سلول یا cell استفاده کنید.
                It's nice to be important but it's important to be nice!

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

                دیدگاه


                  #9
                  پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

                  نوشته اصلی توسط arvin2014
                  مثلا یکی از خروجی استخراج برابر با <131x7 double> شده ویکی دیگه <176x7 double .حالا با استفاده از کدام دستور متلب مبشه این خروجی ها رو در بردار (سوپر ماتریس ) ذخیره کرد؟نباید ابتدا ابعاد رو یکیکرد
                  ممنون
                  همون طور که رضا گفت وقتی سایز متفاوت داری باید از cell استفاده کنی ولی طول بردار ویژگی برای SVM باید ثابت باشه، با دستور reshape میتونی سایز ماتریس ها رو عوض کنی مثلاً تبدیلشون کنی به بردار ولی باز هم طولشون مساوی نیست و برای حل این مشکل باید یه فکری بکنی.
                  لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
                  لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
                  با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
                  اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
                  يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"

                  دیدگاه


                    #10
                    پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن ت&#1589

                    توجه کن شما اگر طول بردارت ثابت نباشه نمی تونی کلاسیفایرت رو آموزش بدی. بهتره یک طول ثابت رو در نظر بگیری اضافه ها رو حذف کنی یا از الگوریتم های انتخاب ویژگی مثل pca و ga استفاده کنی.
                    It's nice to be important but it's important to be nice!

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

                    دیدگاه


                      #11
                      پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

                      ممنون از دوستان.یه سوال دیگه.پایگاه داده ما حداقل 1000 تا تصویر داره که به نسبت مثبت و منفی می باشند.آیا برای خواندن این تصاویر باید به تعداد تصاویر از دستور imread استفاده کزد؟

                      دیدگاه


                        #12
                        پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

                        یه راهش نوشتن جلقه for به صورت زیر هست:

                        کد:
                        for i=1:n
                            
                            q=sprintf('%d' ,i);
                            q=['images\' q '.tif'];
                            archive(:,:,i)=imread(q);
                        end
                        It's nice to be important but it's important to be nice!

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

                        دیدگاه


                          #13
                          پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

                          نوشته اصلی توسط رضا شفقی
                          یه راهش نوشتن جلقه for به صورت زیر هست:

                          کد:
                          for i=1:n
                              
                              q=sprintf('%d' ,i);
                              q=['images\' q '.tif'];
                              archive(:,:,i)=imread(q);
                          end
                          ممنون.من این کد را استفاده کردم ولی پوشه ای که تصاویر درون آن است،با این کد فقط تصاویری گه دارای نامهای1و2و3و..... باشند را میتونه بخونه و اگه بحوام اسم تصاویر دیگه رو بخونه باید چکار کنم؟
                          من میخوام بعد از هر تصویر که خونده میشه استخراج ویژگی رو انجام بدم.اگه بطور مثال بخام به تصویر شماره 10 دسترسی داشته باشم با این دستور
                          archive(:,:,10 میشه؟
                          پیشاچیش ممنون بخاطر جوابتون

                          دیدگاه


                            #14
                            پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

                            شما سعی کنید تصاویرتون یک الگوی اسمی معنی دار داشته باشه تا بشه خوندشون مثلا اگر همه تصاویر رو تو ویندوز با هم rename کنید میشند : اسم+ (عدد تصویر)

                            در مورد دسترسی هم بله
                            It's nice to be important but it's important to be nice!

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

                            دیدگاه


                              #15
                              پاسخ : آموزش دادن نمونه ها و طبقه بندی کردن تصاویر

                              نوشته اصلی توسط رضا شفقی
                              شما سعی کنید تصاویرتون یک الگوی اسمی معنی دار داشته باشه تا بشه خوندشون مثلا اگر همه تصاویر رو تو ویندوز با هم rename کنید میشند : اسم+ (عدد تصویر)

                              در مورد دسترسی هم بله
                              ممنون.اسم عکس ها رو عوض کردم ولی ای دستور رو archive(:,:,i)=imread(q); خطا میده و متن ارورشم اینه:
                              Subscripted assignment dimension mismatch.
                              ولی اگه از این دستور archive=imread(q استفاده کنم خطا نمیده اما بجاش دیگه بطور مثال نمیتونم به عکس شماره 10 دسترسی داشته باشم

                              دیدگاه

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