8

एल्गोरिथ्म -एक ड्राइंग और पेंटिंग रोबोट के लिए एक एल्गोरिदम - कोई सुझाव? एक चित्रकारी रोबोट के लिए

हैलो

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

हाल चहचहाना सुपर संपीड़न प्रतियोगिता (see: stackoverflow.com/questions/891643/twitter-image-encoding-challenge) के विपरीत, मेरा लक्ष्य एक प्रतिकृति जो छवि के प्रति वफादार है बनाने के लिए नहीं है, लेकिन बजाय छवि को देखने का मानवीय अनुभव को दोहराने के लिए है।

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

जब मैं कहता हूं "जैसा मानव द्वारा माना जाता है", मेरा मतलब यह बहुत ही सीमित अर्थ में है। मैं किसी छवि के अर्थ का विश्लेषण करने का प्रयास नहीं कर रहा हूं, मुझे यह जानने की ज़रूरत नहीं है कि कोई छवि क्या है, मुझे केवल उन प्रमुख दृश्य विशेषताओं में दिलचस्पी है, जो मानव आंखों को नोटिस करेंगे, इस हद तक कि इसे एक द्वारा स्वचालित किया जा सकता है एल्गोरिदम जिसमें वास्तविकता को देखने के लिए कोई क्षमता नहीं है जो वास्तव में देख रहा है।

फोटोग्राफिक सटीकता पर मानव धारणा का यह असामान्य मानदंड क्यों?

इस सॉफ़्टवेयर का उपयोग ड्राइंग और पेंटिंग रोबोट को चलाने के लिए किया जाएगा, जो मानव कलाकार (see: video.google.com/videosearch?q=mr%20squiggle) के साथ सहयोग करेगा।

मानव द्वारा किए गए अंकों के इलाज के बजाय जो गलतियों के रूप में फोटोग्राफिक रूप से सही नहीं हैं, एल्गोरिदम को अंतिम छवि में कैनवास पर पहले से ही शामिल करना चाहिए।

तो सापेक्ष चमक, रंग, संतृप्ति, आकार और स्थिति मूल रूप से मूल रूप से समान होने की तुलना में कहीं अधिक महत्वपूर्ण है। सुविधाओं, टिकाऊ रंग, ग्रेडिएंट, उत्तल और अवतल वक्र के टोपोलॉजी को बनाए रखना, उन सुविधाओं के सटीक आकार के आकार और रंग के लिए अधिक महत्वपूर्ण होगा

अभी भी मेरे साथ?

मेरी समस्या यह है कि "जब आपके पास हथौड़ा सबकुछ नाखून जैसा दिखता है" सिंड्रोम से थोड़ा पीड़ित होता है। मेरे लिए यह तरीका यह है लगता है तरंगिका की तुलना की तरह कुछ के साथ एक आनुवंशिक एल्गोरिथ्म उपयोग कर रहा है बदल देती है (देखें: grail.cs.washington.edu/projects/query/): फिट समाधान का चयन करने के retrievr (labs.systemone.at/retrievr/ देखें) द्वारा इस्तेमाल किया।

लेकिन मुख्य कारण यह है कि मैं इसे उत्तर के रूप में देखता हूं, यह ये है कि ये तकनीकें हैं जिन्हें मैं जानता हूं, शायद तकनीक का उपयोग करके बहुत अधिक सुरुचिपूर्ण समाधान हैं जिनके बारे में अब कुछ भी नहीं है।

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

क्या आपके पास दृष्टि, छवि एल्गोरिदम, जेनेटिक एल्गोरिदम या इसी तरह की परियोजनाओं पर पढ़ने वाली चीज़ों के लिए कोई सुझाव है?

धन्यवाद

चटाई

पी एस। ऊपर दी गई कुछ वर्तनी आपके और आपके वर्तनी जांच में गलत दिखाई दे सकती हैं। यह सिर्फ अंतरराष्ट्रीय वर्तनी भिन्नताएं हैं जो आपके देश के मानक से भिन्न हो सकती हैं: उदा। ऑस्ट्रेलियाई मानक: रंग बनाम अमेरिकी मानक: रंग

+0

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

उत्तर

3

एक मॉडल है जो एक छवि के लिए एक लचीला मानचित्र की गणना करने के लिए एल्गोरिदम के रूप में कार्यान्वित किया जा सकता है, यह निर्धारित करना कि छवि के कौन से हिस्सों को मानव से अधिक ध्यान मिलेगा।

मॉडल itti कहा जाता है कोच मॉडल
आप मुझे लगता है कि एक बात यह है कि आप इस विशाल कार्य में मदद कर सकता है मानव की भागीदारी है एक startin कागज here
और अधिक संसाधनों और C++ sourcecode here

+0

धन्यवाद, जो बहुत दिलचस्प है –

+0

मेटाफिल्टर के बारे में एक अच्छी बात यह है कि आप कई सही उत्तरों असाइन कर सकते हैं, यहां मुझे केवल एक विकल्प मिलता है। मैं –

+0

(जारी) होगा .. हर किसी को हरा टिक देने के लिए पसंद किया होगा, लेकिन यह वह जवाब है जिसने मुझे अन्वेषण करने के लिए सबसे दिलचस्प दिशा दी है, आप सभी को धन्यवाद –

1

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

+0

धन्यवाद आरसीएक्स, मैं इस पर लगभग तीन महीने बिताने का इरादा रखता हूं, अनुभव बताता है कि यह उससे अधिक लंबा होगा। –

1

दुर्भाग्य से मैं अपनी लाइब्रेरी के बगल में नहीं हूं, या मैं अवधारणात्मक मनोविज्ञान पर कई पुस्तकों को पुनः प्राप्त कर सकता हूं।

पहली बात यह है कि आपको यह समझना चाहिए कि मानव आंख का शरीरविज्ञान ऐसा है कि जब हम किसी छवि या दृश्य की जांच करते हैं, तो हम केवल एक ही समय में बहुत छोटी बिट्स को कैप्चर कर रहे हैं, क्योंकि हमारी आंखें तेजी से घूमती हैं। हमारा दिमाग पूरी तरह से कोशिश करने और बनाने के लिए अलग-अलग हिस्सों को एक साथ जोड़ता है।

आप आंखों के पथ के लिए एक एल्गोरिदम खोजकर शुरू कर सकते हैं क्योंकि यह चारों ओर डार्ट करता है। शायद यह इसके विपरीत आकर्षित है?

अगला यह है कि हमारी आंखें संदर्भ के आधार पर "एक्सपोजर" समायोजित करती हैं। यह उन उच्च गतिशील रेंज छवियों की तरह है, यदि वे एक पूरे दृश्य के कई एक्सपोजर द्वारा नहीं एकत्र किए गए थे, लेकिन कई छोटी छवियों द्वारा, प्रत्येक अपने आप संतुलित होते हैं, लेकिन उच्च गतिशील रेंज बनाने के लिए अपने परिवेश में मिश्रित होते हैं।

अब एक बंदर मस्तिष्क में एक खोज थी कि एक एकल न्यूरॉन है जो दृष्टि के अपने क्षेत्र के ऊपरी बाईं ओर एक विकर्ण रेखा है। समान बंदरगाह ऊर्ध्वाधर रेखाओं, और उस बंदर के दृष्टि के क्षेत्र के विभिन्न क्षेत्रों में क्षैतिज रेखाओं के लिए पाया जा सकता है। "विकर्णता" उस आवृत्ति को निर्धारित करती है जिसके साथ न्यूरॉन आग लगती है।

कोई अनुमान लगा सकता है कि अन्य न्यूरॉन्स पाए जा सकते हैं और अन्य गुणों जैसे लाली, या बनावट, और अन्य चीजों के लिए मैप किए जा सकते हैं।

कुछ ऐसा मनुष्य कर सकता है जिसे मैंने कभी भी कंप्यूटर प्रोग्राम नहीं देखा है। इसे "बंद" कहा जाता है, जहां एक मनुष्य जो कुछ देख रहा है उसके बारे में जानकारी भरने में सक्षम होता है, जो वास्तव में छवि में मौजूद नहीं है। एक उदाहरण:

  * 






*     * 

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

मानव धारणा के बारे में कई अन्य तथ्य हैं जिनका आप उपयोग करने में सक्षम हो सकते हैं। शुभकामनाएं, आपने एक सीधा काम नहीं चुना है।

+0

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

3

मैं सीधे आपके प्रश्न का उत्तर नहीं दे सकता, लेकिन आपको वास्तव में कलाकार/प्रोग्रामर (लिस्प) Harold Cohen की पेंटिंग मशीन Aaron पर एक नज़र डालना चाहिए।

+0

धन्यवाद डेव जो वास्तव में दिलचस्प है –

+0

तकनीक के साथ काम कर रहे अग्रणी कलाकारों की तरह, उन्होंने शुरू किया 70 के दशक में इस पीठ पर काम कर रहा हूं, जिसे मैं मानता हूं कि उन्हें इतिहास की किताबों में रखा जाता है। यदि आप उसे कहीं और देख सकते हैं, तो वह अन्य प्रोग्रामर को प्रक्रिया के बारे में बात करने को तैयार है। –

0

पा सकते हैं। मेरा मतलब डेटा है। जैसे कि आप यादृच्छिक बिंदुओं (जैसे पिछली पोस्ट की तरह) पर घूरते हुए बैठे कई लोग हो सकते हैं और उन्हें सही देखकर कनेक्ट कर सकते हैं। आप उस डेटा का उपयोग कर सकते हैं।

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