Original Title: CONVOLUTIONAL NEURAL NETWORK BASED OBJECT DETECTION: A REVIEW
Source: dx.doi.org
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការរកឃើញវត្ថុផ្អែកលើបណ្ដាញសរសៃប្រសាទខុនវ៉ុលូសិន (CNN)៖ ការពិនិត្យឡើងវិញ

ចំណងជើងដើម៖ CONVOLUTIONAL NEURAL NETWORK BASED OBJECT DETECTION: A REVIEW

អ្នកនិពន្ធ៖ Asim Suhail (Asia Pacific University of Innovation & Technology), Manoj Jayabalan (Liverpool John Moores University), Vinesh Thiruchelvam (Asia Pacific University of Innovation & Technology)

ឆ្នាំបោះពុម្ព៖ 2020, Journal of Critical Reviews

វិស័យសិក្សា៖ Computer Vision

១. សេចក្តីសង្ខេបប្រតិបត្តិ (Executive Summary)

បញ្ហា (The Problem)៖ ឯកសារនេះពិនិត្យឡើងវិញនូវបញ្ហាប្រឈមក្នុងដំណើរការរកឃើញវត្ថុក្នុងរូបភាព ដោយផ្តោតលើការកែលម្អភាពសុក្រឹត និងល្បឿនដោយប្រើប្រាស់បណ្ដាញសរសៃប្រសាទខុនវ៉ុលូសិន (CNN) ដើម្បីឆ្លើយតបទៅនឹងបំរែបំរួលទំហំ ពន្លឺ និងទីតាំងរបស់វត្ថុ។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះបានធ្វើការពិនិត្យ និងប្រៀបធៀបវិធីសាស្ត្រសំខាន់ៗចំនួនបីក្នុងការរកឃើញវត្ថុ ព្រមទាំងក្របខ័ណ្ឌ Deep Learning ផ្សេងៗដែលត្រូវបានប្រើប្រាស់ទូទៅដើម្បីធ្វើឱ្យប្រសើរឡើងនូវការសម្គាល់វត្ថុ។

លទ្ធផលសំខាន់ៗ (The Verdict)៖

២. ការវិភាគលើប្រសិទ្ធភាព និងដែនកំណត់ (Performance & Constraints)

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Fast R-CNN / Faster R-CNN
បណ្ដាញសរសៃប្រសាទកាត់តំបន់លឿន (Fast/Faster R-CNN)
ផ្តល់គុណភាពនៃការរកឃើញខ្ពស់ និងចំណាយពេលហ្វឹកហាត់តិចដោយប្រើ Multi-task loss ក្នុងជំហានតែមួយ។ មានសមត្ថភាពអាចចាប់យកព័ត៌មានបរិបទ (Contextual information) បានល្អប្រសើរ។ ទាមទារអង្គចងចាំច្រើនសម្រាប់រក្សាទុកទិន្នន័យមួយចំនួន ហើយការបង្កើត Region Proposals នៅតែចំណាយពេលបើធៀបនឹងម៉ូដែល Single-stage។ ទទួលបាន mAP ៧៣.៥០% (ប្រើជាមួយ VGG/ZF) និងខ្ពស់ជាងនេះចំពោះកំណែប្រែផ្សេងៗលើទិន្នន័យ PASCAL VOC2007។
Single Shot MultiBox Detector (SSD)
ឧបករណ៍រកឃើញវត្ថុដោយប្រើប្រអប់ច្រើនក្នុងពេលតែមួយ (SSD)
មានល្បឿនលឿន និងភាពសុក្រឹតខ្ពស់ អាចដំណើរការបានល្អលើរូបភាពដែលមានគុណភាពទាប (Low-resolution images) ដោយរៀនពីដើមដល់ចប់ (End-to-end learning)។ ទាមទារការជ្រើសរើសប្រអប់ទំហំគោល (Default boxes) ជាមុន និងយុទ្ធសាស្ត្រទាញយកទិន្នន័យអវិជ្ជមាន (Hard-negative mining) ដ៏ស្មុគស្មាញ។ ទទួលបាន mAP ៨០% ជាមួយល្បឿន ២២ ហ្វ្រេមក្នុងមួយវិនាទី (FPS) ដែលកៀកទៅនឹងការរកឃើញក្នុងពេលវេលាជាក់ស្តែង (Real-time)។
Scale-Transferrable Object Detection (STDN)
បណ្ដាញសរសៃប្រសាទផ្ទេរទំហំវត្ថុ (STDN / DenseNet)
អាចចាប់យកវត្ថុមានទំហំខុសៗគ្នាបានយ៉ាងល្អ (Multi-scale) ដោយរួមបញ្ចូលលក្ខណៈកម្រិតទាបនិងខ្ពស់ (Low and high-level features) ពីបណ្តាញនីមួយៗបញ្ចូលគ្នា។ មានប៉ារ៉ាម៉ែត្រ (Parameters) សំណល់ច្រើនដែលធ្វើឲ្យស្មុគស្មាញក្នុងការគណនា បើទោះជាវាលឿនជាង DSSD ក៏ដោយ។ ទទួលបាន mAP ៨០.៩០% លើទិន្នន័យ PASCAL VOC និងដំណើរការក្នុងល្បឿន ២៨ ហ្វ្រេមក្នុងមួយវិនាទី (FPS)។

ការចំណាយលើធនធាន (Resource Cost)៖ ការអភិវឌ្ឍ និងដំណើរការម៉ូដែល CNN សម្រាប់ការរកឃើញវត្ថុទាមទារកម្លាំងម៉ាស៊ីន និងទិន្នន័យយ៉ាងច្រើនសន្ធឹកសន្ធាប់។

៣. ការពិនិត្យសម្រាប់បរិបទកម្ពុជា/អាស៊ីអាគ្នេយ៍

ភាពលំអៀងនៃទិន្នន័យ (Data Bias)៖

ការសិក្សានេះពឹងផ្អែកខ្លាំងលើសំណុំទិន្នន័យគោលអន្តរជាតិ (PASCAL VOC, MS COCO) ដែលផ្ទុករូបភាពវត្ថុទូទៅតាមបែបលោកខាងលិច (រថយន្តទំនើប ផ្លូវថ្នល់អឺរ៉ុប។ល។)។ សម្រាប់ប្រទេសកម្ពុជា ទិន្នន័យទាំងនេះប្រហែលជាមិនអាចតំណាងឱ្យបរិបទក្នុងស្រុកបានពេញលេញទេ ដូចជារូបរាងរ៉ឺម៉កកង់បី ស្លាកលេខយានយន្តកម្ពុជា ឬតូបលក់អីវ៉ាន់តាមផ្លូវ ដែលទាមទារការប្រមូលទិន្នន័យក្នុងស្រុកបន្ថែមដើម្បីចៀសវាងភាពលម្អៀង។

លទ្ធភាពនៃការអនុវត្ត (Applicability)៖

បច្ចេកវិទ្យា CNN សម្រាប់ការរកឃើញវត្ថុនេះ មានសក្តានុពលខ្ពស់ណាស់ក្នុងការដោះស្រាយបញ្ហាជាក់ស្តែងនៅក្នុងវិស័យផ្សេងៗនៅប្រទេសកម្ពុជា។

សរុបមក បច្ចេកវិទ្យារកឃើញវត្ថុ (Object Detection) គឺជាកាតាលីករដ៏សំខាន់សម្រាប់ការធ្វើបរិវត្តកម្មឌីជីថល (Digital Transformation) នៅកម្ពុជា ប្រសិនបើត្រូវបានបន្សាំទៅនឹងសំណុំទិន្នន័យ និងតម្រូវការជាក់ស្តែងក្នុងស្រុក។

៤. ផែនការសកម្មភាពសម្រាប់និស្សិត (Actionable Roadmap)

ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖

  1. ជំហានទី១៖ សិក្សាមូលដ្ឋានគ្រឹះនៃ Computer Vision: និស្សិតគប្បីចាប់ផ្តើមរៀនភាសា Python និងរចនាសម្ព័ន្ធទិន្នន័យ ព្រមទាំងចូលរៀនវគ្គ Deep Learning Specialization របស់ Andrew Ng នៅលើ Coursera ដើម្បីយល់ច្បាស់ពីរបៀបដំណើរការរបស់ CNN។
  2. ជំហានទី២៖ អនុវត្តការប្រើប្រាស់ Deep Learning Frameworks: អនុវត្តការសរសេរកូដដោយប្រើប្រាស់ PyTorchTensorFlow តាមរយៈ Google Colab ដែលផ្តល់ GPU ឥតគិតថ្លៃ ដើម្បីសាកល្បងហ្វឹកហាត់ម៉ូដែលស្គាល់រូបភាពតូចៗមូលដ្ឋាន។
  3. ជំហានទី៣៖ សាកល្បងជាមួយម៉ូដែលដែលមានស្រាប់ (Pre-trained Models): ទាញយកម៉ូដែលដូចជា YOLOv8Faster R-CNN ពី Hugging Face មកសាកល្បងដំណើរការ (Inference) លើរូបភាព ឬវីដេអូចរាចរណ៍ក្នុងប្រទេសកម្ពុជា ដើម្បីវាយតម្លៃសមត្ថភាពរបស់វា។
  4. ជំហានទី៤៖ ការប្រមូល និងបិទស្លាកទិន្នន័យក្នុងស្រុក (Local Data Annotation): ប្រមូលរូបភាពពិតប្រាកដក្នុងប្រទេសកម្ពុជា (ឧទាហរណ៍៖ រ៉ឺម៉កកង់បី ឬស្លាកលេខខ្មែរ) ហើយប្រើប្រាស់កម្មវិធី RoboflowLabelImg ដើម្បីគូសប្រអប់ចំណារ (Bounding boxes) និងបង្កើត Dataset ផ្ទាល់ខ្លួន។
  5. ជំហានទី៥៖ ការបង្ហាត់បន្ត (Transfer Learning) និងដាក់ឱ្យដំណើរការ: ប្រើប្រាស់បច្ចេកទេស Transfer Learning ដើម្បីបង្ហាត់ម៉ូដែលឡើងវិញលើទិន្នន័យដែលបានរៀបចំរួច ហើយដាក់ឱ្យដំណើរការ (Deploy) ជាកម្មវិធី Web API តាមរយៈ FastAPI សម្រាប់ឱ្យអ្នកប្រើប្រាស់អាចសាកល្បងបាន។

៥. វាក្យសព្ទបច្ចេកទេស (Technical Glossary)

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Convolutional Neural Network បណ្ដាញសរសៃប្រសាទសិប្បនិម្មិតដែលរចនាឡើងជាពិសេសសម្រាប់ដំណើរការទិន្នន័យរូបភាព ដោយប្រើប្រាស់ស្រទាប់តម្រង (filters) និងគណិតវិទ្យាខុនវ៉ុលូសិន (convolution) ដើម្បីទាញយកលក្ខណៈពិសេស (features) ដូចជាគែម ពណ៌ និងរូបរាងរបស់វត្ថុចេញពីរូបភាព។ ដូចជាកែវពង្រីកវេទមន្តដែលឆ្លុះមើលរាល់ចំណុចតូចៗនៃរូបភាព ដើម្បីផ្តុំគំនិតប្រាប់យើងថាវត្ថុនោះជារូបអ្វីឱ្យប្រាកដ។
Region Proposal Network បណ្ដាញរងនៅក្នុងម៉ូដែលរកឃើញវត្ថុ (ដូចជា Faster R-CNN) ដែលមានតួនាទីស្វែងរក និងស្នើសុំទីតាំងឬតំបន់នានានៅក្នុងរូបភាព ដែលសង្ស័យថាអាចមានវត្ថុនៅទីនោះ ដើម្បីកាត់បន្ថយការចំណាយពេលស្វែងរកពេញផ្ទៃរូបភាព។ ដូចជាជំនួយការដែលចង្អុលប្រាប់អ្នកថា "កន្លែងនេះប្រហែលជាមានរបស់គួរឱ្យចាប់អារម្មណ៍" មុនពេលអ្នកពិនិត្យមើលឱ្យបានច្បាស់។
mean average precision រង្វាស់ខ្នាតស្តង់ដារសម្រាប់វាយតម្លៃគុណភាព និងភាពសុក្រឹតនៃម៉ូដែលរកឃើញវត្ថុ ដោយគិតមធ្យមភាគនៃភាពត្រឹមត្រូវ (precision) និងការរកឃើញបានគ្រប់ជ្រុងជ្រោយ (recall) លើគ្រប់ប្រភេទវត្ថុទាំងអស់ក្នុងសំណុំទិន្នន័យ។ ដូចជាពិន្ទុសរុបនៃការប្រឡងដែលវាយតម្លៃថាតើសិស្សម្នាក់ឆ្លើយត្រូវប៉ុន្មានភាគរយលើមុខវិជ្ជាទាំងអស់ដែលគេបានប្រឡង។
Bounding box regression ដំណើរការគណនាក្នុងក្បួនដោះស្រាយដើម្បីកែតម្រូវប្រអប់ដែលហ៊ុំព័ទ្ធវត្ថុ (Bounding box) ឱ្យមានទំហំ និងទីតាំងកាន់តែត្រឹមត្រូវ និងស៊ីតម្រូវគ្នាបេះបិទទៅនឹងទំហំវត្ថុពិតប្រាកដក្នុងរូបភាព។ ដូចជាការកាត់ស៊ុមរូបថត ឬទាញប្រអប់ឱ្យត្រូវជិតបេះបិទទៅនឹងមនុស្សឬវត្ថុដែលស្ថិតនៅក្នុងរូបភាពនោះ។
Intersection-Over-Union រង្វាស់ធរណីមាត្រសម្រាប់គណនាភាពត្រួតស៊ីគ្នារវាងប្រអប់ដែលម៉ូដែលទាយទុក (predicted box) និងប្រអប់ពិតប្រាកដរបស់វត្ថុ (ground truth box) ដើម្បីដឹងថាម៉ូដែលទាយត្រូវ និងចំគោលដៅកម្រិតណា។ ដូចជាការវាស់ថាតើគម្របឆ្នាំងដែលយើងយកមកគ្រប វាត្រួតស៊ីគ្នាបិទបានជិតល្អប៉ុណ្ណាទៅនឹងមាត់ឆ្នាំងពិតប្រាកដ។
Salient object detection បច្ចេកទេសស្វែងរកវត្ថុនៅក្នុងរូបភាពដោយផ្តោតតែលើវត្ថុដែលលេចធ្លោជាងគេ ឬទាក់ទាញចំណាប់អារម្មណ៍ភ្នែកមនុស្សជាងគេ ដោយបំបែកវត្ថុនោះចេញពីផ្ទៃខាងក្រោយដោយស្វ័យប្រវត្តិ។ ដូចជាពេលយើងមើលទៅក្នុងហ្វូងមនុស្ស ហើយភ្នែកយើងចាប់អារម្មណ៍ឃើញតែមនុស្សម្នាក់ដែលពាក់អាវពណ៌ក្រហមឆ្អៅ។
Objectness Detection ការវាស់ស្ទង់កម្រិតទំនុកចិត្តរបស់ប្រព័ន្ធកុំព្យូទ័រក្នុងការកំណត់ថាតើទីតាំងណាមួយមានផ្ទុក "វត្ថុ" ណាមួយឬអត់ ដោយមិនទាន់ខ្វល់ថាវាជាវត្ថុអ្វី (ឧ. ឆ្កែ ឆ្មា ឬឡាន) នៅឡើយទេ។ ដូចជាការគ្រវីប្រអប់កាដូហើយដឹងថាមាន "អ្វីម្យ៉ាង" នៅក្នុងនោះ មុនពេលយើងបើកមើលថាតើវាជារបស់អ្វីឱ្យប្រាកដ។
Single Shot MultiBox detector ម៉ូដែលរកឃើញវត្ថុដែលដំណើរការគ្រប់យ៉ាងក្នុងជំហានតែមួយ (Single Shot) ដោយទស្សន៍ទាយទីតាំងប្រអប់ និងប្រភេទវត្ថុព្រមគ្នាតែម្តង ដែលធ្វើឱ្យវាមានល្បឿនលឿនស័ក្តិសមសម្រាប់ការប្រើប្រាស់ជាក់ស្តែង (Real-time)។ ដូចជាអ្នកជំនាញដែលអាចសម្លឹងមើលឃើញភ្លាមៗថាមានរបស់អ្វីខ្លះនៅលើតុ ដោយមិនបាច់ចំណាយពេលរើសមើលវត្ថុនោះម្តងមួយៗ។

៦. ប្រធានបទពាក់ព័ន្ធ (Further Reading)

អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖

ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖