اطلاعیه

Collapse
No announcement yet.

Face Recognition & ICA

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

    #16
    پاسخ : تشخیص چهره با ICA

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

    اولیش که تقریبا مشخصه .. خودتون هم اشاره کردید .. ولی دومیش رو من هنوز متوجه نشدم برای چه منظور میخواید استفاده کنید .. سومین مرحله هم که شبکه عصبیه؛ مختص جناب نحوی :nerd:

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

    دیدگاه


      #17
      پاسخ : تشخیص چهره با ICA

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

      من در این مورد از چند تا از دوستان پرسیدم .. نظرات جالبی مطرح شد اما در مجموع به این نتیجه رسیدیم که چه ارتباطی میتونه وجود داشته باشه بین ICA و Classification .. خب سوالم کلی شد اما اجازه بدید یک مقدار بازش کنم ..

      ببینید ICA همون طور که از اسمش هم مشخصه Independent Component Analysis بحث میکنه روی استقلال عناصری که در ابعاد بالا به وضوح مشخص میشن .. مثال ابتدایی اون فایلی که براتون گذاشتم رو بررسی کردین؟ مساله ی معروف Cock-tail party که در نهایت منجر میشد به تفکیک سیگنال امتزاج شده باهم .. یعنی چی؟ (از لاتینش سخت تر شد که ..!!) یعنی اینکه فرض کنید دو تا سیگنال دارید که باهم تلفیق شدن .. مثلا دو منبع صوت داریم که از دو نقطه ی مشاهده اونهارو میشنویم .. بر حسب هر نقطه ی شنود، میتونیم یه رابطه تعریف کنیم که پارامترهاش تابعی از فاصله ی منیع صوت تا نقاط و البته زمان ارسال و دریافت سیگنال هستن .. تمام تلاش از مطرح کردن این مثال اینه که به کمک ICA بتونیم دوتا سیگنال رو از هم جدا کنیم (با بهترین تقریب ..)

      خود متد ICA چون تاکید داره روی توزیع Non-Gaussian دیتاها (نمونه ها..) ؛ میتونه با روش های خطی عددی تخمین خوبی داشته باشه از تفکیک عناصر سیگنال .. در واقع استدلال میکنه به این قضیه که در فضای بالا میشه ادعا کرد که برخی component ها هستن که از هم مستقل هستن و از این نمونه میشه استفاده کرد و اونهارو از هم جدا کرد .. حالا این جدا سازی شما رو یاد موضوعی نمیندازه؟ درسته؛ میتونیم یه جورایی استدلال کنیم بعد هم کاهش پیدا میکنه اما بر خلاف PCA که امکان داشت اطلاعاتی برای Classification رو از بین ببره , این متد اون نقیصه رو از بین برده و استدلالش هم بر مستقل بودن Component ها در فضای بالاست ..

      حالا متوجه شدید که این متد خیلی سخته که بتونه ارتباطی برقرار کنه بین دیتاها و کلاس های اونها .. یعنی اینجاست که باید اشاره کرد خیلی سخت میشه ارتباط برقرار کرد بین ICA و Classification .. امیدوارم متوجه منظورم شده باشید .. موفق باشید ..
      دوستان! مدتی کمتر به سایت میام ..

      دیدگاه


        #18
        پاسخ : تشخیص چهره با ICA

        سلام آقای حسام الدین..........
        در مورد کار که چطور pca و ICA دقیقا چه طور قرار است با همدیگه کار کنند آقای بساق زاده جالب در سمینارشون توضیح دادن و منظور من هم همون بود(آقای بساق زاده زحمت کشیدن و سمینارشون رادر سایتشون گذاشتن که باید واقعا ازشون تشکر کنم)
        اما یه سوال
        ببینید من شروع کردم به نوشتن کد PCA که خوردم به مشکل چون ماتریس هایی که در می آورم که خیلی بزرگ شد زمانی که می خوام کواریانس بگیرم امکان ندارد
        اینطور که فهمیدم باید اول مثلا یه تصویر 30*30 از چهره ها در باورم که شامل بینی لب چشم و ابرو باشد تا ماتریسم کوچیک بشود و پس زمینه را حذف کنم
        ولی نمی دونم چه طور باید این کار را بکنم
        البته دستور imcrop هست ولی چون باید دستی انتخاب کنم نمی شه
        از طرفی هم وقتی از روی ماتریس هم نتونستم کاری کنم مثلا آمدم تصویر بین سطر های 40 تا 70 و ستون های 30 تا60 را انتخاب کردم ولی تو بعضی تصاویر این نمی شد چون یه مقدار سر توی تصویر جابجا شده که اگر بخوام برای هر تصویر هم این را تغییر دهم که نمی شود
        حالا به نظر شما چطور برنامه ای بنویسم

        دیدگاه


          #19
          پاسخ : تشخیص چهره با ICA

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

          سوال اول .. مگه تصاویر Face شما Bounding Box نیست؟
          سوال دوم .. دستور PCA رو با متلب مینویسید دیگه؟ پس قاعدتا نباید با کواریانس مشکل داشته باشید .. سوال اول رو حتما تاکید میکنم .. موفق باشید ..
          دوستان! مدتی کمتر به سایت میام ..

          دیدگاه


            #20
            پاسخ : تشخیص چهره با ICA

            سلام.............
            ببخشید منظورتون را از سوال اول نفهمیدم؟ منظورتون از Bounding Box چیه؟

            اما در موردسوال دوم شاید راحت تر بگم
            من می خواهم برای مرحله پیش پردازشم بیام و قسمت مرکزی صورت را در نظر بگیرم و پس زمینه را حذف کنم با این کار ماتریس تصویرم کوچک می شه
            حالا می خوام یه برنامه ساده بنویسم که برام این کار را بکنه

            دیدگاه


              #21
              پاسخ : تشخیص چهره با ICA

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

              منظور از Bounding Box اینه که یک چارچوبی در نظر بگیرید؛ که موارد اضافی تصویر توش نباشه .. مثلا اگه تصویر صورت رو میخواید؛ صرفا گردی صورت باشه و بس .. البته بستگی به دیتابیس شما داره .. مثلا دیتابیس دانشگاه Yale اینطوری نیست اما برای ORL رو فکر کنم .. دقیق یادم نیست اما شاید ..

              خب حالا سوال شما .. فرمودید که میخواید تصویر صورت رو از زمینه جدا کنید ؛ درسته؟ معمولا باید برای اینکار باید از تصویرتون Egge بگیرید و بعد اون تصویر Edge گرفته شده رو از زمینه جدا کنید .. البته یه روش دیگه ای هم که روی برخی دیتابیس ها یا تصاویر جواب میده اینه که یه فیلتر میذارن روی تصویر (یا حالا Gabor یا Mean یا Gaussian یا ...) و یه جور محدوده ی تصویر رو از بک گراند متمایز میکنن .. اگه دیتابیس شما خیلی Supervised باشه این روشی که گفتم خیلی خوب جواب میده .. البته با یه Threshold معمولی هم میتونید ناحیه ی صورت رو از اسلاید Capture کنید .. منظورم از Supervision چیه؟ اینه که محدوده ی صورت طبق شرایط خاصی از بک گراند متمایز باشه .. یعنی چی؟ مثلا افراد جلوی یه پرده ی سبز یا سفید عکس گرفتن .. ناحیه ی صورت Intensity های متفاوتی داره در حالیکه بک گراند ، به استناد محیط Gray Level، از سطح 255 ای بر خوردار هست .. امیدوارم منظورم رو متوجه شده باشید .. موفق باشید ..
              دوستان! مدتی کمتر به سایت میام ..

              دیدگاه


                #22
                پاسخ : تشخیص چهره با ICA

                باز م سلام

                نمی دونم باید چطوری یه تصویر اینجا بگذارم
                چون می خواستم بلوک دیاگرام کارم را بگذارم شاید منظورم مفهوم تر بود
                ببینید من می خوام ابتدا تمام تصاویر ورودی به ابعاد n*n مثلاً 40*40 برش می خورند. (اطلاعات پس زمینه و اضافی حذف می گردند) اگر بگویید چطور تصویر براتون بگذارم شاید بتونید منظورم را بهتر بگم

                یه سوال دیگه شما در مورد ماتریس ها مطلب یا جزوه ای ندارید این موضوع را در کدوم تاپیک می تونم مطرح کنم
                3-بازم یه سوال دیگه بعضی اوقات که بعضی دیتا بیس ها را دانلود می کنم یه فایل Access اونم به صورت Short cut بهم میده ای قضیش چیه؟

                ببخشید زیاد سوال می کنم

                دیدگاه


                  #23
                  پاسخ : تشخیص چهره با ICA

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

                  برای پلود کردن تصویر ...
                  http://www.eca.ir/forum2/index.php?topic=10924.0

                  برای مطرح ردن سوال در مورد ماتریس ...
                  http://www.eca.ir/forum2/index.php?board=130.0

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

                  دیدگاه


                    #24
                    پاسخ : تشخیص چهره با ICA

                    دیدگاه


                      #25
                      پاسخ : تشخیص چهره با ICA

                      سلام
                      بالاخره عکس را گذاشتم
                      ببینید مرحله اول کار من را دقیقا همان مرحله اول بلوک دیاگرام است ینی به سادگی اگر مشخص کنم از هر ماتریس تصویر چه سطر و ستون هایی را ببرم مشکل حل می شه اما چون بعضی عکس ها یه کم سر جا بجا شده مشکل بوجود می یاد

                      دیدگاه


                        #26
                        پاسخ : تشخیص چهره با ICA

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

                        این تصویر چقدر برای من آشناست!! این بریده ای از کدوم Paper هست؟ ممکنه نام نویسنده ی اون رو بفرمایید؟ در مورد ادامه ی سوالتون .. فردا در موردش صحبت میکنیم .. موفق باشید ..
                        دوستان! مدتی کمتر به سایت میام ..

                        دیدگاه


                          #27
                          پاسخ : تشخیص چهره با ICA

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

                          دیدگاه


                            #28
                            پاسخ : تشخیص چهره با ICA

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

                            یه عذرخواهی بهتون بدهکارم بابت تاخیر .. شرمنده ..

                            خب از ابتدا شروع میکنیم .. ببینید در مورد سوالی که در مورد تعیین Bounding Box برای تصاویر دیتابیس Face هاتون پرسیده بودید باید خدمتتون عرض کنم که روش در کل وابسته به نوع دیتابیسی میشه که انتخاب کردید .. مثلا نمونه ای از دیتابیس های زیر رو ببینید ..

                            دیتابیس ORL ..


                            دیتابیس FERET ..


                            دیتابیس Yale ..


                            خب همون طور که مشاهده میکنید نوع تصاویر اخذ شده باهم تفاوت داره حتی در Pose ها یا Figure های مختلف .. اما اینها از کلیت قضیه .. برای سوال شما من با فرض دیتابیس Yale یه برنامه ی معمولی نوشتم که میتونید به راحتی Bounding Box صورت هاتون رو پیدا کنید .. متدش رو هم در m.File ضمیمه شده براتون توضیح دادم (البته خیلی خلاصه ..) میتونید از این برنامه استفاده کنید .. اگر خواستید در مورد نوع کارش با هم صحبت میکنیم .. اما Result های این برنامه رو هم دو نمونه براتون گذاشتم تا در مورد نتیجه هم تقریبا مطمئن باشید .. در ضمن میزان جم شدن و باز شدن تصویر در Bounding Box دست خودتونه و فقط کافیه یه عدد ثابت به اون اضافه کنید ..

                            Result اول ..


                            Result دوم ..


                            اما در مورد اون تصویری که فرمودید از یه فایل PPT انتخاب کردید؛ مطمئنم که یه Explanation Operation بوده که توی یه Paper دیدمش .. حالا .. نهایت باید فایل هام رو بگردم .. برنامه رو تست کنید هرجاش مشکل بود؛ مطرح کنید .. موفق باشید ..
                            فایل های پیوست شده
                            دوستان! مدتی کمتر به سایت میام ..

                            دیدگاه


                              #29
                              پاسخ : تشخیص چهره با ICA

                              سلام
                              از جواب قبل خیلی ممنون خیلی کمکم کرد
                              اگر اشکال نداشته باشه می خوام اینجا یه سری سوالات مطلب هم مطرح کنم
                              ببینید دستور reshape تو مطلب همه ستون های یک ماتریس را می تونه پشت سر هم تو یه سطر یا هر چند تا سطر که بخواهیم بچینه
                              حالا دو تا سوال
                              ایا دستوری هم هست این کار را به این صورت انجام بده که همه ستون ها را در یک ستون بچینه؟
                              دوما اینکه آیا دستوری داریم که عکس این دستور کار کنه یعنی یه ستون یا یه سطر خاص را به یک ماتریس با سطر و ستون مشخص تبدیل کنه؟

                              دیدگاه


                                #30
                                پاسخ : تشخیص چهره با ICA

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

                                اون دستوری رو که گفتید، باید برم دنبالش .. فکر کنم برای PCA میخواید درسته؟ همون بردار eigenvalue هاتون .. اگه اینه بفرماییید تا من روی جزئیات PCA تمرکز کنم (هرچند که دستورش توی متلب هست ..) .. موفق باشید ..
                                دوستان! مدتی کمتر به سایت میام ..

                                دیدگاه

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