मेरे पास 18984x28591px रिज़ॉल्यूशन के साथ एक छवि है, लेकिन मैं इसका आकार कम करने के लिए इसे पेंट या Pixlr संपादक के साथ नहीं खोल सकता।
मैं अपने लैपटॉप पर इस बड़ी छवि को कैसे परिवर्तित या खोल सकता हूं?
मेरे पास 18984x28591px रिज़ॉल्यूशन के साथ एक छवि है, लेकिन मैं इसका आकार कम करने के लिए इसे पेंट या Pixlr संपादक के साथ नहीं खोल सकता।
मैं अपने लैपटॉप पर इस बड़ी छवि को कैसे परिवर्तित या खोल सकता हूं?
जवाबों:
मैंने उन बड़ी तस्वीरों का आकार बदलने के लिए Ubuntu पर ImageMagick का उपयोग किया।
convert -resize 10% source.jpg dest.jpg
थोड़ी देर लगी, लेकिन 1 जीबी रैम के साथ काम किया, इस टूल ने अपने लिए 4.7 Gbyte स्वैप जैसी फाइल बनाई।
अधिक जानकारी AskUbuntu पर है ।
convert -resize 1898x2859 ...
सैद्धांतिक रूप से, अधिकांश छवि स्वरूपों को उत्तरोत्तर बढ़ाया जा सकता है, पूरी छवि को मेमोरी में लोड किए बिना, हालांकि मुझे कोई भी उपकरण नहीं पता है जो वास्तव में ऐसी सुविधा को लागू करता है, जेपीईजी को छोड़कर: यह विशेष है कि आप पूर्ण संकल्प के बिना केवल डाउनस्केल नहीं कर सकते, पूर्ण संकल्प को डिकोड किए बिना भी डाउनस्केल, डीसीटी के रचनात्मक उपयोग के लिए धन्यवाद (जेपीईजी आवृत्ति डोमेन में एन्कोड किया गया है, जिसका अर्थ है कि इसे मूल छवि के समान सटीक रिज़ॉल्यूशन में डिकोड नहीं किया जाना है)।
डिफ़ॉल्ट जेपीईजी उपकरण डिकोडिंग (कमांड लाइन, लिनक्स में libjpeg-progs पैकेज, विंडोज के लिए djpeg.exe के लिए देखो) एक "नियमित" आवेदन से पहले विशाल जेपीईजी downscale भी लोड हो रहा है इसे पूरा कर सकते हैं:
djpeg -scale 1/8 huge_image_that_will_not_fit_in_your_ram.jpg >downscaled.ppm
मैंने कुछ GUI एप्लिकेशन में डाउनस्केल-लोडिंग विकल्प को भी देखा है, लेकिन फिलहाल इसे याद नहीं कर सकता।
ImageMagick बनाम djpeg की मेमोरी के उपयोग और प्रसंस्करण समय की तुलना करना एक बड़ी छवि को तोड़ता है ( cjpeg को पाइप करना , इसलिए परिणामस्वरूप छवि भी jpg है, कन्वर्ट के साथ उचित तुलना के लिए )
$ display -verbose input.jpg
input.jpg JPEG 13114x11722 13114x11722+0+0 8-bit sRGB 30.75MB 6.690u 0:06.699
$ /usr/bin/time -f "time=%E mem=%MK" bash -c "convert input.jpg -scale '12.5%' output.jpg"
time=0:10.72 mem=1225844K
$ /usr/bin/time -f "time=%E mem=%MK" bash -c "djpeg -scale 1/8 input.jpg | cjpeg > output2.jpg"
time=0:00.88 mem=1412K
1,2GB बनाम 1,4MB और 10 गुना से अधिक धीमा - और यह अपेक्षाकृत छोटी 13k x 11k छवि पर था जो पूरी तरह से रैम में फिट हो सकता था इसलिए कोई स्वैपिंग नहीं हुई।
दूसरी ओर, डाउंसकलिंग के लिए djpeg का उपयोग करने की भी अपनी सीमाएँ हैं: स्केलिंग फ़ैक्टर चॉइस सीमित है और रेज़मैप्लिंग विधि को बदला नहीं जा सकता है।
आप विंडोज पर पिक्चर रेसिज़र का उपयोग करके भी देख सकते हैं (मुझे यह उपकरण पसंद है)
आप बस इस सरल EXE पर चित्र को खींचें और छोड़ें यह विशेष रूप से उपयोगी है यदि आपके पास परिवर्तित करने के लिए कई चित्र हैं जैसा कि आप एक समय में कई कर सकते हैं।
सभी कॉन्फ़िगरेशन EXE के नामकरण के माध्यम से किया जाता है जो शानदार IMO है
मैं हालांकि यह बड़ी फ़ाइल के साथ कोशिश नहीं की है।