Thursday, January 24, 2013

Introduction to Digital Image Processing


An image
Image  ဆိုသည်မှာ တစ်ခုခုကို ကိုယ်စားပြုသော ရုပ်ပုံတစ်ခုသာဖြစ်သည်။ ထိုရုပ်ပုံမှာ ကင်မရာနှင့်ရိုက်ယူလိုက်သော လူတစ်ယောက်၏ ရုပ်ပုံ ၊ ရှုခင်း တစ်ခု၏ ရုပ်ပုံ သို့မဟုတ် satellite မှ ရိုက်ယူလိုက်သော မြေကြီး၏ ရုပ်ပုံ သို့မဟုတ်  ultrasound မှ ထွက်လာသော လူနာတစ်ဦး၏ ရောဂါဖြစ်တည်ရာနေရာကိုရိုက်ထားသော ရုပ်ပုံ တစ်ပုံလဲဖြစ်နိုင်သည်။ 

Digital Image

Digital image ဆိုသည်မှာ x,y coordinate နှင့် ဖွဲ့စည်းထားသော Matrix ပုံစံ image ဖြစ်ပြီး ထို image အတွင်းရှိ x နှင့် y coordinate ဆုံမှတ် ရှိသော အမှတ်(point) ကို pixel ဟုခေါ်ကာ ထို pixel ၏ တန်ဖိုး သည် ယေဘူယျအားဖြင့် 0 (Black) နှင့် 255(White) ကြားရှိ integer value ကိန်းပြည့်တန်ဖိုးများသာဖြစ်သည်။ x,y coordinate ရှိ pixel တန်ဖိုးတစ်ခုကို f(x,y) အနေဖြင့် ကိုယ်စားပြုဖော်ပြနိုင်သည်။ Digital image အတွင်းရှိ pixel တစ်ခု၏ ပတ်ဝန်းကျင်တွင် ရှိသော pixel များကို neighborhood ဟုခေါ်သည်။ 


 Figure (1) Coordinate convention used to represent digital images
Image Processing

Image processing သည် ကင်မရာမှ တစ်ဆင့်ဖြစ်စေ ultrasound မှ ဖြစ်စေ ထွက်ရှိလာသော အရည်အသွေးညံ့သော သို့မဟုတ် တိကျရှင်းလင်းသော သတင်းအချက်အလက်ကို ပေးစွမ်းနိုင်ဖြစ်မရှိသော မူလ ရုပ်ပုံများအား အသုံးဝင် အကျိုးရှိသော သတင်းအချက်အလက်များ ထွက်ရှိလာစေရန် သော်လည်းကောင်း ပိုမိုရှင်းလင်းသော မြင်ကွင်းမျိုးပေးစွမ်းနိုင်ရန် အတွက်သော်လည်းကောင်း ထို မူလ ရုပ်ပုံအား အခြားရုပ်ပုံတစ်ခုအဖြစ် အသွင်ပြောင်းပေးသည့် လုပ်ငန်းစဉ်တစ်ခုပင်ဖြစ်သည်။ 
 Figure (2) Example usage of “imadjust” to increase the contrast of the image

Figure (3) Noise removal example

Some applications
နယ်ပယ်အသီးသီးအတွက် Image processing ၏ အသုံးဝင်မှုမှာ ကျယ်ပြန့်လှပေသည်။ အထူးသဖြင့် သိပံနှင့် နည်းပညာ နယ်ပယ် အတွင် image processing methods များသည် အလွန်အသုံးဝင်သော methods များပင်ဖြစ်သည်။ 
နယ်ပယ်အလိုက် ဥပမာအချို့မှာ-
Medicine: X-rays, MRI, CT scan မှ ရရှိသော images များကို interpretation ပြုလုပ်ရန်
Agriculture: Satellite views မှ ကြည့်ကာ နေရာဒေသ အလိုက် ဖြစ်ထွန်းသော အမျိုးမျိုးသော စိုက်ပျိုးသီးနှံများ ကို investigate လုပ်ရန်
Industry: Production လုပ်စဉ် ထုတ်ကုန်တွေ quality ပြည့်မပြည့် စစ်ဆေးရန်
Law enforcement: လက်ဗွေ(fingerprint) analysis လုပ်ခြင်း

Aspects of Image Processing
Image processing algorithms များကို ပြုလုပ်ရသော အလုပ်ပေါ်တွင်မူတည်ကာ အမျိုးအစားများခွဲခြားထားနိုင်သည်။

Algorithms for Image Enhancementအရည်အသွေးညံ့သော မူလ image အား ပိုမိုကောင်းမွန်သော image တစ်ခုအဖြစ် ပြုလုပ်ပေးသော image processing algorithms များ  
ဥပမာ။
Out-of-focus ဖြစ်ပြီး ဝါးနေသာ (blur) image များကို ကြည်လင်ပြတ်သားအောင်ပြုလုပ်ခြင်း
Image ၏ အနားသတ် (edges) များကို ပိုမိုထင်ရှင်းအောင် highlight လုပ်ခြင်း
Image တစ်ခုအား contract, brightness ညှိခြင်း
Noise ဖယ်ရှားဖြင်း

Algorithms for Image Restoration:  အကြောင်းတစ်ခုခုကြောင့် ပျက်စီးသွားသောပုံများအားပြန်လည်ကောင်းမွန်အောင် ပြုလုပ်ပေးသော image processing algorithms များ
ဥပမာ။ linear motion လှုပ်ရှားမှုကြောင့် blur ဖြစ်သွားခြင်းအား remove လုပ်ပေးခြင်း

Algorithms for Image Segmentationimage အတွင်းရှိ အစိတ်အပိုင်းများကို သီးခြားအစိတ်အပိုင်းများအဖြင့် ခွဲခြားခြင်း segmentation ပြုလုပ်ခြင်းဖြစ်သည်။
ဥပမာ။
Image တစ်အခုအတွင်း line, circle ကို ခွဲထုတ်ခြင်း သို့မဟုတ် လိုချင်သော အစိတ်အပိုင်းကိုဖြတ်ထုတ်ခြင်း
Satellite image မှ cars, trees, buildings သို့မဟုတ် roads များကို ခွဲခြားသတ်မှတ်ခြင်း


Types of Digital Images

Digital image အမျိုးအစားများမှာ ယေဘူယအားဖြင့် Binary image, Grayscale or intensity image, True color or read-green-blue(RGB) image, Indexed or pseudocolor image စသည်တို့ဖြစ်သည်။
Figure (4) Binary Image (black and white image)
Figure (5) Grayscale Image
Figure (6) True Color Image
Figure (7) Indexed Image
References: 
1. Alasdair McAndrew, Jung-Hua Wang, Chun-Shun Tseng, “Introduction to Digital Image Processing with MATLAB”, pg 1-16, Asia Edition, Cengage Learning Asia Pte Ltd, 2010.

2. MATLAB: Image Processing Toolbox

Scratch Programming - မိတ်ဆက်   Scratch Programming ကို အသက် ၈ နှစ် ကနေ ၁၆ နှစ်ကြား ကလေးတွေ Coding လေ့လာဖို့ MIT Media Lab က develop လုပ်ထာ...