एक छवि पर बिंदु खोजें

Oct 07 2020

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

जवाब

1 bobthechemist Oct 07 2020 at 23:13

यह करीब आता है, और मुझे संदेह है कि एक मास्किंग दृष्टिकोण बेहतर होगा कि सभी ऑब्जेक्ट एक ही आकार के दिखाई दें। ऑब्जेक्ट के विपरीत बनाए रखते हुए बैकग्राउंड को स्मूथ करने के लिए एज-प्रोटेस्टिंग फ़िल्टर लगाया जाता है। रंगों को तब 3 श्रेणियों (उच्च / निम्न / पृष्ठभूमि) में रखा गया है। मैं उच्च / निम्न में से एक को अनदेखा करता हूं, जो सुधार के लिए एक क्षेत्र है। अंत में, एक मनमाना आकार की वस्तुओं को हटा दें और जो बचा है उसे गिनें।

i = Import@"https://i.stack.imgur.com/9RP53.png"
ij = ImportString[ExportString[i, "jpg"], "jpg"];
if = PeronaMalikFilter[ij,10];
data = ClusteringComponents[ColorQuantize[if, 16], 3];
ip = DeleteSmallComponents[
  Colorize[idata, ColorRules -> {1 -> Black, 2 -> Black, 3 -> Red}], 
  50]
ComponentMeasurements[ip, "Area"] //Length

163 वस्तुएं मिली हैं।