Artificial Intelligence - هوش مصنوعی  
انجمن را در گوگل محبوب کنيد :

بازگشت   Artificial Intelligence - هوش مصنوعی > یادگیری (Learning) > یادگیری با نظارت > يادگيري ماشيني(Machine learning )


 
تبليغات سايت
Iranian Association for the Advancement of Artificial Intelligence
ارسال تاپيک جديد  پاسخ
 
LinkBack ابزارهاي تاپيک نحوه نمايش
قديمي ۰۶-۱۸-۱۳۹۲, ۱۱:۴۱ بعد از ظهر   #1 (لینک دائم)
عضو فوق فعال
 
آواتار s.b
 
تاريخ عضويت: فروردين ۱۳۹۰
محل سكونت: iran
پست ها: 22
تشكرها: 19
1 تشكر در 1 پست
My Mood: Mehrabon
پيش فرض Sift و svm

با سلام.
1- من با استفاده از الگوریتم SIFT که در سایت Keypoint detector وجود دارد، نقاط کلیدی و ویژگی های تصویرم رو بدست آوردم.

حالا می خواستم این نقاط رو با svm دسته بندی کنم ولی دقیقا نمیدونم ویژگیهایی که تابع SIFT
برمیگرداند چه چیزهایی هستند که با استفاده از آنها این نقاط رو دسته بندی کنم.

اگر امکان داره یکی کمک کند.....

2- نحوه دسته بندی کردن این نقاط بدست آمده از خروجی SIFT با svm هم اگر توضیحاتی بدهید ممنون میشم.
با تشکر از کمک های شما...
s.b آفلاين است   پاسخ با نقل قول

  #ADS
نشان دهنده تبلیغات
تبليغگر
 
 
 
تاريخ عضويت: -
محل سكونت: -
سن: 2010
پست ها: -
 

نشان دهنده تبلیغات is online  
قديمي ۰۶-۱۹-۱۳۹۲, ۰۲:۰۸ قبل از ظهر   #2 (لینک دائم)
Active users
 
آواتار mahdiii
 
تاريخ عضويت: اسفند ۱۳۸۸
محل سكونت: مشهد
پست ها: 355
تشكرها: 27
167 تشكر در 131 پست
My Mood: Khoshhal
پيش فرض

یکم بیشتر توضیح بدین دقییق کارتون چیه
از یه تصویر ویژگی استخراج کردین!!؟
اگه مسالتون دسته بندی هست باید چند دسته تصویر داشته باشین
مثلا یه دسته تصاویر ادم
یه دسته ماشین
یه دسته جنگل
مثلا برای مساله بازیابی تصویر گفتم
بعد شما میاین نقاطو استخراج می کنین تو تصاویر و بعدش بردار ویژگی برای هرنقطه که تو روش SIFT 128 تا هست. یعنی میشه تو فضای 128 بعدی. بعد با داشتن این بردارهای 128 تایی برای هر نقطه برای هر تصویر و داشتن برچسبشون(آدم برچسب صفر ماشین 1 و ...) میتونین از svm استفاده کنین
mahdiii آفلاين است   پاسخ با نقل قول
از mahdiii تشكر كرده است:
s.b (۰۶-۱۹-۱۳۹۲)
قديمي ۰۶-۱۹-۱۳۹۲, ۰۹:۰۵ قبل از ظهر   #3 (لینک دائم)
عضو فوق فعال
 
آواتار s.b
 
تاريخ عضويت: فروردين ۱۳۹۰
محل سكونت: iran
پست ها: 22
تشكرها: 19
1 تشكر در 1 پست
My Mood: Mehrabon
پيش فرض

با سلام.
من کارم دقیقا تشخیص عیوب سطوح چوب هست. ویژگی های تصویر رو با SIFT بدست آوردم و با SVM می خوام کار دسته بندی رو انجام بدم.
مثلا یک تصویر سطح چوب را که به تابع sift داده ام 443 نقطه کلیدی پیدا کرده است و دو متغیر با نام های descrips و loc نیز داده است.

متغیر descrips ماتریسی 128*443 خانه ای است که ویژگی های تصویر را دارد. من این ماتریس را متوجه نمی شوم.....
همچنین نمی دانم کدام یک از این خروجی های تابع sift رو باید به svm بدهم....

اگر دارم اشتباه می کنم لطفا راهنمایی کنید....ممنون

با تشکر.
s.b آفلاين است   پاسخ با نقل قول
قديمي ۰۶-۱۹-۱۳۹۲, ۱۲:۲۳ بعد از ظهر   #4 (لینک دائم)
Super Moderator
 
آواتار raha_hakhamanesh
 
تاريخ عضويت: خرداد ۱۳۸۷
محل سكونت: دنیا
پست ها: 281
تشكرها: 28
253 تشكر در 147 پست
My Mood: Zodranj
پيش فرض

نقل قول:
نوشته اصلي بوسيله s.b نمايش پست
با سلام.
من کارم دقیقا تشخیص عیوب سطوح چوب هست. ویژگی های تصویر رو با sift بدست آوردم و با svm می خوام کار دسته بندی رو انجام بدم.
مثلا یک تصویر سطح چوب را که به تابع sift داده ام 443 نقطه کلیدی پیدا کرده است و دو متغیر با نام های descrips و loc نیز داده است.

متغیر descrips ماتریسی 128*443 خانه ای است که ویژگی های تصویر را دارد. من این ماتریس را متوجه نمی شوم.....
همچنین نمی دانم کدام یک از این خروجی های تابع sift رو باید به svm بدهم....

اگر دارم اشتباه می کنم لطفا راهنمایی کنید....ممنون

با تشکر.

به نام خدا
در مورد sift بیشتر مطالعه کنید. چنانکه احتمالا می دانید sift به ازای هر نقطه کلیدی یک بردار ویژگی 128 عنصری بعنوان خروجی میدهد بنابراین برای معرفی هر عنصر مهم یا بعبارتی همان نقاط با اهمیت یک (مثلا) آرایه 128 عضوی داریم. حالا اگر شما 443 نقطه کلیدی رو استخراج کرده باشید (که توصیه می کنم با pca اون رو کاهش بدید و مثلا 100 نقطه خیلی مهم رو انتخاب کنید) قاعدتا باید یک آرایه دو بعدی 128*443 داشته باشید که باید تحویل svm بدید.

موفق باشید
__________________
.
.
.
برای تشکر دکمه مخصوص وجود دارد لطفا پست هرز ایجاد نکنید
.
.
اینقدر از دسترسی نداشتن به مقاله شیون نکنید

مقالات انگلیسی: ایران سای (ISI, IEEE, ACM)
مقالات فارسی: سیویلیکا (کنفرانس داخلی)
مقالات فارسی: مگ ایران (ژورنالهای داخلی)
raha_hakhamanesh آفلاين است   پاسخ با نقل قول
از raha_hakhamanesh تشكر كرده است:
s.b (۰۶-۱۹-۱۳۹۲)
قديمي ۰۶-۱۹-۱۳۹۲, ۱۲:۳۴ بعد از ظهر   #5 (لینک دائم)
عضو فوق فعال
 
آواتار s.b
 
تاريخ عضويت: فروردين ۱۳۹۰
محل سكونت: iran
پست ها: 22
تشكرها: 19
1 تشكر در 1 پست
My Mood: Mehrabon
پيش فرض

با سلام.
راجع به svm من مثالهایی که دیدم مختصات نقاط، گروه هرکدام از این نقاط و اینکه نوع kernel برای svm مشخص میشد ولی این آرایه دو بعدی که از SIFT بدست آمده است مختصات نقاط رو نداره...
s.b آفلاين است   پاسخ با نقل قول
قديمي ۰۶-۱۹-۱۳۹۲, ۰۱:۳۶ بعد از ظهر   #6 (لینک دائم)
Super Moderator
 
آواتار raha_hakhamanesh
 
تاريخ عضويت: خرداد ۱۳۸۷
محل سكونت: دنیا
پست ها: 281
تشكرها: 28
253 تشكر در 147 پست
My Mood: Zodranj
پيش فرض

نقل قول:
نوشته اصلي بوسيله s.b نمايش پست
با سلام.
راجع به svm من مثالهایی که دیدم مختصات نقاط، گروه هرکدام از این نقاط و اینکه نوع kernel برای svm مشخص میشد ولی این آرایه دو بعدی که از SIFT بدست آمده است مختصات نقاط رو نداره...
به نام خدا
خب در حقیقت تفاوت های پردازش تصویر و بینایی کامپیوتر در چنین مواردی مشخص می شود.
شما نیاز ندارید به اینکه موقعیت نقاط را داشته باشید این روش مبتنی بر یادگیری است.

در واقع شما دارید نمونه هایی را به SVM می دهید که می گوید سطح مورد نظر دارای عیب است. وقتی می خواهید با SVM کار کنید باید نمونه ها را تفکیک کنید مثلا نمونه معیوب و نمونه سالم. خب پس دو ماتریس خواهید داشت ماتریس اول مربوط به نمونه های سالم و ماتریس دوم مربوط به نمونه های معیوب. که این ماتریس ها توسط یک توصیف کننده مثل SIFT تولید شده اند.

مثال:

كد:
A is a Matrix [1000, 128] of good surfaces B is a Matrix[5000, 128] of bad surfaces TestData = [A, B] TestLbl=[1 for A, -1 for B]
training_instance_matrix = TestData; training_label_vector = TestLbl; model = svmtrain(training_label_vector, training_instance_matrix, ['-t 0']); %================================== testing_instance_matrix = TestData; testing_label_vector = TestLbl; [predicted_label, accuracy, decision_values] = svmpredict(testing_label_vector, testing_instance_matrix, model);
__________________
.
.
.
برای تشکر دکمه مخصوص وجود دارد لطفا پست هرز ایجاد نکنید
.
.
اینقدر از دسترسی نداشتن به مقاله شیون نکنید

مقالات انگلیسی: ایران سای (ISI, IEEE, ACM)
مقالات فارسی: سیویلیکا (کنفرانس داخلی)
مقالات فارسی: مگ ایران (ژورنالهای داخلی)
raha_hakhamanesh آفلاين است   پاسخ با نقل قول
از raha_hakhamanesh تشكر كرده است:
s.b (۰۶-۱۹-۱۳۹۲)
قديمي ۰۶-۱۹-۱۳۹۲, ۰۱:۵۴ بعد از ظهر   #7 (لینک دائم)
عضو فوق فعال
 
آواتار s.b
 
تاريخ عضويت: فروردين ۱۳۹۰
محل سكونت: iran
پست ها: 22
تشكرها: 19
1 تشكر در 1 پست
My Mood: Mehrabon
پيش فرض

با سلام.
ببخشید چندتا سوال برام پیش اومده.
1- یعنی تمام تصاویر سالم را به sift بدهم و خروجی هایی که بدست آمده است را به صورت یکجا در ماتریس A قرار بدهم. و همین کار را برای تمام تصاویر معیوب انجام دهم؟
2- در کدی که svmtrain را نوشته اید از training_label_vector و training_instance_matrix استفاده کرده اید، این متغیرها چه چیزی را نشان می دهند و محتوای آنها چیست؟؟
3- این کد به libsvm نیاز دارد. درسته؟
با تشکر.
s.b آفلاين است   پاسخ با نقل قول
قديمي ۰۶-۲۰-۱۳۹۲, ۰۵:۱۲ بعد از ظهر   #8 (لینک دائم)
Super Moderator
 
آواتار raha_hakhamanesh
 
تاريخ عضويت: خرداد ۱۳۸۷
محل سكونت: دنیا
پست ها: 281
تشكرها: 28
253 تشكر در 147 پست
My Mood: Zodranj
پيش فرض

نقل قول:
نوشته اصلي بوسيله s.b نمايش پست
با سلام.
ببخشید چندتا سوال برام پیش اومده.
1- یعنی تمام تصاویر سالم را به sift بدهم و خروجی هایی که بدست آمده است را به صورت یکجا در ماتریس a قرار بدهم. و همین کار را برای تمام تصاویر معیوب انجام دهم؟
2- در کدی که svmtrain را نوشته اید از training_label_vector و training_instance_matrix استفاده کرده اید، این متغیرها چه چیزی را نشان می دهند و محتوای آنها چیست؟؟
3- این کد به libsvm نیاز دارد. درسته؟
با تشکر.
1- بله
2- داده های آموزشی و برچسب داده های آموزشی
3- بله
__________________
.
.
.
برای تشکر دکمه مخصوص وجود دارد لطفا پست هرز ایجاد نکنید
.
.
اینقدر از دسترسی نداشتن به مقاله شیون نکنید

مقالات انگلیسی: ایران سای (ISI, IEEE, ACM)
مقالات فارسی: سیویلیکا (کنفرانس داخلی)
مقالات فارسی: مگ ایران (ژورنالهای داخلی)
raha_hakhamanesh آفلاين است   پاسخ با نقل قول
از raha_hakhamanesh تشكر كرده اند:
ehsan_teimouri (۰۶-۲۱-۱۳۹۲), s.b (۰۶-۲۰-۱۳۹۲)
قديمي ۰۶-۲۰-۱۳۹۲, ۰۶:۰۵ بعد از ظهر   #9 (لینک دائم)
عضو فوق فعال
 
آواتار digicom
 
تاريخ عضويت: ارديبهشت ۱۳۹۲
محل سكونت: iran
پست ها: 56
تشكرها: 109
13 تشكر در 9 پست
My Mood: Shad
ارسال پيغام Yahoo به digicom
Wink پروژه

با نام خدا و با سلام دوست من
یک کد آموزشی از svm در لینک زیر که برایتان می گذارم موجود است امیدوارم راه حلی بر مشکل شما باشد .
لینک : سایت دانشجویار
موفق و سربلند باشید ..
__________________
اسلام به ذات خود ندارد عیبی ، هر عیبی هست از مسلمانی ماست.

اللهم عجل لولیک الفرج
digicom آفلاين است   پاسخ با نقل قول
از digicom تشكر كرده است:
s.b (۰۶-۲۰-۱۳۹۲)
قديمي ۰۶-۲۲-۱۳۹۲, ۱۲:۲۶ بعد از ظهر   #10 (لینک دائم)
Active users
 
آواتار mahdiii
 
تاريخ عضويت: اسفند ۱۳۸۸
محل سكونت: مشهد
پست ها: 355
تشكرها: 27
167 تشكر در 131 پست
My Mood: Khoshhal
پيش فرض

همون طوری که اشاره شد شما اینجا به مختصات نقاط نیازی ندارین
چون مختصات نقاط به عنوان ویژگی برای شما محسوب نمیشن.
مثلا تو یه مساله با مختصات نقاط میشه دو کلاسو از هم جدا کرد. اونجا مختصات نقاط برامون مهمه و عامل تفکیک. ولی اینجا مختصات نقاط هیچ ربطی و هیچ کمکی در پیدا کردن و کلاسه بندی سطوح معیوب و سالم نمیکنه. اینجا برای ما استخراج ویژگیهایی پایدار و مستقل در تصاویر هست که برای هرنقطه همین بردار 128تایی همین کارو میکنه. این بردار با درنطر گرفتن یک پنجره مربعی -که به 4*4 زیر مربع تقسیم شده- اطراف اون نقطه استخراجی و محاسبه جهت و گرادیان در هر زیرمربع (360 درجه به هشت بازه تقسیم شده پس میشه 4*4*8=128) و ساخت یک بافت نگار 128تایی به دست اومده ، پس باید این نقاطو مثلا 100*128 از تصویر سالم اول استخراج شده و 128*50 از تصویر سالم بعدی و همین طور تا آخر. اینا مربوط به کلاس سطوح سالم هستن. هر نقطه در فضای 128 بعدی درنظرگرفته شده. پس تمام این نقاط 100 برای تصویر سالم اول، 50 برای تصویر سالم دوم و ... با برچسب سالم باید به svm داده بشه و برای تصاویر معیوب هم به همین صورت تمام نقاط با برچسب معیوب به svm داده میشه. مساله شما یه کلاسه بندی به دو کلاس سالم و معیوب در فضای 128 بعدی، با داشتن نقاط 128 بعدی با برچسب سالم و معیوب هست.
فقط نکته ای رو بگم که با pca میشه طول بردارو کاهش داد یعنی به جای اینکه هر نقطه با 128 عدد توصیف شود با طول کمتری مثلا 64 توصیف شود. این یک نکته اسم روششم pca sift هست
و برای اینکه تعداد نقاطتون کمتر بشه و نقاط برجسته تر و مهم تر از تصویر انتخاب بشن نه 1000 تا نقطه باید مقدار آستانه مربوط به الگوریتم sift رو تغییر بدین. الگوریتم sift پارامترهایی داره که با تنظیم اون میتونین نقاط استخراجی برجسته تر رو انتخاب کنین. بنابراین تعداد این نقاط کمتر میشه.
mahdiii آفلاين است   پاسخ با نقل قول
از mahdiii تشكر كرده است:
s.b (۰۶-۲۲-۱۳۹۲)
پاسخ



كاربران در حال ديدن تاپيک: 1 (0 عضو و 1 مهمان)
 

قوانين ارسال
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is فعال
شکلکها فعال است
كد [IMG] فعال است
كدهاي HTML غير فعال است
Trackbacks are فعال
Pingbacks are فعال
Refbacks are فعال




زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۱۲:۳۳ بعد از ظهر ميباشد.


Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.

Teach and Learn at Hexib | Sponsored by www.Syavash.com and Product In Review

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

Inactive Reminders By Icora Web Design