လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Image Compression မတိုင်မီအရောင်ပုံမှန်ပြုလုပ်ခြင်းကိုအသုံးပြုပါ

Image Compression မတိုင်မီအရောင်ပုံမှန်ပြုလုပ်ခြင်းကိုအသုံးပြုပါ

M66 2025-05-29

Image Compression သည် image processing တွင်အသုံးဝင်သောအဆင့်တစ်ခုဖြစ်ပြီးလွယ်ကူသောသိုလှောင်မှုနှင့်လွှဲပြောင်းမှုအတွက် image files အရွယ်အစားကိုသိသိသာသာလျှော့ချနိုင်သည်။ ပုံ၏အရည်အသွေးနှင့်အသေးစိတ်အချက်အလက်များကိုထိန်းသိမ်းခြင်းသည်ဖိအားပေးမှုလုပ်ငန်းစဉ်အတွင်းအရေးကြီးသောစိန်ခေါ်မှုတစ်ခုဖြစ်သည်။ Image Compression ၏အကျိုးသက်ရောက်မှုကိုတိုးတက်စေရန်အဓိကအဆင့်များထဲမှတစ်ခုမှာပုံရိပ်အရောင်ကိုပုံမှန်ပြုလုပ်ရန်ဖြစ်သည်။ PHP သည်ပုံတစ်ပုံ၏အရောင်ကိုကိုင်တွယ်ရန်အချို့သောလုပ်ဆောင်ချက်များကိုပေးသည်

1 ။ ISESECOSORRESOLVAC () function ကိုမိတ်ဆက်

isionecolorresolve () function သည် PHP တွင် image ၏အရောင် palette မှတိကျသောအရောင်အတွက် RGB တန်ဖိုးများကိုခွဲခြမ်းစိတ်ဖြာသော Imp PhP တွင်ရေးဆွဲခြင်းလုပ်ဆောင်မှုတစ်ခုဖြစ်သည်။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ရုပ်ပုံချုံ့ခြင်းမပြုမီအရောင်ကိုပုံမှန်မြင်နိုင်သည်။ ဤလုပ်ဆောင်မှု၏ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -

 int imagecolorresolve ( resource $image , int $index , int &$red , int &$green , int &$blue )

parameter သည်ရှင်းလင်းချက်:

  • $ Image : 0 င်ရောက်လာသည့် Image image အရင်းအမြစ်လက်ကိုင်, များသောအားဖြင့် isaecreat transfefrel * () စီးရီး function ကိုမှတဆင့်ဖန်တီးထားသောပုံရိပ်။

  • $ အညွှန်းကိန်း : ပုံ palette အတွက်အရောင်အညွှန်းကိန်းတန်ဖိုး။

  • $ အနီရောင် , $ အစိမ်းရောင် , $ အပြာ - အရောင်၏ RGB တန်ဖိုးကိုပြန်ပို့ရန်အသုံးပြုခဲ့သည်။

ဒီ function ကိုမှတစ်ဆင့်ကျွန်ုပ်တို့သည်ပုံရိပ်များပုံမှန်ရေးဆွဲခြင်းအတွက်အလွန်အသုံးဝင်သောသတ်မှတ်ထားသောအရောင်အညွှန်းကိန်းတန်ဖိုးနှင့်သက်ဆိုင်သော RGB တန်ဖိုးကိုရနိုင်သည်။

2 ။ ပုံအရောင်ပုံမှန်၏အယူအဆ

Image color ပုံမှန်ပုံမှန်ဖြစ်စဉ်သည်ပုံသဏ္ဌာန်အရောင်များကိုပုံမှန်အရောင်အကွာအဝေးသို့ချိန်ညှိရန်ဖြစ်သည်။ ၎င်းသည်မတူညီသောစက်ပစ္စည်းများနှင့်ရုပ်ပုံပုံစံများအကြားအရောင်ကွဲပြားခြားနားမှုများကိုလျော့နည်းစေသည်။ ပုံကိုချုံ့ဖို့ပြင်ဆင်တဲ့အခါပုံရိပ်ရဲ့အရောင်တွေဟာပေါင်းစည်းထားတဲ့အတိုင်းအတာတစ်ခုရဲ့အရောင်တွေရှိနိုင်ကြောင်းသေချာစေခြင်းက compression algorithm ၏ထိရောက်မှုကိုတိုးတက်စေပြီး compression အတွင်းဖြစ်နိုင်သမျှအရောင်ပုံပျက်မှုကိုလျော့နည်းစေသည်။

3 ။ ရုပ်ပုံချုံ့ခြင်းမပြုမီအရောင်ပုံမှန်လုပ်ဆောင်ပါ

ISACECOSORRESOLVELEL () function ကိုအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် pixel တစ်ခုစီ၏အရောင်တန်ဖိုးကိုပုံတွင် compression နှင့် process မတိုင်မီတွင်အရောင်တန်ဖိုးကိုရနိုင်သည်။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ပုံကိုချုံ့သည့်အခါပုံရိပ်ကိုပိုမိုကောင်းမွန်လာစေရန်လိုအပ်သည့်အရောင်ကိုချိန်ညှိနိုင်သည်။

နမူနာကုဒ်:

 <?php
// ပုံကိုတင်ခြင်း
$image = imagecreatefromjpeg('input_image.jpg');

// ပုံ၏အကျယ်နှင့်အမြင့်ကိုရယူပါ
$width = imagesx($image);
$height = imagesy($image);

// ပုံထဲမှာ pixel တစ်ခုချင်းစီမှတဆင့်ကြား
for ($y = 0; $y < $height; $y++) {
    for ($x = 0; $x < $width; $x++) {
        // လက်ရှိ pixel ၏အရောင်အညွှန်းကိုရယူပါ
        $colorIndex = imagecolorat($image, $x, $y);

        // အသုံးပြု imagecolorresolve ၏အရောင်ကိုရယူပါ RGB အဘိုး
        imagecolorresolve($image, $colorIndex, $red, $green, $blue);

        // အရောင်ပုံမှန်ဒီမှာဖျော်ဖြေသည်
        // ဥပမာအားဖြင့်,အရောင်ချိန်ညှိသို့မဟုတ်တိုးမြှင့်နိုင်ပါတယ်
        $normalizedRed = min(255, max(0, $red * 1.2));
        $normalizedGreen = min(255, max(0, $green * 1.1));
        $normalizedBlue = min(255, max(0, $blue));

        // 将归一化后的颜色အဘိုး应用到该像素
        $newColor = imagecolorallocate($image, $normalizedRed, $normalizedGreen, $normalizedBlue);
        imagesetpixel($image, $x, $y, $newColor);
    }
}

// ပြုပြင်ထားသောပုံများကိုသိမ်းဆည်းပါ
imagejpeg($image, 'output_image.jpg');

// ပုံရိပ်အရင်းအမြစ်များကိုလွှတ်ပါ
imagedestroy($image);
?>

ကုဒ်ရှင်းပြချက်:

  1. ပထမ ဦး စွာ JPEG ပုံရိပ်ကို isagecreathertjpeg () function မှတဆင့် load ။

  2. ပုံတွင် pixel တစ်ခုစီ၏အရောင်အညွှန်းကိန်းရရန် isaecolorat () ကို သုံးပါ။

  3. Call ISECOSORRESOLELOLELELE () အရောင်အညွှန်းကိန်းနှင့်သက်ဆိုင်သော RGB တန်ဖိုးကိုခေါ်ရန်။

  4. RGB တန်ဖိုးများကိုပုံမှန်အားဖြင့်ဤဥပမာတွင်ရိုးရှင်းသောမြှားထုတ်ခြင်းလုပ်ငန်းများမှရုပ်တု၏အနီရောင်နှင့်အစိမ်းရောင်အစိတ်အပိုင်းများကိုမြှင့်တင်ပေးသည်။

  5. pixel တစ်ခုချင်းစီအတွက်ပုံမှန်အရောင်တန်ဖိုးကိုပြန်လည်လျှောက်ထားရန် ISESECOLORALANTEALALALANEALALANEALEALACE ကို သုံးပါ။

  6. နောက်ဆုံးတွင် imagejpeg () ကို ဖိုင်အသစ်တစ်ခုအဖြစ်သိမ်းဆည်းရန် imagejpeg () ကိုသုံးပါ။

ဤနည်းအားဖြင့်ပုံ၏အရောင်ကိုချုံ့ခြင်းမပြုမီထိရောက်စွာလုပ်ဆောင်သည်။ ၎င်းသည် compression full ကိုတိုးတက်စေပြီးအရောင်ပုံပျက်မှုကိုလျှော့ချပေးသည်။

4 ။ နိဂုံးချုပ်

အရောင်ပုံမှန်အတွက် isaecolorresolveololve () function ကိုအသုံးပြုခြင်းသည်ပုံရိပ်သာသက်ရောက်မှုကိုတိုးတက်စေရန်ထိရောက်သောနည်းလမ်းဖြစ်သည်။ ပုံရိပ်အရောင်ကိုပုံမှန်ပြုလုပ်ခြင်းဖြင့်ကွဲပြားခြားနားသောအရောင်နေရာများနှင့်ချုံ့နေသော algorithms ကြောင့်ဖြစ်ပေါ်လာသောပုံပျက်မှုကိုလျှော့ချနိုင်ပြီးပုံသည် compression this algorithms များကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်နိုင်သည်။ ပုံရိပ်အရည်အသွေးကိုကောင်းမွန်အောင်ပြုလုပ်ခြင်းမတိုင်မီအရောင်ပုံမှန်ကိုမည်သို့ကျင့်သုံးရမည်ကိုပိုမိုနားလည်သဘောပေါက်ရန်ဤဆောင်းပါးသည်သင့်အားပိုမိုနားလည်သဘောပေါက်ရန်မျှော်လင့်ပါသည်။