Амьдралын үнэ цэнтэй мөчүүдээ дурсах зураг бичлэг, сонсох дуртай дуу, баримт бичиг гээд хүмүүс бид өдөр тутамдаа хэд хэдэн тэрбум дижитал мэдээллийг буй болгодог. Үүнийгээ дагаад энэхүү мэдээллийг хүмүүс хоорондоо дамжуулах, хадгалах хэрэгтэй болдог. Тэгвэл энэхүү өдөр өдрөөр хэмжээ нь тэлж буй мэдээлэлд улам л их санах ой шаардагдана. Тиймээс хүмүүс бид үргэлж жижиг зайд их хэмжээний өгөгдөл хадгалж болох арга хайдаг. Энэ асуудлыг шийдэх өөр нэг арга нь хадгалах саваа тэлэх биш харин хадгалж буй зүйлийнхээ оврыг багасгах юм. Энэхүү аргыг технологийн салбарт хэрэгжүүлсэн жишээ нь өгөгдлийг шахах юм.
Техникийн хувьд
Өгөгдлийг шахах олон техник байдаг ба ихэвчлэн шифрийн эсвэл математикийн алгоритм ашиглаж шахдаг. Шахалтын техникийг алдагдалтай ба алдагдалгүй гэж хоёр ангилдаг. Lossless compression ямар ч мэдээлэл алдагдахгүй. Нөгөөтээгүүр, Lossy compression нь шаардлагагүй эсвэл бага ач холбогдолтой мэдээллийг устгаж мэдээллийг багасгадаг.
Алдагдалгүй шахалтын техникүүд
Бид хоорондоо харилцахдаа хэд хэдэн үгсийг дахин дахин давтан харилцдаг. Тиймээс бичвэрийн давтагдаж буй үгнүүдийг шифрлэж түүнийгээ буцаагаад тайлж болдог. Хамгийн эртний энэхүү шифрлэлтийн арга нь 1978 оноос эхлэлтэй , нэгэн жишээ нь Seaman’s signal manual гэх номыг ашиглан хүмүүс хоорондоо харилцдаг байжээ. Тухайн ном нийтлэг ашиглагддаг өгүүлбэрүүд болон түүнд харгалзах кодуудыг агуулсан байдаг. Хэрвээ би хэн нэгэнд захидал бичихийг хүсвэл зүгээр л тэдгээр өгүүлбэрүүдийн харгалзах кодыг явуулахад болно. Гэхдээ энэхүү арга нь хэт баригдмал бөгөөд хэдхэн өгүүлбэрээр хэлэхийг хүссэнээ илэрхийлнэ гэдэг төвөгтэй. Тиймээс өөр нэг алдагдалгүй шахалт буй болсон нь эдгээр кодын номыг тухайн шахах гэж буй бичвэрт нь тааруулж үүсгэх явдал байсан юм. Үүнийг ашигласнаар код болон тухайн кодыг тайлах номын хэмжээ жинхэнэ бичвэрээс богино болдог байна. Энэхүү өгөгдөл шахалтын алгоритмыг Lempel-Ziv гэдэг. Линукс үйлдлийн систем дээр байх gzip команд нь энэхүү алгоритмыг ашиглан шахдаг.
Алдагдалтай шахалтын техникүүд
Үндсэн 2 техник бий:
Алдаатай дамжуулах кодчилол – (lossy transform codes) зураг, дууны файлыг жижиг сегмент хэсгүүдэд хуваан, шинэ зайд шилжүүлэн ажилладаг.. Үр дүнгийн утга нь агуулгын дундаж утгаар кодчилогдсон байдаг.
Алдаатай таамагласан кодчилол – (lossy predictive codecs), таамагласан эсвэл сүүлд кодчилсон өгөгдөл нь тухайн зургийн фрэйм, дууг орлуулан бий болгоно. Орлуулсан ба бодит өгөгдлийн хоорондох алдаа нь квантчилагдсан ба кодчилогдсон байна. Зарим системд энэхүү 2 техникийг хамтад нь хэрэглэдэг.
Дүгнэлт
Алдаатай шахалт нь алдаагүй шахалтаасаа арай илүү бага зай эзэлдэг. Алдаатай шахалтыг зураг, видео болон дууг шахахад ашиглавал зүгээр байдаг. Харин чухал хэрэгтэй бичвэр зэргийг алдагдалтай шахахаас зайлсхийх нь зүйтэй.