मैं छवियों को कैसे संपीड़ित कर सकता हूं?


25

मेरे पास 5,000 छवियां हैं जिन्हें मुझे संपीड़ित करने की आवश्यकता है (अपनी वेबसाइट पर प्रदर्शित करने के लिए)।

मैं उबंटू में नया हूं। तो मैं क्या करूं?



@ मोस्तफाअंगराहा: नकलची नहीं। कृपया मेरे जवाब पढ़ें askubuntu.com/a/781588/9598 और फिर से विचार करना इस प्रश्न को बंद करने के लिए नहीं में अपना वोट। यह बेहतर है। धन्यवाद!
गप्पेटेव्स डी'कोन्स्टोनजो

जवाबों:


21

मैं उपयोग करने के लिए ट्रिमेज सुपर सरल का उपयोग करता हूं ।

केवल चित्र जोड़ें और इसे स्थापित करने के लिए संपीड़ित करें:

sudo apt-get install trimage

यहाँ छवि विवरण दर्ज करें


2
मुझे ऐसी कोई भी सेटिंग नहीं दिख रही है जिसके द्वारा मैं यह परिभाषित कर सकूं कि मैं इसे कैसे संपीड़ित करूं, फ़ाइल का आकार, आदि
Rico

46

इस प्रश्न में "कम्प्रेशन" शब्द का गलत अर्थ लगता है, लेकिन यह अभी तक मान्य है कि आप इसे देखना चाहते हैं।

दृश्यों

आइए सामना करते हैं कि वेब डिज़ाइनर, वेब डेवलपर्स और / या वेब मास्टर्स को हमारी छवि फ़ाइलों को "कंप्रेस" करने की आवश्यकता होती है, ताकि अगर हम सीधे वास्तविक उत्पादन वातावरण पर काम कर रहे हैं तो उन्हें पर्याप्त रूप से "होस्टिंग" पर अपलोड किया जा सके। यदि हम एक स्थानीय परीक्षण उत्पादन वातावरण में काम कर रहे थे तो यह प्रभावित नहीं करेगा।

उत्तर में से कई अन्य चीजों को संदर्भित करते हुए प्रतीत होते हैं, जो ज्यादातर -प्रायः के कारण होते हैं- उन्होंने इस तरह के दृश्यों का सामना नहीं किया है। इसलिए मैं यह बताना शुरू करता हूं।

इसलिए। आइए समझते हैं कि उत्तर को हल करने की क्या आवश्यकता है:

  1. चित्र हल्का होना चाहिए
  2. फ़ाइल का आकार कम करने के लिए चित्र "संकुचित" होना चाहिए, लेकिन "rezised" नहीं जैसा कि एक अन्य उपयोगकर्ता द्वारा संदर्भित किया गया है, जिसने इस प्रश्न पर एक डुप्लिकेट को इंगित किया था JPG बैच संपीड़न और नाम बदलें (-exec, xargs, पाइपिंग?)
  3. चित्रों को बैच संकुचित होना चाहिए, अधिमानतः एक जीयूआई के माध्यम से।

हल्के चित्र

आइए पहले समझते हैं कि "हल्का चित्र" क्या होना चाहिए।

1024px से अधिक रिज़ॉल्यूशन वाले हाई डेफिनिशन पिक्चर्स का बड़ा फ़ाइल साइज़ हो सकता है। मैं इस स्क्रीनशॉट पर एक उदाहरण प्रदान करता हूं:

यहाँ छवि विवरण दर्ज करें

यहाँ छवि विवरण दर्ज करें

फ़ाइल प्रॉपर्टीज़ विंडो में हम देख सकते हैं कि यह 9.5 एमबी की फ़ाइल है, जो अपलोड करने में बहुत देरी करेगी और वेबसाइट पर प्रकाशित होने पर स्क्रीन पर रेंडर करने में बहुत देरी करेगी।

फिर भी, उच्च परिभाषा मुद्रण के लिए छवि आकार और ग्रिड रिज़ॉल्यूशन वास्तव में उपयोगी है। तो यह एक अलग दृश्य है जिसे मैं इस स्पष्टीकरण में शामिल नहीं करूंगा।

इसलिए, मैं अपनी वेबसाइट में इस छवि का उपयोग कैसे कर सकता हूं, अपलोड करने के लिए वर्षों तक प्रतीक्षा किए बिना और अपनी वेबसाइट में इसे दिखाने के लिए कुछ अन्य वर्षों तक प्रतीक्षा करनी चाहिए?

फ़ाइल को संपीड़ित किया जाना चाहिए।

और जब हम "संपीड़न" के बारे में बात करते हैं, तो हमें स्पष्ट रूप से इसे बदलने की आवश्यकता होती है ताकि हम जिस मामले का सामना कर रहे हैं, उसके लिए यह उपयोगी हो।

तो, चलो एक टर्मिनल में अगला छोड़ें:

convert seminario-tabloide.png test.jpg

यह उच्च परिभाषा PNG प्रारूप को "संपीड़ित" JPG प्रारूप में बदलने जा रहा है, जो अपने आप में एक छोटी फ़ाइल है! यह 9.5 एमबी से 2.4 एमबी तक जाता है।

यहाँ छवि विवरण दर्ज करें

फिर भी बड़ा?

लेकिन, 2.4 एमबी अभी तक एक बड़ा फ़ाइल आकार है। चलो अब कुछ अन्य के साथ खेलते हैं ImageMagick परिवर्तित आदेश छोटे फ़ाइल आकार बनाने के लिए कमांड:

convert test.jpg -quality 50% test-50p.jpg

छवि को "संपीड़ित" करने के लिए हमें यही करना होगा। यह छवि की गुणवत्ता को 50% तक कम करने और 938.4 KB <=== (नोट: KILOBYTES, एक मेगाबाइट भी नहीं) फ़ाइल वितरित करने जा रहा है।

हम आगे जा सकते हैं और उसी कमांड में प्रतिशत को समायोजित करके एक छोटी फ़ाइल का आकार बना सकते हैं:

convert test.jpg -quality 30% test-30p.jpg

कृपया ध्यान रखें कि इस उदाहरण में हम फ़ाइल की गुणवत्ता को कम कर रहे हैं, न कि छवि आयामों को। जिसके परिणामस्वरूप एक संपीड़ित फ़ाइल होगी जो स्क्रीन पर प्रस्तुत किए जाने पर दृष्टिगत रूप से प्रभावित नहीं होती है, लेकिन आप एक बड़े पेपर आकार (पत्र की तुलना में बड़ा) में छपाई करते समय कलाकृतियों को देखेंगे।

Resizing + Compressing = सुपर कूल!

अभी व। हम एक अलग चीज कर सकते हैं। चीजों की एक जोड़ी वास्तव में: हम पहले छवियों का आकार बदल सकते हैं और उसके बाद संपीड़न लागू कर सकते हैं, जिसके परिणामस्वरूप मूल की तुलना में एक छोटा फ़ाइल आकार होगा, और स्क्रीन पर प्रतिपादन के लिए एक उपयोगी छवि प्रदान करेगा, मुद्रण के लिए इतना अच्छा नहीं है लेकिन ऐसा लगता है कि हम स्क्रीन पर इसे प्रदर्शित करने की आवश्यकता है और मुद्रित बैनर में नहीं, है ना?

तो चलिए इसे करते हैं:

convert seminario-tabloide.png -resize 1024x test-1024x.jpg

इस निर्देश के साथ, हम पहलू अनुपात को न खोने के लिए आवश्यक पिक्सेल की किसी भी राशि से 1024 पिक्सेल चौड़ी होने के लिए छवि का आकार बदलने के लिए कह रहे हैं।

अब ... लगता है क्या?

फ़ाइल का आकार 9.5 MB से कम हो गया ... ( शंकराचार्य संगीत कृपया कृपया) 433.7 KILOBYTES

अगर हम इस तरह की अधिकतम संपीड़ित फ़ाइल को अधिकतम करने की इच्छा रखते हैं, तो हम फ़ाइल में डाले गए कुछ ओवरहेड डेटा का सामना करेंगे और इसका परिणाम बड़े फ़ाइल आकार में होगा। इसलिए मैं आपको कोशिश करने का सुझाव नहीं दूंगा, लेकिन यदि आप मुझसे उदाहरण की उम्मीद कर रहे हैं, तो ठीक है ... यहाँ हम चलते हैं!

convert test-1024x.jpg -quality 50% test-1024x-50p.jpg

और हम एक कमांड में 433.7 KB से 176.2 KB तक चले गए । यह उदाहरण सफल था, फिर भी छोटे फ़ाइल आकार में परिणाम के लिए किसी भी अभ्यास की उम्मीद नहीं है। लेकिन इस तरह की एक्सरसाइज चलाने पर आपको बहुत मज़ा आ सकता है।

बैच प्रक्रिया

ओह! लेकिन मैं लगभग एक जरूरत को भूल जाता हूं: इस प्रक्रिया को बहुत सारी तस्वीरों को आसानी से लागू करने के लिए।

ऐसी चीज के लिए हम इसे दो प्रक्रियाओं के साथ कर सकते हैं।

अन्तिम छोर

यह तेज़, और आसान है। तो चलिए टर्मिनल को बताते हैं कि हमें एक डायरेक्टरी की सभी फाइलों को एक डायरेक्टरी में चलाने की आवश्यकता है, जिसके बाद मैं दूसरे इंस्ट्रक्शन को समझाऊंगा।

सभी को 1024px में बदलें (आप किसी भी पिक्सेल राशि का उपयोग कर सकते हैं)

for i in *; do convert $i -resize 1024x $i-1024x.jpg; done;

यहां हम कमांड को एक डायरेक्टरी में सभी फाइलों के लिए एक ही इंस्ट्रक्शन को चलाने के लिए कह रहे हैं, ट्रांसफॉर्मेशन लागू करें और एक कॉपी को अलग नाम से ड्रॉप करें ताकि उसे चुनना आसान हो सके।

एक निर्देशिका में सभी चित्रों के लिए प्रतिशत में गुणवत्ता कम करें (आप चाहें तो किसी भी प्रतिशत का उपयोग करें):

for i in *-1024x.jpg; do convert $i -quality 50% $i-50p.jpg; done;

यहाँ हम इसकी फ़ाइलों को छोटा करने के लिए आकार में घटाई गई छवियों को गुणवत्ता में कम करने के लिए कह रहे हैं।

आप इन आदेशों के साथ खेल सकते हैं और अपने परिणाम देख सकते हैं। कुछ घंटों के मज़े के बाद आप एक विशेषज्ञ होंगे।

नॉटिलस स्क्रिप्ट

20 अप्रैल, 2015 को मुझे मूल प्रश्न के रूप में ऐसी स्थिति का सामना करना पड़ा, इसलिए मुझे कुछ शोध करना पड़ा और एक प्रश्न पर मदद के लिए पूछना पड़ा। इसीलिए अब मुझे इसका बहुत पता है। मुझे नहीं लगता कि मैं इस ज्ञान के साथ पैदा हुआ हूं, यार।

यदि आप टर्मिनलों और / या GUI का उपयोग करने की इच्छा नहीं रखते हैं, तो केवल फाइलों के अपने समूहों को चुनने और परिवर्तनों को लागू करने के लिए, आप फ़ाइलों के समूह को राइट क्लिक करने के लिए अपना Nautilus Actions Script बना सकते हैं और चुनें संदर्भ मेनू से एक विकल्प।

इस तरह के काम करने के निर्देशों के लिए कृपया प्रश्न, उत्तर और टिप्पणियों दोनों को यहां पढ़ें: Nautilus-Actions के साथ इसकी गुणवत्ता को बदलने के लिए JPG छवियों को कैसे संसाधित करें?

सौभाग्य!


1
यह "मुझे मछली को सिखाना" उत्तर है। ImageMagick convertकमांड-लाइन कौशल महान हैं।
चार्नी काए

ठोस! मैंने कई बार तस्वीरों के एक "बैच" संपीड़न के लिए एक साथ कमांड के एक गुच्छा को बदलने के लिए मल्टी-कर्सर मोड में उप- पाठ पाठ संपादक का उपयोग किया । मैं सिर्फ convert photo.jpg -quality 70% photo_compressed.jpgकमांड प्रारूप का उपयोग करता हूं और इसने बहुत अच्छा काम किया है! यहां तक ​​कि मूल गुणवत्ता के केवल 70% तक संपीड़न की स्थापना ने फोटो के आकार को मूल के 37% तक कम कर दिया, क्योंकि प्रभाव एक्स और वाई दोनों कुल्हाड़ियों पर होने से बढ़ाया जाता है।
गेब्रियल स्टेपल्स

इतनी बार गलत अवधारणाओं का शानदार विवरण। पूर्णता के लिए मुझे यह जोड़ना है कि बैच प्रोसेसिंग के लिए आप ImageMagick के mogrify का उपयोग कन्वर्ट करने के बजाय कर सकते हैं जिसमें मैं परिणामों को होल्ड करने के लिए एक फ़ोल्डर बनाता हूं फिर बस उस फ़ोल्डर में प्रक्रिया करें जो चीजों को व्यवस्थित भी रखता है। उदाहरण के लिएmogrify -resize 1600 -path dir_name -format JPG -quality 90 *.tif
डेनिस

0

यदि आप jpeg छवियों का जिक्र कर रहे हैं, तो वास्तविक संपीड़न संभव नहीं है। क्योंकि jpeg परिभाषा के अनुसार एक संपीड़ित फ़ाइल प्रारूप है (सभी शोर और बेकार पिक्सेल पहले ही हटा दिए गए हैं)। आप उन्हें ठीक से जिप कर सकते हैं, लेकिन कुल आकार उसी के बारे में रहेगा। केवल उन्नत संपीड़न एल्गोरिथ्म मैं jpegs के लिए पता zipx है। लेकिन Zipx Winzip द्वारा मालिकाना है और एक अधिकतम सुनिश्चित करता है। आकार में 30% की कटौती (zipx संग्रह मोड में)।

वेब पर अपनी छवियों को प्रदर्शित करने के लिए , पहले आपको उनका आकार बदलना चाहिए (प्रत्येक के अनुसार 1 एमबी) और वैकल्पिक रूप से उन्हें फ़ाइल स्वरूप को बदलने के लिए परिवर्तित करना चाहिए। पीएनजी (= पोर्टेबल नेटवर्क ग्राफिक्स) विशेष रूप से तेज वेब ट्रांसफर और तेज प्रदर्शन के लिए अनुकूलित है। उन्नत उपयोगकर्ता उन छवियों को वेब प्रारूप (चित्रों के लिए Google का प्रारूप, सबसे तेज़ लोडिंग एल्गोरिथ्म) में भी परिवर्तित कर सकते हैं।

आप XnConvert के साथ चित्रों को बैच सकते हैं, फिर बैच XnView के साथ अपने चित्रों का आकार बदल सकते हैं। यहां से डिबेट पैकेज डाउनलोड करें: http://www.xnview.com/de/xnviewmp/#downloads , फिर उस पर राइट-क्लिक करें और इसे Gnome सॉफ़्टवेयर के साथ खोलें।

यदि आप नेटवर्क लोडिंग गति के बारे में परवाह नहीं करते हैं, लेकिन गुणवत्ता के बारे में परवाह करते हैं, तो आपको अपनी छवियों को अछूता रखना चाहिए और उनके लिए एक डिजिटल लाइब्रेरी बनाना चाहिए। शायद उन्हें एक सार्वजनिक सर्वर (याहू, गूगल, आदि) पर अपलोड करें।


3
आप jpeg संपीड़न / गुणवत्ता के लिए विभिन्न विकल्पों का उल्लेख करना चाह सकते हैं; इसकी संपीड़न को बढ़ाकर एक jpeg छवि के फ़ाइल आकार को कम करना काफी संभव है (और इसलिए इसकी गुणवत्ता को कम करता है)।
निक वेनबर्ग

1
संपीड़न की मेरी समझ का अर्थ है कि समान गुणवत्ता बनाए रखते हुए अनावश्यक पिक्सेल को समाप्त करना। गुणवत्ता कम करना संपीड़न नहीं है यह केवल डाउनसाइज़िंग या डाउन-सैंपलिंग है। Zipx प्रारूप का उपयोग करके दोषरहित संपीड़न संभव है जो फट तस्वीरों के साथ बहुत अच्छा काम करता है। यह कुछ इसी तरह के फोटो के ओवरइम्पोज्ड / ओवरस्टैक किए गए ढेर बनाता है जिसमें सभी डबल पिक्सल एक अलग लेयर पर चपटा होते हैं। वेबपेज में .css फाइल के समान कुछ। पुनरावृत्ति पिक्सेल को संग्रह के भीतर एक अलग इकाई के रूप में परिभाषित किया गया है।
ipse lute
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.