۰۶-۲۶-۱۳۹۲, ۱۰:۵۲ بعد از ظهر
|
#20 (لینک دائم)
|
عضو فوق فعال
تاريخ عضويت: فروردين ۱۳۹۰
محل سكونت: iran
پست ها: 22
تشكرها: 19
1 تشكر در 1 پست
My Mood:
|
نقل قول:
نوشته اصلي بوسيله raha_hakhamanesh
به نام خدا
خب در حقیقت تفاوت های پردازش تصویر و بینایی کامپیوتر در چنین مواردی مشخص می شود.
شما نیاز ندارید به اینکه موقعیت نقاط را داشته باشید این روش مبتنی بر یادگیری است.
در واقع شما دارید نمونه هایی را به 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);
|
با سلام مجدد.
ببخشید مگر تابع svmpredict روی تصاویر تست اعمال نمی شود... در تصاویر تست هم که ما می خواهیم تابع خودش تشخیص دهد تصویر معیوب است یا خیر پس LABEL را که ما نمی توانیم بدهیم... مگر خود این تابع نباید LABEL را برای ما مشخص کند؟؟؟؟؟
|
|
|