2011-12-23 11 views
5

मैं एक छवि से गॉसियन शोर को हटाने की कोशिश कर रहा हूं। मैं शोर अपने आप का उपयोग कर जोड़ दिया है:MATLAB में किसी छवि से गाऊशियन शोर को कैसे निकालें?

nImg = imnoise(img,'gaussian',0,0.01); 

अब मैं अपने खुद के फिल्टर का उपयोग कर शोर निकालने के लिए, या कम से कम इसे कम करने की जरूरत है। सिद्धांत रूप में, जैसा कि मैं समझता हूं, ones(3)/9 के एक रूपांतरण मैट्रिक्स का उपयोग करके [1 2 1; 2 4 2; 1 2 1]/9 या fspecial('gaussian',3) जैसे गॉसियन कन्वोल्यूशन मैट्रिक्स की सहायता और उपयोग करना चाहिए बेहतर होना चाहिए। फिर भी, वे वास्तव में चाल इतनी अच्छी तरह से नहीं करते हैं: enter image description here

क्या मुझे कुछ महत्वपूर्ण याद आ रही है? मुझे रास्ते में संकल्प का उपयोग करने की ज़रूरत है।

+3

औसत फ़िल्टर (आपका "एक" फ़िल्टर) एक खराब निम्न-पास फ़िल्टर है। गाऊशियन एक बेहतर एलपीएफ है। कारण 1 1 1 पर विरूपण हो रहा है; 2 4 2; 1 2 1 फ़िल्टर इसलिए है क्योंकि यह ठीक से सामान्य नहीं है। –

+1

आप '1 2 1; 2 4 2; 1 2 1' के बारे में सही हैं। मुझे 16 से विभाजित होना चाहिए था और 9 तक नहीं। यहां तक ​​कि, यह बहुत अच्छी तरह से काम नहीं कर रहा है: [लिंक] (http://img408.imageshack.us/img408/6176/resm.png) – shwartz

उत्तर

10

आप कुछ भी याद नहीं कर रहे हैं! जाहिर है, आप शोर को पूरी तरह से हटा नहीं सकते हैं। आप अलग अलग फिल्टर की कोशिश कर सकते हैं, लेकिन उन सभी को एक समंजन होगा:

अधिक शोर + कम कलंक वी.एस. कम शोर + अधिक कलंक

यह और अधिक स्पष्ट है अगर आप में इस के बारे में सोच हो जाता है निम्न तरीका:

कोई भी रूपांतरण आधारित विधि मानती है कि सभी पड़ोसियों का एक ही रंग होता है।

लेकिन वास्तविक जीवन में, छवि में कई वस्तुएं हैं। इस प्रकार, जब आप संकल्प को लागू करते हैं तो आप अलग-अलग आसन्न वस्तुओं से पिक्सेल मिश्रण करके धुंध का कारण बनते हैं।

  • माध्य denoising
  • द्विपक्षीय फिल्टर
  • पैटर्न मिलान आधारित denoising

वे उपयोग नहीं कर रहे केवल घुमाव:

की तरह और अधिक परिष्कृत denoising तरीकों रहे हैं। वैसे, वे जादू भी नहीं कर सकते हैं।

+0

धन्यवाद। मैंने कार्यान्वयन के दौरान उस व्यापार को देखा है और मैंने मध्यवर्ती denoising भी लागू किया है जो नमक और काली मिर्च के शोर के लिए बहुत अच्छा काम करता है लेकिन गॉसियन शोर के लिए इतना नहीं है। फिर भी, मैं एक ऐसी छवि के बीच पतली सीमा कैसे पा सकता हूं जो बहुत शोर है लेकिन तेज और एक छवि जो बहुत धुंधली है लेकिन थोड़ा शोर के साथ? मेरे पास खेलने के लिए कुछ पैरामीटर हैं: मैट्रिक्स आयाम (छोटे, बड़े, वर्ग, आयताकार) और मैट्रिक्स मान (गाऊशियन, वर्दी, कुछ अन्य अजीब सेटिंग)। तो, क्या वास्तव में कुछ भी सभ्य नहीं है जो मैं केवल संकल्प के साथ कर सकता हूं? – shwartz

+1

@ श्वार्टज़, दुर्भाग्य से, नहीं। आपको कम से कम किसी प्रकार का तर्क चाहिए जो किनारों, कोनों आदि का पता लगाएगा और तदनुसार उनका इलाज करेगा। परिभाषा के अनुसार ** ** ** केवल वाक्य नहीं है। –

+0

असल में, यह उत्साहजनक है क्योंकि असाइनमेंट को संकल्प का उपयोग करना है (पूरी तरह से, जैसा कि मैं समझता हूं)। केवल "समस्या" विधि ढूंढना और यह जानना कि कौन सा परिणाम सबसे अच्छा है, केवल समस्या है। क्या परिणाम की गुणवत्ता को मापने का कोई तरीका है? उदाहरण के लिए, मूल शोर-कम छवि से कुछ प्रकार की मैट्रिक्स दूरी मेरे परिणाम की गुणवत्ता निर्धारित करने का एक अच्छा तरीका होगा? या क्या कोई अन्य आम तरीका है? – shwartz

0

आपने गॉसियन कन्वोल्यूशन मैट्रिक्स के साथ गलती की। आपको इसे 16 से 9 तक विभाजित करने की आवश्यकता है, इसलिए यह योग बराबर है 1. यही कारण है कि उस मैट्रिक्स का उपयोग करने वाली परिणामी छवि इतनी हल्की है।

+0

धन्यवाद, मुझे पता है। किसी ने मूल पोस्ट के नीचे पहले ही टिप्पणी की है। – shwartz

1

आप wiener2 का उपयोग कर सकते हैं जो शोर स्थिर-शक्ति ("सफेद") योजक शोर, जैसे गॉसियन शोर के रूप में सबसे अच्छा काम करता है।

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