Komu [email]: Zpráva:
Váš email:
Komu [jméno]:
Vaše jméno:
  HTML email

கணினியில் கையாளப்படும் படங்கள் - 5 (மாற்றப்பட்டது)

முன்பு எழுதியவை பாகம் 1 | பாகம் 2 | பாகம் 3 | பாகம் 4

முதலில் இந்தக் கேள்விக்கு விடை என்னன்னு பார்ப்போம்:'கோப்பை சுருக்குவதானால் ஸிப் (zip) பண்ணிவிட்டுப் போகலாமே, இத்தனை லொட்டுலொசுக்கு வடிவங்கள் எதுக்கு?'

ஸிப் முறையில் ஒரு கோப்பை சுருக்குவதற்கு பல அல்காரிதம்கள் (கணிமைசெய்முறை?) உள்ளன. சுருக்கப்பட்ட ஒரு கோப்பை விரிப்பதற்கும் இதே செய்முறையின் தலைகீழ் முறை பயனாகிறது. ஆனால் பெரும்பாலான செயலிகள் சுருக்கப்பட்ட கோப்பை அப்படியே கையாளும் திறனுடன் வருவதில்லை. சுருக்குதல்-விரித்தல் என்ற செயலோடு இவை தன்னை சம்பந்தப்படுத்திக்கொள்வதில்லை. அதனால் கோப்பைத் திறக்கும்முன் விரிக்கவேண்டியது கட்டாயம் ஆகிறது. ஆனால் இணையத்தில் கையாளும் படங்கள் பதிவிறக்கம் ஆனவுடனே நமக்குக் காட்டப்படவேண்டியவை. ஒவ்வொன்றாகப் பதிவிறக்கம் செய்துவிட்டு, தனியான செயலியால் விரித்து, பிறகு உலாவியில் பார்க்கவேண்டியிருந்தால் அது நடைமுறைக்கு ஒத்துவருமா? உலாவியிலேயே சுருக்க-விரிக்க ஒரு சொருகு நிரல் (plugin) நிறுவிவிட்டால் இது சாத்தியம்.


 
இதுமட்டுமல்லாமல் வெறுமனே ஸிப் முறையில் சுருக்குவதால் படக் கோப்புகளுக்கு பெரிய பயன் கிடைக்காமல் போகவும் வாய்ப்பிருக்கிறது. பாகம் 3-ல் பார்த்த நம் பழைய உதாரணங்களையே எடுத்துக்கொள்வோம்.


முதலில் காட்டிய பிஎம்பி, 226 கி. பைட் அளவு இருப்பதை ஸிப் செய்துபார்ப்போம். என்ன அளவுக்கு சுருங்குகிறது? என் கணினியில் 186 கி.பைட். வருகிறது. இரண்டாவது காட்டிய பிஎம்பியை சுருக்கினால், வெறும் 1531 பைட் தான் வருகிறது.


முதல் படம் ஜேபெக்கில் சுருக்கப்பட்ட அளவுக்கு(28 கி. பைட்) ஸிப் சுருக்கம் கிட்டத்தில்கூட வரவில்லை. இரண்டாவது ஓரளவுக்கு வருகிறது; ஒரு கி.பைட்டுக்கும் குறைவாகவே வேறுபாடு.


இதில் முக்கியமாக கவனத்தில் வைக்கவேண்டியது, ஸிப் முறை சுருக்கம் ஒரு இழப்பற்ற சுருக்கமுறை (lossless compression). உரை, அட்டவணை(விரிதாள்) போன்ற கோப்புகளுக்கு இந்த இழப்பற்ற சுருக்கமுறை தேவைப்படுகிறது. (அட்டவனையின் ஒரு கட்டத்தில் ஒரு லட்ச ரூபாய் என்று இருக்கும் இடத்தில் ஒரு சைபர் இழந்தால் பத்தாயிரமாகிவிடுமே!) ஆனால் படம் எனபது அப்படியல்லவே! முதல் படத்தில் மொத்தமுள்ள (320 x 240=)76800புள்ளிகளில் ஒரு சில புள்ளிகளின் வண்ணம் சற்று மாறியிருந்தால் நம் கண் கண்டுபிடிக்குமா? நம் கண்தான் நம்மை சுலபத்தில் ஏமாற்றிவிடுமே. இதை, வாயிலிருந்து லிங்கம் வரவழைப்பவர்களால் நாம் இதைப் புரிந்துகொள்ளாமல் இருந்தால்கூட, பி.சி. சர்க்கார் ஜூனியர் போன்றோர் மாயாஜாலக் காட்சிகளில் புரியவைத்திருப்பார்களே.


Dots

எந்த நடுப்புள்ளி பெரியது?


இந்த நுட்பமான சுட்சுமத்தை சாதகமாகப் பயன்படுத்திக்கொள்ளும் சாமர்த்தியம் படங்களைச் சுருக்கும் செய்முறைகளில் அமைக்கப்பட்டுள்ளன. எனவே தான் 'ஸிப்'பால் எண்ணிப்பார்க்கமுடியாத அளவுக்கு (186 எங்கே, 28 எங்கே?) படங்களை சுருக்கமுடிகிறது.


அதுசரி, இந்த படங்களுக்கான விசேஷ சுருக்குமுறைக்குள் போகும்முன், கிட்டத்தட்ட ஸிப் போன்ற சுருக்கமுறையைப் பாவிக்கும், பட வகையைத் தெரிந்துகொள்ளலாம். அதுதான் ஜிஃப் (ஜிஃப்-ஸிப், நல்ல பொருத்தம்தான்) வகை.


முதல் பாகத்தில் நாம் பார்த்த அட்டவணையில் 'படத்தின் தரத்தில் இழப்பு' என்ற கட்டத்துக்கு 'இழப்பில்லை(வண்ணங்களின் எண்ணிக்கைக் குறைவைத் தவிர்த்து)' என்று ஜிஃப் வகைக்கு எதிரே கொடுக்கப்பட்டிருக்கிறதே, அது இதனால்தான். இப்போதைக்கு வண்ணங்களின் எண்ணிக்கைக் குறைவைத் தவிர்த்து என்பதைக் கொஞ்சம் ஓரமாக வைத்துவிடலாம். ஒரு சமயத்தில் ஒரு விஷயத்தைப் பார்க்கலாம், புரிந்துகொள்ள எளிது.


மீண்டும் ஒருமுறை நம் ஆய்வுக்கு எடுத்துக்கொண்ட 'பொம்மைத்தலை'க்குப் போகலாம். இதை வரிசையான பைட் தொடராக ஒரு கோப்பில் சேமித்தால் இப்படி இருக்கும் என்று பார்த்தோம்:


wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwggggw...


 


இதை ஒரு சமர்த்துப்பையனிடம் கொடுக்கிறோம். அவனை 'இதை மனப்பாடம் செய்துகொள்' என்று சொல்கிறோம், அவன் இதை வரிசையாக ராகம்போட்டு 'wwwwwwwwwwwww...' என்று உரு அடிக்காமல், ஒரு காரியம் பண்ணுகிறான்.


என்ன அது?


86w4g11w6g9w8g8w8g8w8g7w10g6w10g7w8g9w6g10w6g11w4g11w2g3mg7wm4gm4gm3w2m10g2m49w


என்ன குழம்புகிறதா? ஒன்றும் இல்லை, முதலில் wவில் ஆரம்பித்து எத்தனை w தொடர்ந்து வருகிறது? எண்ணிப்பார்த்தால் 86 wக்கள் இருக்கும். எனவே 86 முறை w போடுவதற்கு பதிலாக 86w என்ற ஒரு சங்கேதத்தை பயன்படுத்திவிட்டான் சுட்டிப்பயல். இதேபோல அடுத்து வரும் ggggக்குப் பதில் 4g. இப்படியே மற்றவையும்! இப்படி செய்தபின் எண்ணிப் பார்த்தால் நாம் முதலில் 352 பைட் தேவை என்று சொல்லிய தகவலை வெறும் 80 பைட்டுகளால் குறித்துவிடமுடிகிறதே. இந்த முறையில் எதாவது இழப்பு இருக்கிறதா? இந்த சங்கேதம் தெரிந்த ஒருவர்(அல்லது செயலி) இந்த குறிப்பை வைத்து பழைய தொடரை மறுபடியும் கட்டமுடியுமல்லவா? அப்படி மறுபடி கிடைக்கும் தொடரில் எதாவது இழப்பு இருக்குமா? இருக்காதுதானே!


இந்த சுட்டிப்பயல் செய்வதை அப்படியே செய்யும் சுருக்கமுறையின் நுட்பப்பெயர் RLE எனப்படும் Run Length Encoding முறை. இந்த முறைதான் ஜிஃப் வகைப் படக் கோப்புகளில் பயனாகிறது. இதைப் போன்ற பல சுருக்குமுறைகள் நடைமுறையில் இருக்கின்றன. அவற்றில் LZW (Lempel-Ziv-Welch) சுருக்கமுறை ஜிஃப் வகையில் பயனாகிறது. விளக்குவதற்கு எளிதாக இருக்கவே RLE முறையை இங்கே பார்த்தோம். இதனால்தான் திட்டுத்திட்டான வண்ணங்கள் கொண்ட படங்களில் சுருக்க நேர்த்தி மிக அதிகமாக இருக்கிறது. முதலில் இருக்கும் பிஎம்பியைக்காட்டிலும் இரண்டாவது இருக்கும் பிஎம்பியில் தொடர்ந்து பல பிக்செல்கள் ஒரே வண்ணம் இருப்பதால், அதை இந்த RLE முறையைப் பாவிக்கும் ஜிஃப் வகைக் கோப்பாக செய்யும்போது, நன்கு சுருக்க முடிகிறது, எந்த இழப்பும் இல்லாமல்!


இதே முறையில் முதல் பிஎம்பியை சுருக்கிப் பார்க்கலாமா?


செய்யலாம், அப்டியெல்லாம் செய்ய, நமக்கு ஸிப் செயலியைப் போல படங்களை வகை மாற்ற ஒரு செயலி தேவைப்படுகிறது. இலவசமாகக் கிடைக்கும், நல்ல ஒரு செயலி இர்ஃபான்வியூ என்ற ஒன்று. இதை பயன்படுத்திதான் நாம் மேற்கொண்டு புரிந்துகொள்ளப் போகிறோம். அதுமட்டுமல்லாமல், கணினியில், டிஜிட்டல் காமிராவில் படங்கள் கையாளுபவர்கள் கட்டாயம் பயன்படுத்தவேண்டிய ஒரு செயலியாகவும் இது அமைகிறது. அது எவ்வாறு என்பதை அடுத்துப் பார்க்கலாம்.



பின்குறிப்பு (பின்னர் சேர்க்கப்பட்டது): RLEயும், ஜிஃப் வகையில் பயனாகிறது என்று கிடைத்த ஒரு தகவலை வைத்து, எளிதாக புரியும் என்பதற்காக பயன்படுத்தினேன். நண்பர் நவன் LZW தான் ஜிஃப் தகுதரத்தில் குறிப்பிடப்பட்ட அதிகாரப்பூர்வ சுருக்கமுறை என்று சுட்டிக்காட்டியிருந்தார். அவருக்கு என் நன்றி. இந்த LZW முறையின் காப்புரிமை பிரச்னை காரணமாகவே PNG போன்ற திறந்த முறைகளை பலரும் பரிந்துரைக்கிறார்கள். ஆனாலும் தகுந்த செயலிகொண்டு RLE முறையில் சுருக்கப்பட்ட ஜிஃப் கோப்பையும் ஜிஃப் படத்தைக் காட்டும் திறனுள்ள உலாவிகள் காட்டும் என்றும் தகவல் கிடைக்கிறது. பயனர் நிலையில் இதற்குமேல் உள்ளே போய்ப் பார்ப்பது தேவையிருக்காது என்பதால் நாம் இத்தோடு இந்த LZW/RLE விஷயத்தை விட்டுவிட்டு மேலே செல்வோம்.

இன்னும் வரும்...




21:36:46 - 26.10.04 - Kasi - கணினியியல் - 2171x