در سامانه‌های پیدا کردن متن در تصویر، هدف آن است که مکان متن موجود در تصویر را مشخص کنیم. برای مثال به تصاویر زیر توجه کنید که چگونه مکان متون موجود در آن‌ها مشخص شده است:

نمونۀ تصاویر با مشخص شدن مکان متن

کاربرد اصلی این مسئله به عنوان یک پیش پردازش قبل از تبدیل تصویر به نوشتار یا همان OCR است.

  • این پروژه توسط یک بنگاه تجاری تعریف شده است.

۱. مقدمه

امروزه دسترسی همگان به دوربین‌های دیجیتال ارزان قیمت، سبب ایجاد حجم عظیمی از تصاویر شده‌ است. دستیابی به اطلاعات سودمند از این حجم عظیم داده، نیازمند پردازش‌های دقیق و با کارایی مناسب است. یکی از این پردازش‌ها، تشخیص متن در تصویر است. پیدا کردن محل متن در تصویر یکی از مراحل اصلی فرآیند تبدیل تصویر به نوشتار است.
تبدیل تصویر به نوشتار سابقه‌ای طولانی دارد. در این روش به شکل سنتی، صفحات پویش1شده بررسی و متن از آن‌ها استخراج می‌شود. تقریباً در تمام موارد، متون به صورت افقی بوده و پس‌زمینۀ آن‌ها سفید است.
آنچه که در تبدیل تصویر به نوشتار رخ می‌دهد؛ با پیدا کردن متن در تصویر تفاوت دارد. در تبدیل تصویر به نوشتار هدف یافتن نویسه‌های2 استفاده شده در متن است؛ اما در پیدا کردن متن هدف یافتن محل متن در تصویر است.
همان‌گونه که مشخص است، امروزه پیدا کردن محل متن به عنوان پیش‌پردازش اصلی تبدیل تصویر به نوشتار، مورد استفاده قرار می‌گیرد. بررسی‌ها بیانگر آن است که کارایی تبدیل تصویر به نوشتار وابستگی بسیاری به کارایی روش پیدا کردن متن در تصویر دارد[1]. این موضوع در بررسی تصاویر مناظر طبیعی3 بسیار محسوس‌تر است.
در روش‌های سنتی محل متن توسط کاربر به صورت دستی مشخص می‌شود. امروزه به دلیل حجم عظیم داده‌ای که برای داده کاوی مورد استفاده قرار می‌گیرند؛ این روش کارایی خود را از دست داده است.
در گذشته مشکلات کمتری برای پیدا کردن متن وجود داشت. در اکثر موارد تصاویر مورد بررسی، پس‌زمینۀ سفید داشتند. جهت متن4 نیز تقریبا افقی بود. این موارد از پیچیدگی مسئله کاسته و کار را بسیار ساده‌تر می‌کند. ابزارهای امروزی برای بررسی این قسم متون کارایی مناسبی دارند و تقریبا اشتباهات آن‌ها بسیار کم و قابل چشم‌پوشی است. پیش‌فرض اکثر این ابزارها استفاده از تصاویر با تفکیک‌پذیری بالا5 و تقریباً سیاه و سفید (متون سیاه و پس‌زمینه سفید) است. البته برخی از آن‌ها وجود عکس، نمودار و سایر خطوط را نیز تشخیص می‌دهند.
تصاویری که افراد از مناظر، اماکن و متون تهیه می‌کنند؛ این پیش‌فرض‌ها را ندارد. در ادامه به برخی از مشکلات پیدا کردن متن‌ در این قسم تصاویر اشاره شده است[2].

مشکلات اصلی تصاویر مورد بررسی:

  • کیفیت پایین: یکی از اصلی‌ترین مشکلاتی که برای پیدا کردن متن در تصویر با آن‌ روبرو هستیم. تصاویری که با دوربین‌های معمولی ثبت می‌گردند؛ قطعاً کیفیت پویشگر‌ها6 را نخواهند داشت.

  • نورپردازی ناهموار7 : میزان نور ممکن است بسیار کم یا بسیار زیاد باشد. امکان تفاوت میزان نور در بخش‌های مختلف یک تصویر به دلیل وجود سایه و بازتاب نور نیز وجود دارد. در صورت استفاده از نور مصنوعی مانند فلاش بخش‌هایی از تصویر روشن و سایر بخش‌ها دارای روشنایی کم‌تر هستند.

  • سطوح غیرمسطح8 : امکان دارد متن مسطح نبوده و دارای عمق باشد. همچنین ممکن است بخشی از متن در یک سطح و بخشی از آن در سطح دیگری باشد. حالت‌های دیگری نیز می‌توان برای متن ذکر نمود. به شکل کلی نمی‌توان پیش‌فرض مشخصی را مدنظر گرفت.

  • پس‌زمینه‌های پیچیده9 : وجود پس‌زمینۀ پیچیده از دو جهت می‌تواند ایجاد مشکل نماید. اول آنکه برخی از اشیا که دارای ساختار منظم و یا بافت خاصی هستند (مانند درها، پنجره‌ها، خطوط خیابان، برگ درختان و غیره [3]) به اشتباه متن شناسایی می‌گردند. دوم آنکه زمانی که پس‌زمینۀ متن تصویری پیچیده است نمی‌توان لبه‌های10 متن را به درستی مشخص نمود.

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

در شکل زیر برخی از مشکلات ذکرشده را می‌توانید مشاهده کنید[4]:

مشکلات پیدا کردن و تشخیص متن در تصویر

موارد ذکر شده در بالا مشکلات اصلی برای پیدا کردن متن در تصاویر است. مشکلات دیگری مانند تنوع در رسم‌الخط‌، فونت، رنگ و اندازه متون وجود دارد.
حال به بررسی اهمیت پیدا کردن و تشخیص متن در تصویر می‌پردازیم. می‌توان این موضوع را با طرح سوالی مورد بررسی قرار داد. چرا با این سطح از پیچیدگی به دنبال پیدا کردن و تشخیص متن در تصویر هستیم؟ این کار می‌تواند سببب بهبود روش‌های مورد استفاده در ابزارهای نویسه‌خوان نوری11 شود. با استفاده از بهبود روش‌ها می‌توان عکس‌های تهیه شده با دوربین‌های معمولی را نیز به نوشته‌های مناسب تبدیل نمود.
دلیل دیگر این کار استفاده از متن تصویر برای نمایه‌12کردن آن است[4]. فرض کنید در تصویری عبارت bank به چشم می‌خورد. می‌توان حدس زد که این تصویر مربوط به ورودی یک بانک است. بررسی این مورد از حوزۀ این تحقیق خارج بوده و تنها برای بیان انگیزه‌های مطرح برای تشخیص متن ذکر شده‌است.

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

جانگ و همکارانش [4]، معماری کلی برای سامانه‌های استخراج اطلاعات متن13 به اختصار TIE ارائه کرده‌اند. این سامانه در شکل زیر [4-5] نمایش داده شده است:

معماری پیشنهادی برای TIE

به طور کلی این معماری برگرفته از الگوی لوله و فیلتر14 است. چهار مرحله اصلی آن عبارتند از:

  • تشخیص موجود بودن متن15 در تصویر

  • پیدا کردن مکان متن16 در تصویر

  • استخراج متن و بهبود کیفیت آن17

  • بازشناسی نویسه‌های18 متن

از میان مراحل بالا، دو مرحلۀ مرزبندی شده در شکل بالا یعنی تشخیص موجود بودن متن و پیدا کردن مکان آن در تصویر، در کارایی سامانه‌های TIE تاثیر بسزایی دارند[5]. لازم به ذکر است در این پژوهش هدف پیدا کردن مکان متن در تصویر است. در ادامه به اختصار به معرفی این دو مرحله می‌پردازیم. همچنین کارهای مرتبط با این پژوهش در بررسی مرحلۀ دوم ذکر خواهند شد.

تشخیص متن: در این مرحله، اطلاعات پیشین19 در مورد وجود داشتن متن در تصویر در اختیار نیست. در واقع وجود داشتن یا نداشتن متن در تصویر باید تشخیص داده شود[4]. این مرحله از حیطۀ کار این پژوهش خارج فرض می‌شود. فرض ما بر این است که تمامی تصاویر مجموعه دادگان دارای متن هستند.
به نظر جانگ و همکارانش [4] محققان توجه زیادی به این مرحله نداشته‌اند. دلیل آن را می‌توان در حوزۀ کاربرد سامانه‌های TIE یافت. معمولا از این سامانه‌ها برای بازشناسی متن در تصاویری استفاده می‌کنیم که از وجود داشتن متن در آن‌ها اطمینان داریم. البته زمانی که هدف بازشناسی متن در ویدئو است، این مرحله اهمیت بسیاری پیدا می‌کند.

پیدا کردن مکان متن: روش‌های موجود پیدا کردن متن را می‌توان تقریبا به دو گروه اصلی کرد[3-4]. مبتنی بر بافت20 و مبتنی بر ناحیه21.

  • روش‌ مبتنی بر بافت: این روش‌ها با تحلیل بافت عکس، متن موجود در آن را پیدا می‌کنند. در اینجا متن به صورت یک بافت خاص مدنظر قرار می‌گیرد و از ویژگی‌های آن استفاده می‌شود. به طور کلی با استفاده از فیلترها و برخی تبدیل‌ها مانند تبدیل موجک22، بردارهای ویژگی از عکس بدست می‌آیند. این بردارها ممکن است به ماشین یادگیری یا رده‌بند ارائه شوند و یا از روش‌های دیگری برای پیدا کردن مکان متن استفاده شود.

  • روش مبتنی بر ناحیه: در این روش‌ها با استفاده از تشخیص لبه و خوشه‌بندی رنگی23 مکان‌های کاندید برای حضور متن پیدا می‌شوند. برای پیدا کردن نویسه‌ها از روش مولفه‌های همبند24 استفاده می‌شود. نواحی بدون متن با استفاده از قواعد اکتشافی25 حذف می‌شوند.

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

اپشتاین و همکارانش [1] از SWT 27 برای استخراج ویژگی‌ از عکس استفاده کرده‌اند. ویژگی‌های استخراج شده با این تبدیل با استفاده از روشی مبتنی بر مولفه‌های همبند (CC)، تبدیل به حروف شده‌اند. سپس حروف تبدیل به خطوط شده و از آن‌ها کلمات بدست آمده‌اند. فلوچارت مراحل بیان شده را به صورت کامل در شکل زیر مشاهده می‌کنید[1]:

فلوچارت الگوریتم پیشنهادی اپشتاین

یائو و همکارانش [3] رویکرد جدیدی را برای پیدا کردن متن ارائه کرده‌اند. این رویکرد برای پیدا کردن متن با جهت‌های دلخواه مناسب است. چهار مرحلۀ اصلی آن را همراه با جزئیات در شکل زیر مشاهده می‌کنید:

مراحل رویکرد پیشنهادی

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

متن‌های پیدا شده

پان و همکارانش [5] روشی ترکیبی را ارائه کرده‌اند. این روش دارای سه مرحله اصلی پیش‌پردازش، تحلیل مولفه همبند و گروه‌بندی متن است. در اینجا استخراج ویژگی‌ها با در نظر گرفتن بافت تصویر صورت می‌گیرد. سپس با بدست آوردن مولفه‌های همبند و استفاده از روش‌های ابتکاری متن بدست می‌آید. در فلوچارت زیر مراحل سامانه پیشنهادی را مشاهده می‌کنید[5]:

فلوچارت سیستم پیشنهادی پان

چن و همکارانش [6] روشی را بر اساس استخراج نواحی کاندید، هرس آن‌ها و گروه‌بندی ارائه کرده‌اند. در این روش ابتدا نواحی کاندید برای وجود داشتن متن بدست می‌آیند. سپس با اعمال دو فیلتر مختلف (فیلتر بر اساس مولفه‌های همبند و فیلتر بر اساس SWT) نواحی بدون متن هرس شده و در انتها با تشکیل خطوط، کلمات بدست می‌آیند. در فلوچارت زیر مراحل به شکل کامل ذکر شده‌اند:

مراحل سیستم پیشنهادی چن

۳. آزمایش‌ها

در این بخش ابتدا به معرفی مجموعه دادگان مورد استفاده می‌پردازم. سپس کد ایجاد شده برای بدست آوردن مکان متن با استفاده از فلوچارت توضیح داده می‌شود. در آخر نیز نتایج گزارش خواهند شد.
مجموعه دادگان: در این پروژه از مجموعه دادگان استفاده شده در ICDAR28 2013 استفاده شده است. این داده‌ها از طریق سایت این کنفرانس در دسترس هستند. البته برای دریافت آن‌ها باید در سایت ثبت‌نام کنید.
داده‌هایی مورد استفاده عکس‌های مربوط به چالش29 دوم این کنفرانس است. این عکس‌ها شامل دو بخش آموزش و آزمون هستند. 229 عکس برای آموزش و 233 عکس برای آزمون ارائه شده‌اند. در مجموع 462 عکس در این مجموعه وجود دارد.
نتایجی که در مقاله ارائه شده این کنفرانس[7] بیان شده‌اند، برای دادگان آزمون بدست آمده است. به طور کلی در این قسم مسائل که کلاس مثبت30 و تشخیص درست آن اهمیت دارد، برای بیان نتایج از دو سنجه دقت31 و فراخوانی32 برای بیان نتایج استفاده می‌کنند. برای این دادگان در مقاله ارائه شده بعد از کنفرانس[7] دقت و فراخوانی‌های زیر گزارش شده‌اند:

نتایج پیدا کردن مکان متن ارائه شده در مقاله کنفرانس

لازم به ذکر است که این نتایج برای روش‌های ارائه شده به کنفرانس گزارش شده‌اند. شما می‎توانید جدیدترین نتایج را از طریق این لینک مشاهده کنید.

روش پیشنهادی: روش پیشنهادی من، شکل ساده شده و البته تغییر یافتۀ روش ارائه شده در [6] است. در مثال‌های موجود در متلب، کدی وجود دارد که به شکل ساده به پیاده‌سازی این روش پرداخته است. شما می‌توانید این مثال را در این لینک مشاهده کنید. کد ارائه شده با ضریب اطمینان بالایی تنها برای چند مثال خاص نتیجه مناسب و قابل قبولی ایجاد می‌کند. برای عکس‌های ارائه شده در خود مثال نتیجه بسیار عالی است. اما برای مجموعه دادگان در اختیار من خروجی خاصی تولید نکرد. در واقع دقت و فراخوانی بدست آمده بسیار ناچیز و غیرقابل قبول بود.
با توجه به مطالب بیان شده به بهبود مثال ارائه شده، تغییر و بهتر کردن نتایج حاصل از آن پرداختم. بخش‌هایی از آن را حذف و قسمت‌هایی را به آن افزودم. همچنین پس از گذشت زمان کمی، هم به صورت تجربی و هم با مراجعه به منابع متوجه شدم که این روش نیازمند تنظیمات دستی33 مناسب برای رسیدن به نتایج قابل قبول است. بنابراین در بخش‌هایی از کد تغییراتی ایجاد کردم تا نتایج بهتر شوند. نتیجه کار تا این لحظه را در سایت گیت‌هاب قرار داده‌ام که از طریق این لینک و لینک ارائه شده در پایین صفحه می‌توانید آن را مشاهده کنید.
به صورت خلاصه کد ارائه شده شامل مراحل زیر است. در ادامه به اختصار به توضیح هر کدام از بخش‌های گفته شده می‌پردازم. سپس نتایج آزمایش را نمایش می‌دهم. همچنین خلاصه نتایج به صورت دقت و فراخوانی نیز ذکر خواهند شد.

روش ارائه شده

توضیحات روش پیشنهادی: این روش دارای 7 مرحله کلی است:

  • مرحله اول: چونکه متن‌های موجود در تصویر در بیشتر موارد دارای رنگ یکسانی هستند، می‌توان با استفاده از تابع یابنده نواحی MSER34 مکان‌هایی که شدت35 رنگ مشابه دارند را فیلتر کرد.[8] نکته قابل توجه در این مرحله وابستگی کامل نتایج به تنظیمات دستی است. یعنی حتما باید ورودی‌های تابع مناسب انتخاب شوند تا تابع نواحی مناسبی را پیدا کند.

  • مرحله دوم: در این مرحله با استفاده از تابع یابنده لبه، با استفاده از متد سوبل36 لبه‌ها را پیدا می‌کنیم.

  • مرحله سوم: این مرحله نقش مهمی در پیدا کردن نویسه‌ها دارد. با استفاده از تابع کتابخانه‌ای متلب، داخل نواحی که لبه‌های آن پیدا شده پر می‌شوند.

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

    ماسک لبه و MSER

در این مرحله با استفاده از AND این دو ماسک تبدیل به یک ماسک می‌شوند. در واقع نواحی کاندید37 برای حضور متن از این ماسک بدست می‌آیند. در شکل زیر نتیجه این مرحله را مشاهده می‌کنید.

نتیجه مرحله چهارم

  • مرحله پنجم:در این مرحله با استفاده از تحلیل مولفه‌های همبند، مناطقی که متن در آن‌ها وجود ندارد هرس38 می‌شوند. خروجی این مرحله تاثیر بسزایی در کم کردن تعداد اشتباهات39 دارد. در شکل زیر خروجی این مرحله را مشاهده می‌کنید.

    نتیجه مرحله پنجم

  • مرحله ششم: در این مرحله حروف به هم متصل شده و خطوط را تشکیل می‌دهند. نتایج حاصل از این مرحله به عنوان مکان‌هایی که متن در آن‌ها وجود دارد اعلام خواهند شد. در شکل زیر نتیجه این مرحله را مشاهده می‌کنید.

    نتیجه مرحله ششم

  • مرحله هفتم: در این مرحله مکان متن در عکس اصلی مشخص می‌شود. در واقع این مرحله وظیفه ایجاد خروجی را برعهده دارد در شکل زیر خروجی نمونه ارائه شده را مشاهده می‌کنید.

    عکس خروجی

تا اینجا مراحل روش پیشنهادی به اختصار بیان شدند. در ادامه ابتدا خلاصه عملکرد روش بیان شده و سپس نمونه‌هایی از خروجی نمایش داده خواهند شد.

نتایج روش پیشنهادی: مزیت اصلی این روش نسبت به سایر روش‌ها سادگی و در عین حال عملکرد قابل قبول آن است. در جدول زیر خلاصۀ عملکرد آن را برای داده‌های آموزش، آزمون و کل داده‌ها مشاهده می‌کنید.

نوع داده ورودی دقت فراخوانی F-score
دادۀ آموزش 79.03٪ 70.04٪ 74.26٪
دادۀ آزمون 73.13٪ 61.50٪ 66.81٪
کل داده‌ها 75.78٪ 65.24٪ 70.12٪

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

نتایج خوب

نتایج قابل قبول

نتایج ضعیف

بهبود نتایج:

۴. کارهای آینده

۵. مراجع

[1] B. Epshtein, E. Ofek, Y. Wexler, "Detecting Text in Natural Scenes with Stroke Width Transform," IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2010, San Francisco, CA, pp. 2963-2970.
[2] J. Liang, D. Doermann, H. Li, "Camera-based Analysis of Text and Documents: a Survey," International Journal of Document Analysis and Recognition (IJDAR), vol. 7, no. 2-3, pp. 84-104, 2005.
[3] C. Yao, X. Bai, W. Liu, Y. Ma and Z. Tu. "Detecting Texts of Arbitrary Orientations in Natural Images," IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2012, Providence, RI, pp. 1083-1090.
[4] K. Jung, K. I. Kim, A. K. Jain, "Text Information Extraction in Images and Video: a Survey," Pattern Recognition, Elsevier, vol. 37, no.5, pp. 977–997, 2004.
[5] YF. Pan, X. Hou, CL. Liu, "A Hybrid Approach to Detect and Localize Texts in Natural Scene Images," IEEE Transactions on Image Processing, vol. 20, no. 3, pp. 800-813, 2011.
[6] H.Chen et al., "Robust text detection in natural images with edge-enhanced Maximally Stable Extremal Regions," 18th IEEE International Conference on Image Processing (ICIP), 2011, Brussels, pp. 2609-2612.
[7] D. Karatzas et al., "ICDAR 2013 Robust Reading Competition," 12th International Conference on Document Analysis and Recognition (ICDAR), 2013, Washington, DC, pp. 1484-1493.
[8] J. Matas, O. Chum, M. Urban, T. Pajdla, "Robust Wide-Baseline Stereo from Maximally Stable Extremal Regions," British Machine Vision Computing 2002, vol. 22, no. 10, pp. 761–767, 2004.
[9] S. M. Lucas et al., "ICDAR 2003 Robust Reading Competitions: Entries, Results, and Future Directions," International Journal of Document Analysis and Recognition (IJDAR), vol. 7, no. 2-3, pp. 105-122, 2005.
[10] S. M. Lucas, A. Panaretos, L. Sosa, A. Tang, S. Wong, R. Young, "ICDAR 2003 Robust Reading Competitions", Proceedings of 7th International Conference on Document Analysis and Recognition (ICDAR), 2003, Edinburgh, UK, pp. 682.
[11] S. M. Lucas, "ICDAR 2005 Text Locating Competition Results," Proceedings of 8th International Conference on Document Analysis and Recognition (ICDAR), 2005, vol. 1, pp. 80-84.
[12] D. Karatzas, S. R. Mestre, J. Mas, F. Nourbakhsh, P.P Roy, "ICDAR 2011 Robust Reading Competition Challenge 1: Reading Text in Born-Digital Images (Web and Email)," International Conference on Document Analysis and Recognition (ICDAR), 2011, Beijing, pp. 1485-1490.
[13] A. Shahab, F. Shafait, A. Dengel, "ICDAR 2011 Robust Reading Competition Challenge 2: Reading Text in Scene Images," International Conference on Document Analysis and Recognition (ICDAR), 2011, Beijing, pp. 1491-1496.

۶. پیوندهای مفید


  1. scan

  2. characters

  3. images of natural scenes

  4. text orientation

  5. high resolution

  6. scanner

  7. uneven lighting

  8. nonplaner surfaces

  9. complex backgrounds

  10. edges

  11. optical character recognition

  12. index

  13. text information extraction

  14. pipe and filter pattern

  15. text detection

  16. text localization

  17. text extraction and enhancement

  18. characters recognition

  19. prior information

  20. texture-based

  21. region-based

  22. wavelet

  23. color clustering

  24. connected component

  25. heuristic rules

  26. hybrid

  27. stroke width transform

  28. International Conference on Document Analysis and Recognition

  29. challenge

  30. positive

  31. precision

  32. recall

  33. hand tuning

  34. maximally stable extremal regions

  35. intensity

  36. sobel

  37. candidate regions

  38. prune

  39. false positive

یاسر سوری

با سلام و تشکر

کاری که انجام داده‌اید واقعاً خوب و مناسب است و تا عالی شدن فاصله‌ی کمی دارد.

چند نکته:

  • من کد شما را اجرا کردم که نتایجی خوبی هم می‌دهد. با توجه به اینکه شما در آخر یک (یا چند) مستطیل محاطی خروجی می‌دهید، چرا چالش شماره ۲ را انتخاب کرده‌اید. به نظر می‌رسد که چالش شماره ۱ بهتر باشد. (اگر خواستید در این مورد می‌توانید با ایمیل من yassersouri در جیمیل تماس بگیرید)

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

  • ادعا کرده‌اید که کدی که از اینترنت پیدا کرده‌اید خوب کار نمی‌کرده و شما اصلاحاتی که باعث بهبود آن شده در آن انجام داده‌اید. بهتر است این بهبود را بین کدی که در اینترنت قرار داشته و کد خودتان با همان معیار‌های موجود مثل Precision گزارش کنید.

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

با تشکر