ImageMagick - கோப்பு அளவுகளைக் குறைத்தல்

Imagemagick Koppu Alavukalaik Kuraittal



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

ImageMagick ஐ நிறுவுகிறது

இதற்கு நமக்கு ImageMagick தேவைப்படும், எனவே முதலில், அதை நிறுவலாம்:







சூடோ apt-get install பிம்ப வித்தை



தர சுவிட்ச்

புகைப்படம்/படம்/வீடியோவின் அளவைக் குறைப்பதற்கான முதல் மற்றும் எளிதான வழி, புகைப்படத்தின் தரத்தைக் குறைப்பதாகும். தர சுவிட்ச் JPEG/MIFF/PNG சுருக்க அளவைக் குறிக்கிறது. JPEG மற்றும் MPEG க்கு, 1 இன் தரமானது சுருக்கத்தின் மிக உயர்ந்த நிலை மற்றும் குறைந்த படத் தரத்தைக் குறிக்கிறது, அதே சமயம் 100 குறைந்த அளவு சுருக்க மற்றும் சிறந்த தரத்தைக் குறிக்கிறது.



எனவே ஒரு உதாரணத்தைப் பார்ப்போம்; நான் எடுத்த ஒரு மரத்தின் படம் 4624×3468 தீர்மானம் மற்றும் 5.70226MiB ஆகும். இது அசல் படம், ஒரு JPEG, குறிப்பாக இருக்க வேண்டும்.






இப்போது, ​​​​படத்தின் அளவைக் குறைக்க விரும்புகிறோம். எனவே தர சுவிட்ச் அமைப்புகளை சற்று வித்தியாசமாக அமைக்க முயற்சிப்போம், என்ன நடக்கிறது என்று பார்க்கலாம்.

மரத்தை_4624x3468.jpg மாற்றவும் -தரம் 75 tree_4624x3468_quality75.jpg
மரத்தை_4624x3468.jpg மாற்றவும் -தரம் 25 tree_4624x3468_quality25.jpg



ஒரு படத்துக்கு 75 ஆகவும், இன்னொரு படத்துக்கு 25 ஆகவும் தரம் குறைச்சேன். அசல் படம் 5.70226MiB, ஆனால் 75 தரத்தில் இருந்த படம் 2.74664MiB ஆனது, தரம் 25 ஆனது 1358250 (1.295MiB) ஆனது. இங்கே, நான் தனிப்பட்ட முறையில் 75% தரத்துடன் செல்கிறேன்.



இப்போது, ​​புகைப்படத்தின் உண்மையான தரம் குறித்தும் நாங்கள் அக்கறை காட்டுவதால், புகைப்படங்களைக் காட்டுகிறேன்:


tree_4624x3468_quality75.jpg


tree_4624x3468_quality25.jpg

நீங்கள் பார்க்க முடியும் என, தரம் அதிகம் பாதிக்கப்படவில்லை, ஆனால் கோப்பு அளவு சிறியது.

இப்போது, ​​நான் PNG உடன் அதையே செய்ய முயற்சித்தேன், எனக்கு கிடைத்தது இதுதான்:


எனவே, இது 23501600B (22.413MiB) இலிருந்து 22.2854MiB க்கு சென்றது. ஒரு JPEG க்கு, இது 5.70226MiB இலிருந்து 1.295MiB வரை சென்றது. PNG போன்ற இழப்பு இல்லாத வடிவங்களுக்கு, தர சுவிட்ச் மிகவும் கடினமானது.

படங்களின் அளவை மாற்றுதல்

படங்களை மறுஅளவிடுவது மற்றொரு வழி. உதாரணத்திற்கு:

மரத்தை_4624x3468.jpg மாற்றவும் -அளவாக்கு ஐம்பது % x50 % மரம்_4624x3468_resize50 % .jpg



நீங்கள் தெளிவாக பார்க்க முடியும் என, 4624×3468 இருந்த படம் 5.70226MiB, 2312×1734 இருந்த படம் 1.56287MiB மட்டுமே.

வரையறுப்பு சுவிட்ச்

டிஃபைன் சுவிட்சைத் தொடர்ந்து ஒரு விசையும் அதன் கொடுக்கப்பட்ட மதிப்பும் இருக்கும்.

விசையை வரையறுக்கவும்{=மதிப்பு}…

சாத்தியமான முக்கிய மதிப்புகளின் பட்டியலைக் காணலாம் .

PNGக்கு, நீங்கள் png:compression-level=value ஐப் பயன்படுத்தலாம். மதிப்பு 0 முதல் 9 வரை இருக்கலாம். 0 இன் மதிப்பு உங்களுக்கு குறைந்தபட்ச சுருக்கத்தை வழங்கும், ஆனால் அது விரைவானது, மேலும் 9 மதிப்பு உங்களுக்கு சிறந்த சுருக்கத்தை வழங்கும் ஆனால் மிக மெதுவாக இருக்கும். இடையில் எதுவுமே நடக்கும்.

உதாரணத்திற்கு:

மரத்தை_4624x3468.png மாற்றவும் -வரையறு png:compression-level= 9 மரம்_4624x3468_compression9.png



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

-வரையறை jpeg:extent={size}

 tree_4624x3468.jpgஐ மாற்றவும் -வரையறு jpeg: அளவு =1MB மரம்_4624x3468_extent1MB.jpg



மேலே உள்ள படத்தில் நீங்கள் பார்க்க முடியும் என, இது 4624×3468 தீர்மானம் மற்றும் 0.897MiB அளவு. எனவே, நீங்கள் கோரியபடி, ImageMagick அதிகபட்ச அளவு 1MB ஐ விட குறைவான புகைப்படத்தை உருவாக்கியுள்ளது.

ஸ்ட்ரிப் ஸ்விட்ச்

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

மரத்தை_4624x3468.jpg மாற்றவும் -ஆடை அவிழ்ப்பு tree_strip.jpg



இங்கே, நீங்கள் பார்க்க முடியும் என, அசல் புகைப்படம் 4624×3468 மற்றும் 5.7MiB ஆகும். ஆனால் மெட்டாடேட்டா அகற்றப்பட்ட படம் 4.65MiB ஆகும்.

கலர்ஸ்பேஸ் ஸ்விட்ச்

நீங்கள் வண்ண இடைவெளியை மாற்றவும் முயற்சி செய்யலாம். இந்த முதல் நிகழ்வில், நான் அதை சாம்பல் நிறமாக மாற்றுவேன்.

மரத்தை_4624x3468.jpg மாற்றவும் -வண்ணவெளி சாம்பல் மரம்_gray.jpg -தரம் 75



நீங்கள் பார்க்க முடியும் என, படத்தின் அளவு குறைப்பு மிகவும் பெரியதாக இல்லை, ஆனால் ஒரு குறைப்பு உள்ளது - 5.70226MiB இலிருந்து 4.44997MiB வரை.

மாற்றாக, நான் பின்வருவனவற்றையும் முயற்சித்தேன்:

மரத்தை_4624x3468.png மாற்றவும் -வண்ணவெளி சாம்பல் மரம்_graypng.png



PNG ஐப் பொறுத்தவரை, எனது அசல் புகைப்படம், அது 4624×3468, 22.42MiB ஆகும், ஆனால் நான் அதை சாம்பல் நிறமாக மாற்றினால், அது 8.88MiB ஆக மாறும்.

நிறங்கள் சுவிட்ச்

பயன்படுத்தப்படும் வண்ணங்களின் எண்ணிக்கையை மாற்றவும் நீங்கள் தேர்வு செய்யலாம். இந்த குறிப்பிட்ட விஷயத்தில், நான் PNG இல் 16 வண்ணங்களை மட்டுமே பயன்படுத்தப் போகிறேன்.

மரத்தை_4624x3468.png மாற்றவும் -வண்ணங்கள் 16 மரம்_4624x3468_16colors.png



அசல் PNG 4624×3468 மற்றும் 22.42MiB ஆகும். இருப்பினும், நான் வண்ணங்களை 16 ஆக மாற்றியபோது, ​​​​படம் 4.27MiB அளவு ஆனது. மற்றும் புகைப்படம் இதுபோல் தெரிகிறது:


மரம்_4624x3468_16colors.png

பல சுவிட்சுகளைப் பயன்படுத்துதல்

இப்போது, ​​நீங்கள் ஒரு புகைப்படத்தில் ஒரு சுவிட்சையும் பயன்படுத்த வேண்டியதில்லை! ஒரு படத்தில் நீங்கள் விரும்பும் பல சுவிட்சுகளை இணைக்கலாம்.

எனவே, உதாரணம் 1 இல், நான் ஒரு மரத்தின் PNG புகைப்படத்தை எடுக்கப் போகிறேன். இந்த அசல் புகைப்படம் 4624×3468 மற்றும் 22.42MiB அளவில் உள்ளது, மேலும் நான் பல சுவிட்சுகளைப் பயன்படுத்தப் போகிறேன், அது என்னை எங்கு அழைத்துச் செல்கிறது என்பதைப் பார்க்கப் போகிறேன்.

மரத்தை_4624x3468.png மாற்றவும் -ஆடை அவிழ்ப்பு -அளவாக்கு 75 % x75 % -வரையறு png:compression-level= 9 -வண்ணவெளி சாம்பல்  மரம்_4624x3468_reducedsize.png



எனவே இந்த PNG, அசல் அளவு 22.42MiB, 5.3MiB படமாக மாறியது. இதன் விளைவாக வரும் படம் அசல் அளவின் 23% ஆகும்.

எனவே அடுத்து, ஒரு JPG ஐப் பார்க்கலாம்.

மரத்தை_4624x3468.jpg மாற்றவும் -தரம் 75 -அளவாக்கு 75 % x75 % -ஆடை அவிழ்ப்பு -வண்ணங்கள் 16 tree_4624x3468_reducedsize.jpg



எனவே, இங்கே, JPG க்காக, வண்ணப் படத்திற்காக 5.7MiB இன் அசல் அளவிலிருந்து 2.2MiB வரை சென்றோம்.

ஆனால் அது நிறமாக இல்லாவிட்டால்:

மரத்தை_4624x3468.jpg மாற்றவும் -தரம் 75 -அளவாக்கு 75 % x75 % -ஆடை அவிழ்ப்பு -வண்ணவெளி சாம்பல் மரம்_4624x3468_reducedsize.jpg



இங்கே, சாம்பல் படத்திற்கு அசல் அளவு 5.7MiB இலிருந்து 1.6MiB வரை சென்றோம்.

நீங்கள் விரும்பினால், அளவிலும் அதிகபட்ச வரம்பை அமைத்திருக்கலாம். நீங்கள் உண்மையிலேயே உங்கள் மனதை அமைத்துக் கொண்டால் அளவைக் குறைக்கலாம் என்பதுதான் புள்ளி.

முடிவுரை

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