‫۹ سال و ۳ ماه قبل، جمعه ۵ تیر ۱۳۹۴، ساعت ۲۰:۳۶
- مرحله‌ی اول، بیرون کشیدن مستطیل شماره پلاک خودرو از داخل یک عکس کلی است؛ چیزی شبیه به مطلب «تشخیص چهره». اگر به پوشه‌ی دیتا OpenCV مراجعه کنید، فایل xml تشخیص مستطیل شماره پلاک خودروهای روسی را دارد؛ فایل‌های haarcascade_licence_plate_rus_16stages.xml و haarcascade_russian_plate_number.xml. نحوه‌ی استفاده‌ی از این فایل‌ها، دقیقا همانند مطلب تشخیص چهره‌است. برای تشخیص شماره پلاک‌های ایرانی، باید از روش کلی مطرح شده در مطلب «طراحی classifier سفارشی تشخیص خودروها» استفاده کنید. یک سری عکس تهیه کنید و بعد فایل XML آن‌را استخراج کنید.
- مرحله‌ی دوم، با مطلب جاری تفاوتی ندارد:

ابتدا اصل پلاک باید تشخیص داده شود (همان مطلب تشخیص چهره با یک فایل XML مناسب). بعد بهبود کیفیت تصویر پلاک و آماده سازی آن برای استخراج کانتورها است. سپس این اشیاء یافت شده را به الگویتم مثلا CvKNearest ارسال و شمار‌ه‌ی گروه هر کانتور را دریافت می‌کنید (روش OCR مطلب جاری).

یک نکته‌ی تکمیلی
فایل‌های XML یافتن مستطیل شماره پلاک‌های چند کشور مختلف را در پروژه‌ی openalpr می‌توانید پیدا کنید. این پروژه از OpenCV برای تشخیص پلاک و سپس از Tesseract OCR برای انجام کار OCR نهایی استفاده می‌کند (Tesseract OCR یک OCR سورس باز تهیه شده توسط گوگل است).
‫۹ سال و ۳ ماه قبل، جمعه ۵ تیر ۱۳۹۴، ساعت ۱۷:۴۵
برای کار با وب کم و دوربین دیجیتال، این مقدار را باید محاسبه کرد (شمارش تعداد فریم دریافتی در طی حداقل 3 ثانیه):
private static double getFps(CvCapture capture)
{
    double counter = 0;
    double seconds = 0;
    var watch = Stopwatch.StartNew();
    while (capture.QueryFrame() != null)
    {
        counter++;
        seconds = watch.ElapsedMilliseconds / (double)1000;
        if (seconds >= 3)
        {
            watch.Stop();
            break;
        }
    }
    var fps = counter / seconds;
    return fps;
}
و بعد برای استفاده:
using (var capture = CvCapture.FromCamera(index: 0))
{
    var fps = getFps(capture);
    capture.SetCaptureProperty(CvConst.CV_CAP_PROP_FPS, fps);
    var interval = (int)(1000 / fps);
‫۹ سال و ۳ ماه قبل، پنجشنبه ۴ تیر ۱۳۹۴، ساعت ۱۶:۲۷
اندازه‌ی کرنل برای کار با بسیاری از متدهای دیگر باید یک عدد فرد باشد (در مورد عدد 21) و ... مربعی هست. در حقیقت یک ماتریس یک سطری با 21 ستون است (شیء CvMat تعریف شده از آن).
‫۹ سال و ۳ ماه قبل، چهارشنبه ۳ تیر ۱۳۹۴، ساعت ۲۳:۵۷
بله. امکان پذیر نیست؛ چون این وظایف در ترد اصلی یک برنامه‌ی وب اجرا نمی‌شوند. رفتار با آ‌ن‌ها باید شبیه به رفتار با برنامه‌های دسکتاپ یا کنسول ویندوزی باشد. البته به اطلاعاتی مانند HttpRuntime.AppDomainAppPath دسترسی خواهید داشت.
‫۹ سال و ۳ ماه قبل، چهارشنبه ۳ تیر ۱۳۹۴، ساعت ۲۲:۰۵
- مشکل primary key در نگارش‌های اخیر EF برطرف شده. این مشکل با EF 4.x وجود داشت.
- 4 گیگ حداکثر. الان حدود 147 مگ هست.
- ضمنا به نظر نگارش Compact دیگر توسعه نخواهد یافت و تکلیفش مشخص نیست. ولی ... خوب کار می‌کند.
‫۹ سال و ۳ ماه قبل، سه‌شنبه ۲ تیر ۱۳۹۴، ساعت ۰۰:۵۵
در مطلب تهیه trained data اشاره‌ای به این موضوع شده‌است. اگر تعداد stage معرفی شده بیشتر شود، دقت بیشتر خواهد شد و به همین ترتیب، تهیه‌ی داده‌ی آموزش داده شده کندتر می‌شود. همچنین در اینجا الگوریتم‌های زیادی هم برای آزموش دادن داده‌ها وجود دارند؛ نمونه‌ای که بکار گرفته شد LBP یا Local binary Pattern بود که بسیار سریع هست. روش‌های دیگر دقت بالاتری دارند اما کند هستند. درکل باید روی الگوریتم‌ها و تعداد stages بیشتر بررسی کنید. به علاوه الگوریتم‌های FaceRecognizer دیگری هم وجود دارند که نیاز به بررسی بیشتری دارند. در مطلب جاری فقط الگوریتم فیشر این سری بررسی شد.
‫۹ سال و ۳ ماه قبل، سه‌شنبه ۲ تیر ۱۳۹۴، ساعت ۰۰:۵۲
یک عکس کافی نیست. این‌ها الگوریتم‌های machine learning هستند و متد Train ایی که اینجا بکار گرفته شده، دقیقا به همین منظور است. هر چقدر تعداد نمونه‌های بیشتری از یک شخص داشته باشید (مثل تصویر ابتدای بحث یا مطلب تهیه trained data)، دقت کار بیشتر می‌شود.