Predict Hand Written Digits

က်ြန္ေတာ္တုိ့ ဒီေန့ေတာ့ လက္ေရးနဲ့ ေရးထားတဲ့ Number ေတြကုိ train ျပီးသြားျပီ ျဖစ္လုိ့ ခန့္မွန္းၾကည့္ရမယ့္ အဆင့္ျဖစ္ပါတယ္။က်ြန္ေတာ္တုိ့ မစခင္ Training Mnist Dataset To Recognize Hand Written Numbers က code file ကုိ Download ဆြဲျပီး zip ျဖည္လုိက္ပါ။

ေအာက္ပါအတုိင္း ေတြ့ရမွာပါ-

  • hand_written_recognition_training
    • dataset
    • images
      • test.jpg
    • output
    • pyrobocity
    • train.py

က်ြန္ေတာ္တုိ့ zip ျဖည္ျပီးသြားရင္ေတာ့ code စေရးၾကတာေပါ့။

က်ြန္ေတာ္တုိ့ line 1 ကေန 9 ထိ လုိအပ္တာေတြ Import လုပ္လုိက္ပါတယ္။

from sklearn.externals import joblib ကေတာ့ train ထားတဲ့ model file ကုိ Loading ဆြဲဖုိ့ပါ။အကယ္လုိ့ဒီထဲက code တစ္ခ်ို့ကုိ နားမလည္ဘူးဆုိ ေသခ်ာေပါက္ Training Mnist Dataset To Recognize Hand Written Numbers ပု့ိစ္ကုိ သြားၾကည့္ပါ။က်ြန္ေတာ္ဒီမွာေတာ့ အေရးၾကီးတဲ့ ျခားနားတဲ့ ဟာေတြကုိပဲ ေျပာသြားေတာ့မွာပါ။

line 27 မွာ Image ကုိ ရယူျပီးေတာ့ က်ြန္ေတာ္တုိ့ recognize လုပ္ရလြယ္ေအာင္ sizeခ်ုံ့လုိက္ပါတယ္။Line 32 မွာေတာ့ နဲ့ 34 မွာေတာ့ က်ြန္ေတာ္တုိ့ digits ေတြကုိ ရွာလုိက္ျပီး digits size အတုိင္း sorting စီလုိက္ပါတယ္။line 42 ကေန 44 ထိကေတာ့ threshold လုပ္တာပါ contour ကုိေသခ်ာ ျမင္ရျပီး binarize လုပ္လုိက္တဲ့အတြက္ 0 or 255 ပဲရွိပါေတာ့တယ္။ threshold value T ထက္ ငယ္တာေတြအားလုံးကုိ cv2.THRESH_BINARY_INV ကုိ သုံးထားလုိ့ 255 ကုိေျပာင္းလုိက္ျပီး ၾကီးတာေတြအားလုံး zero ေျပာင္းသြားပါတယ္။က်ြန္ေတ္ာတုိ့ ဒီမွာ simple thresholding ကုိမသုံးပဲ otsu ကုိသုံးရတာက auto လုပ္ေပးနုိင္ေအာင္ပါ။Real world မွာ ပုံရဲ့ Lighting ေတြဘာေတြ က်ြန္ေတာ္တုိ့ေသခ်ာမသိနုိင္တာမုိ့ပါ။

Line 46 to 49 မွာေတာ့ က်ြန္ေတာ္တုိ့ train တုန္းကအတုိင္း မွန္ေအာင္လုိ့ preprocess လုပ္ျပီး histogramကုိ extractလုပ္လုိက္ပါတယ္။ျပီးေတာ့မွ hist ကုိ model ထဲ predict လုပ္လုိက္တဲ့အခါ က်ြန္ေတာ္တုိ့ လုိခ်င္တဲ့ Output labelထြက္လာပါတယ္။Line 52 to 55 မွာ ပုံေတာ့ျမင္ေနရသလုိ စာေရးလုိက္ျပီး line 56 မွာ saveလုိက္ပါတယ္ folder ထဲမွာoutput ပုံကုိ။

test.jpg

 

မိတ္ေဆြတုိ့ သေဘာက်တယ္ဆုိ Feedback ေလးေတြ pageမွာ ေရးေပးနုိင္ပါတယ္။တစ္စုံတစ္ခုဒီပုိ့စ္နဲ့ ပတ္သတ္ျပီးအခက္အခဲရွိခဲ့တယ္ဆုိ က်ြန္ေတာ္အေပါ္က ေျပာထားတဲ့ ပုိ့္စ္ကုိ ျပန္ဖတ္ေပးပါ။ေက်းဇူးတင္ပါတယ္။

Share:

Leave a Reply