Original Title: Convolutional Neural Networks for Object Detection and Recognition
Source: doi.org/10.55529/jaimlnn.32.1.13
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

បណ្ដាញសរសៃប្រសាទកុងវ៉ុលយូសិន (Convolutional Neural Networks) សម្រាប់ការរកឃើញ និងការចំណាំវត្ថុ

ចំណងជើងដើម៖ Convolutional Neural Networks for Object Detection and Recognition

អ្នកនិពន្ធ៖ Ms. Archana Karne (CMR Technical Campus), Mr. RadhaKrishna Karne (CMR Institute of Technology), Mr. V. Karthik Kumar (BITS Narsampet), Dr. A. Arunkumar (MLRITM)

ឆ្នាំបោះពុម្ព៖ 2023 Journal of Artificial Intelligence, Machine Learning and Neural Network

វិស័យសិក្សា៖ Machine Learning and Computer Vision

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

បញ្ហា (The Problem)៖ ការសិក្សានេះដោះស្រាយបញ្ហាប្រឈមនៃការរកឃើញ និងការតាមដានវត្ថុមានចលនាក្នុងប្រព័ន្ធកាមេរ៉ាសុវត្ថិភាពវីដេអូ ដែលជារឿយៗតែងរងការរំខានដោយសារការផ្លាស់ប្តូរបរិស្ថាន និងចលនារបស់វត្ថុដោយចៃដន្យ។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះបានធ្វើការពិនិត្យ និងប្រៀបធៀបវិធីសាស្ត្រចាប់សញ្ញា និងចំណាំវត្ថុផ្សេងៗ ដោយផ្តោតសំខាន់លើបច្ចេកវិទ្យា Deep Learning តាមរយៈបណ្ដាញសរសៃប្រសាទកុងវ៉ុលយូសិន (CNNs) ។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Single Shot Multibox Detector (SSD)
ឧបករណ៍ចាប់សញ្ញា SSD
មានល្បឿនដំណើរការលឿនបំផុតរហូតដល់ ៦០ ហ្វ្រេមក្នុងមួយវិនាទី (fps) ដែលស័ក្តិសមបំផុតសម្រាប់ការតាមដានវីដេអូជាក់ស្តែង (Real-time) និងមានភាពសុក្រឹតខ្ពស់។ ត្រូវការទំហំផ្ទុកធំគួរសម (១៦២ MB) ហើយអាចមានការលំបាកក្នុងការរកឃើញវត្ថុដែលមានទំហំតូចពេក។ ភាពសុក្រឹត (Precision) ៩៦%, ៦០ Frames/Sec, F1-Score ៧៧%
YOLOv3
ក្បួនដោះស្រាយ YOLO ជំនាន់ទី៣
ផ្តល់នូវភាពសុក្រឹតខ្ពស់ក្នុងការរកឃើញវត្ថុ និងប្រើប្រាស់ប្រព័ន្ធ Multi-name strategy ដើម្បីកំណត់ចំណាំវត្ថុបានច្រើនប្រភេទក្នុងពេលតែមួយ។ ទាមទារទំហំផ្ទុកធំជាងគេ (២៣៥ ទៅ ២៤៥ MB) ហើយល្បឿនដំណើរការ (Frames/Sec) នៅមានកម្រិតទាបជាងម៉ូដែល SSD ។ ភាពសុក្រឹត (Precision) ៩៦%, ២៤ Frames/Sec, F1-Score ៨៩%
Support Vector Machine (SVM)
ម៉ាស៊ីនវ៉ិចទ័រគាំទ្រ (SVM)
ងាយស្រួលក្នុងការសិក្សា និងអាចធ្វើការផ្លាស់ប្តូរក្បួនដោះស្រាយបានច្បាស់លាស់សម្រាប់ចំណាត់ថ្នាក់រូបភាព ដែលល្អសម្រាប់ប្រព័ន្ធទិន្នន័យមិនសូវស្មុគស្មាញ។ សមត្ថភាពទូទៅ និងល្បឿនគឺយឺតខ្លាំងបើធៀបនឹងបច្ចេកវិទ្យា Deep Learning ដូចជា CNN ឬ YOLO។ ភាពសុក្រឹត (Precision) ៩២%, ១១ Frames/Sec, F1-Score ៧១%

ការចំណាយលើធនធាន (Resource Cost)៖ ឯកសារនេះមិនបានបញ្ជាក់លម្អិតអំពីតម្លៃនៃការចំណាយនោះទេ ប៉ុន្តែបានសង្កត់ធ្ងន់យ៉ាងច្បាស់លើតម្រូវការផ្នែករឹង (Hardware) ជាពិសេសអង្គគណនាក្រាហ្វិក (GPU) ដែលមានសមត្ថភាពខ្ពស់ក្នុងការដំណើរការទិន្នន័យស្របគ្នា។

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

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

ការសិក្សានេះប្រើប្រាស់សំណុំទិន្នន័យស្តង់ដារអន្តរជាតិ (PASCAL VOC) និងទិន្នន័យពិសោធន៍សត្វកណ្តុរនៅក្នុងមន្ទីរពិសោធន៍។ សម្រាប់ប្រទេសកម្ពុជា ការអនុវត្តម៉ូដែលទាំងនេះផ្ទាល់អាចនឹងជួបប្រទះបញ្ហាភាពលម្អៀងទិន្នន័យ (Domain Shift) ដោយសារទិដ្ឋភាពផ្លូវថ្នល់ ប្រភេទយានយន្ត និងបរិស្ថានជាក់ស្តែងនៅក្នុងប្រទេសកម្ពុជាមានភាពខុសប្លែកពីទិន្នន័យដើម ដែលទាមទារឱ្យមានការបង្វឹកម៉ូដែលឡើងវិញជាមួយទិន្នន័យក្នុងស្រុក។

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

បច្ចេកវិទ្យាទាំងនេះមានសក្តានុពលខ្ពស់ និងអាចយកមកអនុវត្តជាក់ស្តែងដើម្បីពង្រឹងប្រព័ន្ធសុវត្ថិភាព និងស្វ័យប្រវត្តិកម្មនៅក្នុងប្រទេសកម្ពុជា។

សរុបមក ការដាក់បញ្ចូលក្បួនដោះស្រាយដូចជា YOLO និង SSD ទៅក្នុងប្រព័ន្ធតាមដានកាមេរ៉ាសុវត្ថិភាព នឹងជួយលើកកម្ពស់ប្រសិទ្ធភាពសន្តិសុខ និងកាត់បន្ថយកម្លាំងពលកម្មរបស់មនុស្សនៅក្នុងស្ថាប័នរដ្ឋ និងឯកជនកម្ពុជាបានយ៉ាងច្រើន។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃ Computer Vision: និស្សិតត្រូវចាប់ផ្តើមស្វែងយល់ពីទ្រឹស្តីមូលដ្ឋាននៃការប្រែក្លាយរូបភាព និងដំណើរការនៃបណ្ដាញសរសៃប្រសាទកុងវ៉ុលយូសិន (CNNs) ដោយរៀនតាមរយៈវគ្គសិក្សាអនឡាញ ឬឯកសារណែនាំរបស់ TensorFlowPyTorch
  2. ប្រមូល និងរៀបចំទិន្នន័យក្នុងស្រុក (Local Dataset): ចាប់ផ្តើមប្រមូលទិន្នន័យរូបភាពជាក់ស្តែងនៅក្នុងប្រទេសកម្ពុជា (ឧទាហរណ៍៖ ស្លាកលេខឡានខ្មែរ ម៉ូតូ ឬសកម្មភាពចរាចរណ៍) ហើយប្រើប្រាស់កម្មវិធីដូចជា LabelImgRoboflow ដើម្បីគូសប្រអប់ (Bounding boxes) និងដាក់ឈ្មោះចំណាំ (Annotate)។
  3. បង្វឹកម៉ូដែលកម្រិតខ្ពស់ (Model Training): ប្រើប្រាស់ទិន្នន័យដែលបានរៀបចំរួច យកទៅបង្វឹក (Fine-tune) ជាមួយម៉ូដែល YOLOv3SSD តាមរយៈបរិស្ថានកូដនៅលើក្ដោបកុំព្យូទ័រ (Cloud Computing) ដូចជា Google Colab ជាដើម ដើម្បីកាត់បន្ថយការចំណាយលើ GPU។
  4. ដាក់ពង្រាយចូលទៅក្នុងឧបករណ៍ Edge (Edge Deployment): បន្ទាប់ពីម៉ូដែលទទួលបានភាពសុក្រឹតខ្ពស់ ត្រូវធ្វើការបង្រួមទំហំម៉ូដែល រួចដាក់ពង្រាយវាទៅលើឧបករណ៍ខ្នាតតូចដូចជា Raspberry PiNVIDIA Jetson Nano រួចភ្ជាប់ជាមួយកាមេរ៉ាដើម្បីសាកល្បងដំណើរការតាមដានក្នុងពេលវេលាជាក់ស្តែង (Real-time) នៅតាមទីតាំងជាក់លាក់។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Convolutional Neural Network (CNN) បណ្ដាញសរសៃប្រសាទសិប្បនិម្មិតដែលរចនាឡើងយ៉ាងពិសេសសម្រាប់វិភាគទិន្នន័យរូបភាព ដោយប្រើប្រាស់រ៉ាដាតម្រង (filters) ត្រួតស៊ីគ្នាដើម្បីទាញយកលក្ខណៈពិសេសដូចជា គែម ទម្រង់ ឬពណ៌របស់វត្ថុពីសន្លឹករូបភាពកម្រិតភីកសែល។ ដូចជាភ្នែក និងខួរក្បាលមនុស្សដែលមើលឃើញរូបភាពមួយ រួចផ្តុំព័ត៌មានពីចំណុចតូចៗ (ដូចជាបន្ទាត់ និងជ្រុង) ទៅជារូបរាងវត្ថុទាំងមូលដ៏មានន័យ។
Single Shot Multibox Detector (SSD) ម៉ូដែល Deep Learning សម្រាប់រកឃើញវត្ថុដែលអាចទស្សន៍ទាយទីតាំងប្រអប់ (bounding boxes) និងចំណាត់ថ្នាក់ប្រភេទវត្ថុក្នុងពេលតែមួយ (single shot) តាមរយៈការឆ្លងកាត់បណ្តាញសរសៃប្រសាទតែម្តង ដែលធ្វើឱ្យវាមានល្បឿនលឿនសម្រាប់ការវិភាគវីដេអូ។ ដូចជាអ្នកយាមដែលគ្រាន់តែក្រឡេកមើលឃើញមនុស្សភ្លាម ដឹងភ្លាមថាអ្នកនោះឈរនៅទីណា និងជាអ្នកណា ដោយមិនបាច់ចំណាយពេលពិនិត្យច្រើនដង។
You Only Look Once (YOLO) Algorithm ក្បួនដោះស្រាយសម្រាប់ការរកឃើញវត្ថុក្នុងពេលវេលាជាក់ស្តែង ដែលបែងចែករូបភាពទៅជាក្រឡាចត្រង្គ (Grid) ហើយប្រើប្រាស់បណ្តាញ CNN តែមួយដើម្បីកំណត់ទីតាំង និងទំនុកចិត្ត (confidence score) របស់វត្ថុព្រមគ្នា ដែលជួយឱ្យវាមានល្បឿនលឿនបំផុត។ ដូចជាយើងក្រឡេកមើលរូបថតមួយភ្លែត រួចអាចប្រាប់បានភ្លាមៗថាមានអ្វីខ្លះនៅកន្លែងណា ដោយមិនចាំបាច់សម្លឹងផ្តោតស្វែងរកវត្ថុម្ដងមួយៗ។
Faster region convolutional neural network (Fast RCNN) ម៉ូដែលរកឃើញវត្ថុដែលប្រើប្រាស់ Region Proposal Network (RPN) ដើម្បីស្នើកន្លែងដែលអាចមានវត្ថុជាមុន រួចទើបធ្វើការចំណាំប្រភេទវត្ថុនៅទីតាំងនោះតាមក្រោយ ដែលផ្តល់នូវភាពសុក្រឹតខ្ពស់ជាងម៉ូដែលទូទៅ។ ដូចជាមានជំនួយការម្នាក់ចង្អុលប្រាប់កន្លែងគួរឱ្យសង្ស័យ រួចយើងយកកែវពង្រីកមកឆ្លុះមើលទីតាំងនោះឱ្យបានច្បាស់ដើម្បីបញ្ជាក់ថាវាជាអ្វីពិតប្រាកដ។
Intersection over union (IoU) រង្វាស់សម្រាប់វាយតម្លៃភាពត្រឹមត្រូវនៃទីតាំងប្រអប់ (bounding box) ដែលកុំព្យូទ័ររកឃើញ ធៀបទៅនឹងប្រអប់ទីតាំងវត្ថុពិតប្រាកដ (ground truth) ដោយគណនាផ្ទៃត្រួតស៊ីគ្នា ចែកជាមួយផ្ទៃសរុបនៃប្រអប់ទាំងពីរ។ ដូចជាការវាស់ស្ទង់ថាតើគម្របដែលយើងយកទៅគ្របលើចាន គឺគ្របបានជិតល្អប៉ុនគ្នាបេះបិទ ឬគ្របខុសទីតាំងកម្រិតណា។
Mean Average Precision (mAP) រង្វាស់ស្តង់ដារដ៏សំខាន់សម្រាប់វាស់ស្ទង់ប្រសិទ្ធភាពទូទៅនៃម៉ូដែលរកឃើញវត្ថុ ដោយគណនាមធ្យមភាគនៃភាពសុក្រឹត (Average Precision) សម្រាប់គ្រប់ប្រភេទវត្ថុ (Classes) ទាំងអស់។ ដូចជាពិន្ទុមធ្យមសរុបរបស់សិស្សម្នាក់ ដែលបានមកពីការបូកបញ្ចូលពិន្ទុប្រឡងមុខវិជ្ជាគណិតវិទ្យា រូបវិទ្យា និងគីមីវិទ្យាបញ្ជូលគ្នា។
Background Subtraction Method បច្ចេកទេសសម្រាប់រកឃើញវត្ថុមានចលនានៅក្នុងវីដេអូ ដោយប្រៀបធៀបស៊ុមរូបភាពបច្ចុប្បន្ន ជាមួយស៊ុមរូបភាពផ្ទៃខាងក្រោយដើម (reference frame) ដើម្បីទាញយកត្រឹមតែចំណុចដែលផ្លាស់ប្តូរ (foreground)។ ដូចជាការថតរូបបន្ទប់ទទេមួយសន្លឹក រួចយកទៅប្រៀបធៀបនឹងរូបថតបន្ទប់ដដែលនៅពេលមានមនុស្សដើរចូល ដើម្បីរកមើលថាតើមានចំណុចណាខ្លះដែលប្លែកពីមុន។
Optical Flow Method បច្ចេកទេសគណនាល្បឿន និងទិសដៅនៃចលនារបស់ភីកសែល (pixels) ឬវត្ថុរវាងស៊ុមរូបភាពវីដេអូបន្តបន្ទាប់គ្នា ដែលជួយកុំព្យូទ័រក្នុងការតាមដានគន្លងផ្លូវ និងប៉ាន់ស្មានល្បឿនរបស់វត្ថុ។ ដូចជាការសង្កេតមើលចរន្តទឹកហូរ ដែលយើងអាចដឹងពីល្បឿន និងទិសដៅនៃស្លឹកឈើដែលអណ្តែតតាមទឹកនោះយ៉ាងច្បាស់។
Support vector machines(SVM) algorithm ក្បួនដោះស្រាយ Machine Learning ប្រភេទ Supervised សម្រាប់ធ្វើចំណាត់ថ្នាក់ទិន្នន័យ (Classification) ដោយស្វែងរកបន្ទាត់ព្រំដែន (hyperplane) ដ៏ល្អបំផុតនៅក្នុងលំហទិន្នន័យ ដើម្បីបំបែកក្រុមទិន្នន័យផ្សេងៗពីគ្នា។ ដូចជាការគូសបន្ទាត់មួយចំកណ្តាលតុ ដើម្បីបែងចែកផ្លែប៉ោមពណ៌ក្រហមនៅម្ខាង និងផ្លែប៉ោមពណ៌បៃតងនៅម្ខាងទៀតឱ្យដាច់ស្រឡះពីគ្នា។

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

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

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