راهنمایی در مورد متد DetectMultiScale کتابخانه OpenCv - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

وبـــلاگ هــفت خــط کــد


آموزش های برنامه نویسی
۱۵۸ نفر آنلاین
۰ عضو و ۱۵۸ مهمان در سایت حاضرند

راهنمایی در مورد متد DetectMultiScale کتابخانه OpenCv

0 امتیاز
22 بازدید

سلام وقت بخیر
در مورد پارامترهای ورودی minNeighbors و scaleFactor توضیح میخواستم:

var faces = cascade.DetectMultiScale(
               image: grayImage,
               scaleFactor: 1.1,
               minNeighbors: 2,
               flags:  HaarDetectionType.DoRoughSearch | HaarDetectionType.ScaleImage,
minSize: new OpenCvSharp.Size(100, 100)
               );

 

سوال شده آذر 18, 1396  بوسیله ی shaghaghi (امتیاز 13)   1

1 پاسخ

+1 امتیاز
 
بهترین پاسخ
پارامتر scaleFactor :اندازه پرش بین مقیاس های مختلف را تعیین می کند . تنظیم این پارامتر به مقدار بالاتر به معنی سریع تر بودن کد ( بار محاسباتی پایین) و همچنین دقت پایین تر پروسه شناسایی .چون گام تغییر scale ممکن است به اندازه ای بزرگ باشد که  بر روی آبجکت مدنظرمان فیت نشود.
 
 پارامتر minNeighbors : کنترل برای جلوگیری ازfalse detection است. به طور مثال در کاربرد شناسایی چهره مکان های واقعی چهره در یک تصویر معمولا "بازدید" چندگانه را در همان ناحیه به دست می آورند . تنظیم این پارامتر بر روی 3 یعنی نواحی به عنوان چهره تشخیص داده شوند که ناحیه مورد نظر 3 بار رای جهت چهره بودن این ناحیه دریافت کرده باشد.
پاسخ داده شده آذر 18, 1396 بوسیله ی عباس مولایی (امتیاز 458)   1 5
ضمن تشکر از پاسخگویی شما
با این تفاسیر که فرمودید
حالا بفرمایید که اگر در نظر داشته باشیم تابعی بنویسیم تا ارزیابی کند آیا تصویر مرود نظر شامل دست کم یک چهره است یا خیر.
مطابق تجربه شما برای دستیابی به بهترین نتیجه این پارامترها را با چه اعدادی مقدار دهی کنیم؟
اگر قصد دارید یک کار دم دستی انجام بدید min =3 و scale=1.1 قرار بدید و اگر تصمیم دارید کار را با دقت بالاتر انجام بدید باید سراغ روش های دیگه  برید.
...