هدف این پروژه در ابتدا دسته بندی انواع مختلف اعداد دست نویس فارسی بر اساس شکل ظاهری و سپس طبقه‌بندی ارقام دستنویس ورودی به مشابه ترین گروه به منظور تشخیص رقم مربوطه است. برای دسته بندی ها از مجموعه ارقام دست نویس فارسی تهیه شده تا کنون بهره برده می شود و برای تشخیص شباهت عدد ورودی به هر کدام از دسته ها می‌توان از هریک از روش‌های طبقه‌بندی استفاده کرد. در این پروژه چند روش برای طبقه‌بندی ارقام که به نظر مناسب‌تر هستند بررسی و مقایسه شوند.

۱. مقدمه

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

بازشناسی ارقام وحروف دستنویس فارسی. موضوعی است که سالهاست روی آن کار میشود چه در حوزه تحقیقات دانشگاهی وچه در حوزه های تجاری وکاربردی.مقالات وپایان نامه های در این زمینه ارئه شده است والبته کارهای صنعتی زیادی هم صورت گرفته است
از مهمترین کاربردهای شناسایی ارقام وحروف دستنویس :

· وارد کردن اطلاعات اسناد اداری از جمله چک ها و فرم های پر شده
· شناسایی اتوماتیک شماره پلاک برای سیستم کنترل ترافیک
· شناسایی کاراکترهای نوشته شده بر روی صفحات لمسی
· کنترل سیستم به وسیله رسم اشکال
· شکستن کپچا
· طراحی تکنولوژی های یاری دهنده نابینایان و افراد با ضعف بینایی

با وجود پیشرفت های فراوانی که در این حوزه انجام گردیده و وجود نرم افزارهای قدرتمندی مانند Readiris ساخت شرکت I.R.I.S. که این کار را برای کاراکترها و
اعداد لاتین به خوبی انجام می دهند اما متاسفانه در مورد کاراکترها و اعداد فارسی/عربی کیفیت کار آنها بسیار پایین است.
از مشکلاتی که به آن مواجه هستیم اختلاف فراوان در شیوه نگارش اعداد است. و شباهت زیادی که ارقام به هم دارند همچنین افراد با توجه به سطح سواد و مناطق جغرافیایی اعداد را به صورت های متفاوتی می نویسند
وهمچنین نوشتن صفر تو خالی وتو پر می باشد که در طبقه بندی مشکلاتی را بروز میدهد .و همچنین چهار و شش هر کدام به دو صورت متفاوت در بین فارسی نویسان رواج دارند به این ترتیب باید اعداد را در ۱۳ دسته متفاوت طبقه بندی کرد و پس از بررسی عدد وارد شده آن را به شبیه ترین دسته از بین این ۱۳ دسته نسبت داد.

شکل 1 نمایش اعداد فارسی

برای متغیریهای مورد بررسی از پایگاه داده هدی استفاده میشود که اولین مجموعه ی بزرگ دست نویس فارسی مشتمل بر 102353 نمونه دست نوشته سیاه سفید است . این مجموعه طی انجام یک پروژه کارشناسی ارشد در باره بازشناسی برگه های دست نویس تهیه شئده است . داده های این مجموعه از حدود 12000 فرم ثبت نام آزمون سراسری کاشناسی ارشد سال 1384 و آزمون کاردانی پیوسته ی دانشگاه جامع علمی کاربردی سال 1383 استخراج شده است که مورد استفاده در آزمایش ها است .[1]

شکل 2 مجموعه داده ای هدی

۲. کارهای مرتبط

برای سیستم تشخیص کارکترهای دست نویس از سه قسمت تشکیل میشود
1- پیش پردازش
2- استخراج ویژگی
3-طبقه بندی

شکل 3 سیستم تشخیص ارقام دست نویس

در این مقاله[3] برای پیش پردازش کاهش نویز و نرمال سازی تصاویر به اندازه n n انجام می گردد . وبرای استخراج ویژگی
از ویژگی گرادیان استفاده می گردد که اولا مقدار وزاویه گرادیان برای هر نقطه از تصویر محاسبه مشود وبه چند زاویه استاندارد تبدیل میشوند (شکل 5 a ). و اگر زاویه گرادیان بین دو زاویه استاندارد واقع شود نقطه مربوطه درمقدار مختلف در دو زاویه متفاوت بدس خواهد آمد (شکل 5 b ).
سپس 8 تصویر مجزا از روی گرادیان حاصل خواهد شد که هر کدام مربوط به یکی از راستاهای استاندارد .

شکل 5 نحوه استاندارد سازی زاویه گرادیان

وبرای استخراج ویژگی های نهایی از تصاویر قبل نمونه برداری میشود با استفاده از توابع گاسی که تعداد k
k ماسک گاسی با فواصل یکسان به اندازه n/k در راستای افقی و عمودی روی تصویر قرار داده و مقدار مربوط به هر ماسک محاسبه می گردد . که با توجه به اینکه کلا 8 تصویر از روی گرادیان ساخته می شود ودر هر تصویر نمونه برداری با تعداد kk ماسک گاسی صورت می گیرد کلا 8k*k ویژگی از روی گرادیان حاصل می شود .
در شکل 6 مثالی از نحوه به دست آوردن ویژگی گرادیان 4 جهته نشان داده می شود .
شکل 6 نحوه به دست آوردن ویژگی گرادیان 4 جهته a- تصویر اولیه b- تصویر نرمال شده c-تا f- بترتیب تصویر گرادیان در هر یک از راستاهی افقی .قطر اصلی عمودی و قطر فرعی g- بلاکهای مربوط به نمونه برداری از تصویر c

وبرای طبقه بندی دوکرنل RBF و کرنل چند جمله ای برای دسته بندی کننده SVM بصورت جداگانه مورد آزمایش قرار گرفتند .همچنین با استفاده از 4974 نمونه آموزشی و 3939 نمونه آزمایشی که مورد بررسی قرار گرفته بهترین میزان تشخیص حاصل 99.49 در صد بوده است .

'pac' الگوریتم موثر در استخراج ویژگی است و بطور گسترده ای در سیستم های تشخیص ارقام دستنویس مورد استفاده قرار می گیرد[7] .با این حال به سختی میتواند مقابله کند با الگوهای دارای تغییرات غیر خطی پیچیده مثل گسیختن نوشت یا الودگی نویز .
در [5] روش kpca ارائه میشود که مشکلات pca را برطرف میکند . که اولا داده های ورودی نگاشت میشوند به یک فضای با بعدی بالاتر با فاصله kernel و ویژگی ها با حدا اکثر امکان پذیر توصیف میشوند . سپس از pca استفاده میشود تا ویژگی ها ازماتریس ;ernel استخراج شوند آخر از svn برای طبقه بندی تا تصمیم را بگیرد . در این مقاله از پایگاه داده MINST استفاده شده وبهترین میزان تشخیص حاصل 99.1 در صد بوده است .
در [7] از ویژگی های موجک برای دسته بندی وبازشناسی اعداد مجزای فارسی کردند. در این مقاله از دسته بندی کننده svm برای دسته بندی کننده svm برای دسته بندی اعداد فارسی استفاده شد . و در [8] از رهیافتی مبتنی برقالب استخراج وژگی های تصویر استفاده شد . در این مقاله به طور ابتکاری 20 قالب که در بر دارنده مهم ترین اطلاعات تصاویر درستنویس فارسی/عربی هستند انتخاب شدند .برای استخراج ویژگی ها از انظباق قالبی استفاده شد . سپس برای دسته بندی وبازشناسی این تصاویر از شبکه عصبی پرسپتون چدلایه استفاده شد .

۳. آزمایش‌ها

برای انجام ازمایش .در ابتدا باید پایگاه داده اعداد دستنویس فارسی را در نظر گرفت که ما در این آزمایش از اعداد فارسی موجود در مرجع [6] استفاده خواهیم کرد .
در این پایگاه داده 60000 داده آموزشی وجود دارد (برای هر یک از اعداد صفر تا نه، 6000 نمونه). همچنین، 20000 نمونه نیز برای تست در این پایگاه داده وجود دارد (برای هر کدام از اعداد صفر تا نه، 2000 نمونه).
در ابتدا همه عکس ها را به عکس های 16*16تبدیل می کنیم رای انجام این کار در QTاز دستور

  cv::resize(m,ImageInput,Size(16,16));
استفاده می کنیم

به دست آوردن ویژگی ها
برای آستخراج ویژگی ها از توصیف گر HOG استفاده می کنیم که به طور خلاصه بر آن مرور میکنیم
مروری بر توصیف گر HOG :
HOG یکی از پرکاربردتری توصیف گرهای پردازش مقادیر وبینایی ماشین است HOG برای تشخیص اشیا درتصاویر بسیار مناسب است .در HOG میزان ونوع زاویه گرادیان در قسمت های محلی تصویر محاسبه می شود که میتواند به طور موثری ویژگی شکل یک تصویر را ضبط کند. در روش HOG نصویر به سلولهای مربعی کوجک تقسیم میشود و در هر سلول بردار هیستوگرام زاویه گرادیان محاسبه مشود . سپس با استفاده از الگوی بلوکی نتایج هر سلول هنجار می شود ویک بردار ویژگی تشکیل مشود ودر نهایت برای هر بلوک هیستو گرامی از ویژگی ها توصیف گر نهایی تصویر خواهند بود
از کنار هم قرار دادن بردارهای ویژگی سلول ها . یک بردار ویژگی بزرک تر ساخته می شود که بردار ویژگی نهایی حاصل از HOG است .[10]

شکل (7) توضیح کلی عمل HOG

حجم سلول ها 8 8 پیکسل وتعداد سلولها در یک بلوک 16 16 و حجم پنجره 16 * 16 فرض کردیم برای تعیین این مقادیر از دستورات زیر استفاده می شود

        hog.blockSize=Size(16,16);
         hog.blockStride=Size(16,16);
         hog.cellSize=Size(8,8);
         hog.winSize=Size(16,16);

برای طبقه بندی از طبقه بندیکننده SVM استفاده کریدیم که به طور خلاصه بر آن مرور می کنیم
مروری بر طبقه بندی کننده SVM :
یکی از روش‌های یادگیری بانظارت است که از آن برای طبقه‌بندی و رگرسیون استفاده می‌کنند.
این روش از جملهٔ روش‌های نسبتاً جدیدی است که در سال‌های اخیر کارایی خوبی نسبت به روش‌های قدیمی‌تر برای طبقه‌بندی از جمله شبکه‌های عصبی پرسپترون نشان داده است. مبنای کاری دسته‌بندی کنندة SVM دسته‌بندی خطی داده‌ها است و در تقسیم خطی داده‌ها سعی می‌کنیم خطی را انتخاب کنیم که حاشیه اطمینان بیشتری داشته باشد. حل معادلة پیدا کردن خط بهینه برای داده‌ها به وسیله روش‌های QP که روش‌های شناخته شده‌ای در حل مسائل محدودیت‌دار هستند صورت می‌گیرد. قبل از تقسیمِ خطی برای اینکه ماشین بتواند داده‌های با پیچیدگی بالا را دسته‌بندی کند داده‌ها را به وسیلهٔ تابعِ phi به فضای با ابعاد خیلی بالاتر می‌بریم. برای اینکه بتوانیم مساله ابعاد خیلی بالا را با استفاده از این روش‌ها حل کنیم از قضیه دوگانی لاگرانژ برای تبدیلِ مسالهٔ مینیمم‌سازی مورد نظر به فرم دوگانی آن که در آن به جای تابع پیچیدهٔ phi که ما را به فضایی با ابعاد بالا می‌برد، تابعِ ساده‌تری به نامِ تابع هسته که ضرب برداری تابع phi است ظاهر می‌شود استفاده می‌کنیم. از توابع هسته مختلفی از جمله هسته‌های نمایی، چندجمله‌ای و سیگموید می‌توان استفاده نمود.[9]
در روش ما از SVM خطی و کرنل چند کلاسی استفاده شده ونتایج حاصل زیر نوشته شده است .
نتایج
شکل 8 confusion matrix

شکل 8 confusion matrix

تعداد نمونه نمونه های به درست تشخیص شده نمونه های به درستی تشخیص نشده دقت
20000 18464 1536 92.23%

کد اینجامیتوانید مطالعه نمایید .
بهبود نتایح آزمایشات
همان طور که در مرحله قبلی گفته شد، توانستیم تا با روش بالا به دقت 92% برسیم، برای بهبود کار سعی شد که ویژگی ها را بیشتر کنیم
برای این کار حجم سلول های hog را کمتر می کنیم . در مرحله قبل حجم سلول ها 8 پیکسل بوده , در ای مرحله تست حجم سلول ها 2 2 می گیریم و امتحان میکنیم
*نتایج

شکل 9 confusion matrix

شکل 9 confusion matrix

تعداد نمونه نمونه های به درست تشخیص شده نمونه های به درستی تشخیص نشده دقت
20000 19434 556 97.12%

از این نتیجه میگیریم با کمتر کردن حجم سلول ها دقت بیشتر می شود ولی با کمتر کردن بیش از حد دقت کمتر میشود چون سلول ها انقدر کوچک شدن که نویز ها را می نمایش میدهد .

۴. نتیجه گیری و کارهای آینده

۵. مراجع

[1] H. Khosravi and E. Kabir, "Introducing a very large dataset of handwritten Farsi digits and a study on their varieties," Pattern Recognition Letters, vol. 28, pp. 1133-1141, 2007
[2] Claude Chouinard, Rejean Plamondon “Thinning and Segmenting Handwritten Characters by Line Following”, Ecole Polytechnique de Montreal, Machine Vision and Applications, 1992
[3]حسن سلطان زاده, محمد رحمتی, شناسایی ارقام دستنویس فارسی با استفاده از گرادیان و دسته بندی کننده ماشین بردار پشتیبان
[4] Handwritten Digit Recognition by Adaptive-Subspace Self-Organizing Map (ASSOM) ,Bailing Zhang ,Minyue Fu, Hong Yan, and Marwan A. Jabri 1999
[5]Naigong Yu and Panna Jiao,Handwritten Digits Recognition Approach Research based on Distance &Kernel PCA 2012
[6] صفحه رسمی مجموعه دادگان هدی
[7]A. Mowlaei and K. Faez. Recognition of isolated handwritten Persian/Arabic characters
and numerals using support vector machines. In Proc. IEEE 13th Workshop on Neural Networks
for Signal Processing, pages 547–554, 2003.
[8] M. Ziaratban, K. Faez, and F. Faradji. Language-based feature extraction using templatematching
in Farsi/Arabic handwritten numeral recognition. In Proc. Ninth International
Conference on Document Analysis and Recognition, volume 1, pages 297–301, 2007.
[9]www.wikipedia.org
[10] Cheng-Lin Liu, Kazuki Nakashima, Hiroshi Sako, Hiromichi Fujisawa. Handwritten
digit recognition: investigation of normalization and feature extraction techniques. Pattern
Recognition, 37:256–279, 2004.
پیوندهای مفید

رد شده
تایید شده

متن خوب و قابل فهم است، مقدمه مناسب است و مراجع به خوبی ذکر شده و همچنین به کار های مرتبط به خوبی پرداخته شده است.
فقط در بعضی موارد اشکال های نگارشی وجود دارد مانند استفاده از "." به جای "،" و همچنین افعال نا مناسب در چند جمله به چشم می خورد و حتی یک جمله بدون فعل ذکر شده است . جا افتادن بعضی حروف در بعضی کلمات نشانه ی بازخوانی نشدن پروژه توسط نویسنده می باشد.
به نتیجه گیری و کار های آینده پرداخته نشده است.
بهتر بود به جای استفاده از واژگان انگلیسی به صورت فارسی نوشته شده و معادل انگلیسی آن در پاورقی ذکر شود.

رد شده

با سلام ، شما فاز نهایی را انجام نداده اید .ولی بهبود نتایج و مقایسه و نتیجه گیری صورت گرفته است . خسته نباشید .

تایید شده

با سلام
با تشکر از تلاش شما، ذکر چند نکته را لازم می دانم :
متن پروژه شما، فاقد هرگونه علائم نگارشی است که خواندن را برای مخاطب بسیار سخت می کند.همچنین غلط های املایی بسیاری نیز دیده می شود. متن در بعضی قسمت ها ثقیل شده که نشان از ترجمه ی لغت به لغت دارد.
همچنین بهتر بود به جای استفاده از کلمات انگلیسی در متن ، فارسی آنها را قرار می دادید و معادل انگلیسی را درپاورقی قرار می دادید.
مشکل دیگر حجم بسیار زیاد داده ها می باشد ، می بایست از روش هایی جهت کاهش حجم داده ها استفاده می کردید.
بهتر بود در قسمت نتایج ، نمونه از از نتیجه ی درست و غلط را بیان می کردید و تنها به ذکر دقت اکتفا نمی کردید.
تلاشی برای کارهای آینده نیز انجام نشده است.
با تشکر و خسته نباشید.

تایید شده

با سلام و خسته نباشید به شما
پروژه شما در مرحله توصیف و بیان مسئله ، به خوبی هدف از مسئله را توضیح و روش های انجام آن را بیان کردید ولی چند نکته حائز اهمیت در پروژه شما وجود دارد :
1- در پروژه شما چندین مورد غلط املایی و عدم نگارش وجود دارد که نشان از عدم مطالعه دوباره شما میدهد .
2- در قسمت بهبود نتایج ، شما فقط به بیان این که حجم سلول ها را کمتر می کنیم بسنده کردید و زیاد درباره شیوه انجام آن توضیح ندادید .
3- مهم تر از همه این که در قسمت کارهای آینده از شما انتظار می رفت تا به بیان ایده های خود که فرصت بررسی آن را نداشتید بپردازید که متاسفانه اینگونه نشد .

تایید شده

خسته نباشید چند نکته به نظر من رسید،

  • رسم این است و بهتر بود که شکل ها همراه با بخش مربوطه‌ی آن ها نام‌گذاری می‌شدند، مثلا: شکل ۱-۲ مجموعه داده ای هدی

  • ارجاعات به مقاله ها به صورت نادرست داده شده است، ارجاعات باید در پایان جمله داده‌ می‌شوند و از عباراتی چون " این مقاله" استفاده نکنید، در صورت نیاز میتوان به صورت "[Kazama et.al.]" در جمله به مقاله ارجاع داد.

  • ساختار و بخش‌بندی ها کلی بوده و جا داشت که از بخش‌بندی‌های زیرین استفاده می‌کردید، مثلا: ۳-۱ پیاده‌سازی و ...

  • بخش نتیجه گیری و کار‌های آینده که بخش بسیار مهمی می باشد نوشته نشده. در کل این پروژه سال های اخیر هم انجام شده و بهتر بود کاری متفاوت یا بیشتر ارائه میشد.

تایید شده

با سلام و خسته نباشید. نکته های مهم قبلا ذکر شده و نقدهای دوستان در این فاز نکات کاملی را در بردارد. شاید مهم ترین نکته در مورد کار شما عدم نمایش نمونه های درست و غلط در متن گزارش است. بخش کارهای آینده هم وجود ندارد. امیدوارم موفق باشید.