2009-03-27 12 views
14

वैसे मैंने जावा में मूलभूत लापरवाही जेपीईजी योजक चीज लिखी है लेकिन मैं मूल फाइलों के साथ उत्पन्न फ़ाइलों की तुलना करना चाहता हूं।विभिन्न प्रारूपों में पिक्सेल के लिए छवियों पिक्सेल की तुलना करने के लिए एक आसान तरीका (उपकरण?)?

मैं केवल हेक्स संपादक में इतना तुलना कर सकता हूं, क्या किसी को एक आसान तरीका, सॉफ्टवेयर या जावा आधारित (अधिमानतः सॉफ़्टवेयर के रूप में पता है क्योंकि मुझे अब और कोडिंग की तरह महसूस नहीं होता है!) कि मैं दो छवियों और उत्पादन की तुलना कर सकता हूं एक "अंतर नक्शा" जहां पिक्सल समान नहीं हैं?

धन्यवाद।

उत्तर

14

सुझाव के लिए धन्यवाद।

मैंने पहले गिंप दृष्टिकोण की कोशिश की जो कि अच्छी तरह से काम करता है सिवाय इसके कि छवियों के बीच अंतर बहुत छोटा है। अंतर को स्पष्ट करने के लिए मुझे "मतभेदों को बढ़ाने" विकल्प नहीं मिल सका और हिस्टोग्राम भी अंतरों का मोटा प्रतिनिधित्व देता है।

अंत में मैंने ImageMagick का उपयोग किया जो मैंने कुछ समय पहले स्थापित किया था और सभी के बारे में भूल गया था। एक अंतर/तुलना छवि बनाना टाइपिंग जितना आसान है:

compare first.jpg second.png difference.gif 

कमांड लाइन में।

यह सब अच्छी तरह से समझाया है here.

1

फ़ोटोशॉप या गिंप या जो भी हो, जैसे छवि संपादक का उपयोग करें, जिसमें कई परतें हैं। एक छवि बनाएं जहां प्रत्येक स्रोत छवि एक अलग परत में हो।

इस बिंदु पर, आप शीर्ष परत की दृश्यता को चालू और चालू करके छवियों की दृष्टि से तुलना कर सकते हैं।

सबसे सभ्य संपादकों में, आप शीर्ष परत को "अंतर" मोड में भी सेट कर सकते हैं। अब प्रत्येक छवि पिक्सेल का मान अंतर्निहित छवियों में पिक्सेल मानों का पूर्ण अंतर है। आप उदाहरण का उपयोग कर सकते हैं एक हिस्टोग्राम उपकरण यह देखने के लिए कि छवियां समान हैं या नहीं। यदि वे समान हैं, तो सभी पिक्सेल मान बिल्कुल 0

1

इस तरह की सामग्री के लिए, मुझे netpbm/pbmplus टूलकिट पसंद है। आप प्रत्येक छवि को एक साधारण ASCII प्रारूप में बदलने के लिए djpeg और pnmtoplainpnm का उपयोग कर सकते हैं। फिर आप बस दोनों फाइलें पढ़ते हैं और एक नई छवि उत्सर्जित करते हैं जो दिखाता है कि पिक्सल कहां भिन्न हैं। उदाहरण के लिए, आप पुराने और नए पिक्सल के बीच आरजीबी स्पेस में यूक्लिडियन दूरी की गणना कर सकते हैं और शून्य अंतर के लिए एक सफेद पिक्सेल उत्सर्जित कर सकते हैं, छोटे अंतर के लिए हल्के भूरे रंग, बड़े मतभेदों के लिए गहरा, और इसी तरह। एएससीआईआई प्रारूप सरल है और मैन पेज पर अच्छी तरह से प्रलेखित है, और सभी मानक दर्शक प्रोग्राम इसे सीधे देख सकते हैं।

4

आप Perceptual Diff से बहुत खराब कर सकते हैं।

+0

यह बहुत अच्छा लगता है, लेकिन शायद मुझे जो करना है उससे कहीं अधिक है। मैं सिर्फ पिक्सेल द्वारा छवियों पिक्सेल की तुलना करना चाहता हूं और सटीक अंतर देख सकता हूं। यह जांचना है कि मेरा "लापरवाह" जेपीईजी संपादन कितना अच्छा काम कर रहा है। – joinJpegs

+0

मुझे थोड़ा और स्पष्ट करना चाहिए था: आप * एक ध्वज निर्दिष्ट कर सकते हैं जो पीडीएफ का उपयोग करके प्रति-पिक्सेल मतभेद वाली छवि को आउटपुट करेगा। एकमात्र कमी यह है कि यह एक अजीब प्रारूप (पीपीएम) में है :) –

+0

हेक्टर यी के अवधारणात्मक डिफ टूल का जावा पोर्ट .png अंतर छवि उत्पन्न कर सकता है: [bitbucket.org/joebowbeer/perceptualdiff ](https://bitbucket.org/joebowbeer/perceptualdiff) –

1

अरक्सिस मर्ज का नवीनतम संस्करण छवि diffs (http://www.araxis.com/merge/topic_comparing_image_files.html) करेगा।

दुर्भाग्य से यह एक नि: शुल्क एप्लिकेशन नहीं है तो क्या है या नहीं यह तुम्हारे लिए एक और बात है भुगतान करना चाहते हैं ...

5

TortoiseIDiff एक नि: शुल्क छवि diff दर्शक है:

http://tortoisesvn.tigris.org/TortoiseIDiff.html

यह TortoiseSVN का हिस्सा है, लेकिन सबवर्सन के बिना इस्तेमाल किया जा सकता।

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

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

2

सबसे अच्छा तरीका विंडोज़ के लिए पिक्स का उपयोग करना होगा (डायरेक्टएक्स एसडीके के साथ आता है)। बिटमैप, पीएनजी और जेपीजी का समर्थन करता है ... आनंद लें!

0

एक सुविधाजनक web app called Resemble.js भी है, जो पिक्सेल द्वारा छवियों पिक्सेल का विश्लेषण और तुलना करता है। छवियों (यदि कोई हो) में अलग-अलग पिक्सेल आपकी वरीयता के आधार पर गुलाबी या पीले रंग के रंग के साथ हाइलाइट किए जाते हैं।

संबंधित मुद्दे