this site the web

1926.. Resolutions and Color Depths...

 

http://www.inlineinc.com/tech/notes/image/depth.jpg


 
                     Computer graphic ေတြနဲ႔ အလုပ္လုပ္ေနတဲ့ သူေတြအဖို႔ အမ်ိဳးမ်ိဳးေသာ color mode ေတြ၊ color settings ေတြနဲ႔ Screen resolution ေတြနဲ႔ အၿမဲေတြ႕ေနၾကမွာပါ။ Graphic programmer ေတြအတြက္ပဲျဖစ္ျဖစ္၊ game programmer ေတြ အတြက္ပဲျဖစ္ျဖစ္၊ graphic software ေတြနဲ႔ အလုပ္လုပ္ေနၾကတဲ့ သူေတြ အေနနဲ႔ပဲ ျဖစ္ျဖစ္ အဲဒီ color mode ေတြ၊ resolution ေတြနဲ႔ ကင္းလို႔မရပါဘူး။ အဲဒါေတြ အေၾကာင္းကို ကၽြန္ေတာ္ သိသေလာက္ ေရးခ်ၾကည့္မိပါတယ္။
 
                             ဒီေန႔ graphic ေတြမွာ အသံုးအမ်ားဆံုး color တန္ဖိုးေတြက 16 colors (4 bits), 256 colors (8 bits), 64K colors (16 bits), 16.7 million colors (24 bits) နဲ႔ 16.7 million colors + Alpha channel (32 bits) ဆိုတဲ့ color mode ေတြျဖစ္ပါတယ္။
 
              အဲဒီမွာ တစ္ခုေျပာခ်င္တာက color ေတြကို သတ္မွတ္တယ္ ဆိုတဲ့ ေနရာမွာ screen ေပၚမွာ ေပၚေနတဲ့ ပံုေဖၚတဲ့ pixel (picture element) အစက္ကေလးေတြ တစ္ခုစီအတြက္ memory space ကို ဘယ္ေလာက္ ေပးမလည္း ဆိုတဲ့အေပၚ မူတည္ပါတယ္။ Programmer ေတြက တစ္ကယ္တမ္း အဲဒီ pixel ေလးေတြနဲ႕ တိုက္ရိုက္ ခ်ိတ္ဆက္ထားတဲ့ memory area ေတြကိုပဲ တန္ဖိုးေတြထည့္ၿပီး ထိန္းခ်ဳပ္လို႔ရတာပါ။ တစ္ကယ့္ screen ေပၚမွာ ေပၚေနတဲ့ pixel ေတြကို သြားထိန္းလို႔ မရပါဘူး။ အဲဒီ screen pixel ေတြနဲ႔ တိုက္ရိုက္ အလုပ္လုပ္ေနတဲ့ memory ေတြကို video memory, graphic memory ဒါမွမဟုတ္ frame buffer ေတြလို႔ ေခၚပါတယ္။ (DirectX မွာေတာ့ surface ေတြလို႔လည္း ေခၚပါတယ္)။
 
                 ဥပမာ- ကၽြန္ေတာ္တို႔က pixel တစ္ခုစီအတြက္ 1 bit ပဲေပးမယ္ ဆိုပါေတာ့။ ဒါဆိုရင္ အဲဒီ pixel အစက္ကေလး အတြက္ ကၽြန္ေတာ္တို႔က screen ေပၚမွာ ေပၚမွာလား (1) ၊ မေပၚဘူးလား (0) ဆိုတဲ့ တန္ဖိုး ႏွစ္ခုနဲ႔ပဲ ထိန္းလို႔ ရပါတယ္။ တစ္ျခား အေရာင္ခြဲတာေတြ ဘာေတြ လုပ္လို႔မရေတာ့ပါဘူး။ တစ္ကယ္လို႔ pixel တစ္ခုကို 1 bit ထက္ပိုေပးမယ္ ဆိုရင္ေကာ?။ ဥပမာ- pixel အစက္ကေလး တစ္ခုကို 2 bit ေပးမယ္ ဆိုပါစို႔။ ဒါဆို အဲဒီ screen ေပၚက အစက္ကေလး တစ္ခုအတြက္ binary တန္ဖိုးနဲ႔ ထိန္းမယ္ဆိုရင္ ကၽြန္ေတာ္ တို႔က 00, 01, 10, 11 ဆိုၿပီး ေလးမ်ိဳး သတ္မွတ္လုိ႔ရတယ္ေလ။ အဲဒီမွာ 00 ကို အနက္ေရာင္၊ 01 ကို အျပာေရာင္၊ 10 ကို အစိမ္းေရာင္ နဲ႔ 11 ကို အျဖဴ လို႔သာ သတ္မွတ္မယ္ဆိုရင္ ကၽြန္ေတာ္တို႔ pixel ေလး တစ္ခုကို အေရာင္ ေလးေရာင္ (4 colors) သတ္မွတ္လို႔ ရၿပီေလ။ ဒါက ဥပမာ ေျပာျပတာပါ။
2 bits per pixel (we get 4 colors)
00 = black , 01 = blue, 10 = green, 11 = white
အဲဒီလို pixel တစ္ခုကို color ေတြ သတ္မွတ္ဖို႔အတြက္ bit ဘယ္ေလာက္ေပးမလည္း ဆိုတာကို Color Depth, Color mode, color quality လို႔ ေခၚပါတယ္။ ဒီေတာ့ pixel အစက္ကေလး တစ္ခုအတြက္ bit ပမာဏကို မ်ားမ်ားေပးႏိုင္ေလ သူ႔ကို သတ္မွတ္လို႔ ရမယ့္ color ေတြ၊ special effect ေတြ မ်ားမ်ား လုပ္ႏိုင္ေလေပါ့ေနာ္။
 http://www.sharkyextreme.com/hardware/reviews/mainboards/ecs_p6iwt/res.gif
 
               အဲဒီမွာ တစ္ခုထပ္ စဥ္းစားရမွာက screen ေပၚမွာ pixel အစက္ကေလးေတြ ဘယ္ေလာက္ မ်ားမ်ား ရိွေနမွာလည္း ဆိုတာလညး္ အေရးႀကီးပါတယ္။ အဲဒါကို screen resolution လို႔ ေခၚပါတယ္။ ဒီေတာ့ screen မွာ ရိွေနမယ့္ pixel အစက္ေလးေတြ စုစုေပါင္း အေရအတြက္ (Resolution) အေပၚ မူတည္ၿပီးေတာ့ လုိအပ္မယ့္ graphic memory ပမာဏ လည္း အနည္းအမ်ား ကြာျခားသြားႏိုင္တာကို ေတြ႕ႏိုင္ပါတယ္။ ဒီေန႔ Windows XP သံုးတဲ့ monitor ေတြမွာ အနည္းဆံုး resolution က 1024x768 pixels per screen ေလာက္ေတာ့ သံုးၾကတယ္ေလ။ တစ္ကယ္လို႔ color mode ကို 24 bit သာ သံုးမယ္ ဆိုရင္ လိုအပ္မယ့္ memory ပမာဏက 1024x768x24 = 18874368 bits လုိမွာေပါ့။ ေခတ္စားေနတဲ့ Byte နဲ႔ ေျပာမယ္ဆိုရင္ 2.35 MB ေလာက္ လိုမွာေပါ့ေနာ္။ Screen တစ္ခုလံုးမွာ ရိွမယ့္ pixel အေရအတြက္က 1024x768 နဲ႔ pixel တစ္ခုအတြက္ ေပးထားတဲ့ memory ပမာဏ (bits per pixel) 24 ကို ေျမွာက္လိုက္တာပါ။ ဒါေၾကာင့္ screen resolution နဲ႔ color quality က လုိအပ္မယ့္ graphic memory အေရအတြက္ကို အမ်ားႀကီး သက္ေရာက္ ေစပါတယ္။ ပိုၿပီးရွင္းေအာင္ ေအာက္မွာ ပံုေလးနဲ႔ ျပထားပါတယ္။ ေလ့လာၾကည့္ပါ။

             ဒါေၾကာင့္ screen ေပၚမွာ ေပၚေနမယ့္ ရုပ္ပံုတစ္ခုရဲ႕ အရည္ အေသြးဟာ လက္ရိွ သံုးေနတဲ့ စက္က အလုပ္လုပ္ေနတဲ့ resolution နဲ႔ color depth ေပၚမွာေရာ၊ အဲဒီ ပံုရိပ္ ဒါမွမဟုတ္ video ကိုု ဖန္တီး ထားတုန္းက သံုးထားတဲ့ resolution နဲ႔ color depth ေတြ အေပၚမွာ အမ်ားႀကီး မူတည္ပါတယ္။ တစ္ကယ္လို႔ graphic တစ္ခုကို ကၽြန္ေတာ္တို႔က resolution တစ္ခု၊ color depth တစ္ခုနဲ႔ ဖန္တီးလို္က္ၿပီ ဆိုပါစို႔။ အဲဒီ graphic ဒါမွမဟုတ္ video ကို အသံုးျပဳမယ့္ system က သူ႔ကို ဖန္တီးထားတုန္းက resolution နဲ႔ color depth ေတြကို လိုက္ၿပီး support မလုပ္ႏိုင္ ဘူးဆိုရင္ မူရင္းပံုအတိုင္း၊ သူ႔ quality အတိုင္း ျမင္ရဖို႔ မလြယ္ပါဘူး။ လိုအပ္ရင္ format ေတြကို ေျပာင္းေပးရမွာပါ။
http://library.creativecow.net/articles/kurkoski_tim/PP2_Color_Support/color_depth_compare.png
 
              ဒါက ကၽြန္ေတာ္ေျပာခ်င္တဲ့ resolution နဲ႔ color depth အေၾကာင္းပါ။ ကၽြန္ေတာ္ တစ္ကယ္ ေျပာခ်င္တာက ဒါမဟုတ္ပါဘူး။ Color ေတြကို တစ္ကယ္တမ္း သတ္မွတ္တဲ့ ေနရာမွာ ဘယ္လိုသတ္မွတ္လည္း ဆိုတဲ့ အခ်က္ပါ။ Screen ေပၚမွာ ေပၚမယ့္ pixel ေတြရဲ႕ color ေတြကို ဖန္တီးတဲ့ ေနရာမွာ Red, Green, Blue ဆိုတဲ့ သံုးေရာင္ကို အေျခခံၿပီး တည္ေဆာက္ပါတယ္။ ဒါေၾကာင့္ - ဥပမာ- 24 bit color mode ဆိုတာ pixel တစ္ခုကို 24 bit ေပးတယ္ ဆိုတာ မွန္ပါတယ္။ ဒါေပမယ့္ Red, Green, Blue ဆိုတဲ့ အေရာင္ေတြကို ဘယ္ color ကို ဘယ္ bit ေတြကိုေပးမွာလည္း၊ ဘယ္လိုေပးမွာလည္း၊ ဘယ္လို သတ္မွတ္မွာလည္း ဆိုတာလည္း တစ္ကယ့္ programming level နဲ႔ အေသးစိတ္ အဆင့္မွာ ေသေသခ်ာခ်ာ စဥ္းစားရပါတယ္။

Labels:

Print ပဲထုပ်ပါ..pdf ထုပ်လျှင်.ဖောင့်လွဲနေလိမ့်မယ်



မာတိကာ ၁ မာတိကာ ၂ မာတိကာ ၃ မာတိကာ ၄ မာတိကာ ၅

0 - ဦး မှတ်ချက်ပေးထားပါသည်

Post a Comment

KKZ Myanmar Unicode Keyboard

Mone Tine On Android

►Version 1.1

►Version 1.0

MoneTineKeyboard

Like လုပ်ထားနိုင်ပါတယ်

Mone Tine Knowledge Bank

Labels

အောက်ကကြေငြာလေးကလစ်ပေးပါဦး

Usage Policies

သင်၏ Facebook  တွင် ဖတ်နိုင်ရန် LIKE လုပ်ခဲ့ပါ..
( အမှန်ခြစ် ပေါ်နေပြီး LIKE ပြီးသားပါက CLOSE ကိုသာနှိပ် ပိတ်ပါ )

ကျေးဇူးတင်ပါတယ် မုန်တိုင်း

ကျန်းမာကြပါစေ